Граф состояний потока
1.Поток выбран на выполнение
2.Поток ожидает завершения ввода/вывода
3.Ввод/вывод завершен (событие произошло)
4.Поток вытеснен планировщиком
Создание процессов
События, приводящие к созданию процессов:
работающий |
|
процесс подает |
запрос |
загрузка системы системный вызов |
пользователя на |
на создание |
создание процесса |
процесса |
|
Создать процесс означает:
|
загрузить коды и |
в многопоточной |
|
создать |
данные |
системе для каждого |
|
исполняемой |
создаваемого |
||
описатель |
|||
программы процесса |
процесса создать как |
||
процесса |
|||
с диска в |
минимум один поток |
||
|
|||
|
оперативную память |
выполнения |
Идентификаторы, дескрипторы и контекст
• Дескриптор процесса содержит такую информацию о процессе, которая необходима ядру в течение всего
жизненного цикла процесса независимо от того, находится он в активном или пассивном состоянии. В дескрипторе прямо или косвенно содержится информация о состоянии процесса, о расположении образа процесса в оперативной памяти и на диске, о значении отдельных составляющих приоритета, глобальном приоритете, об идентификаторе пользователя, создавшего процесс, о родственных процессах и некоторая др. информация.
• Контекст процесса содержит менее оперативную, но более объемную часть информации о процессе, необходимую для возобновления выполнения процесса с прерванного места: содержимое регистров процессора,
коды ошибок выполняемых процессором системных вызовов, таблица открытых файлов, информация о незавершенных операциях ввода/вывода и др.
Структура сегмента TSS