Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Понятия “процесс” и “поток”. Состояния потока. Диаграмма состояний потока. Контекст и дескриптор.
Подсистема управления процессами и потоками ответственна за обеспечение процессов необходимыми ресурсами. ОС поддерживает в памяти специальные информационные структуры, в которые записывает, какие ресурсы выделены каждому процессу. Она может назначить процессу ресурсы в единоличное пользование или в совместное пользование с другими процессами. Некоторые из ресурсов выделяются процессу при его создании, а некоторые динамически по запросам во время выполнения. Ресурсы могут быть приписаны процессу на все время его жизни или только на определенный период. При выполнении этих функций подсистема управления процессами взаимодействует с другими подсистемами ОС, ответственными за управление ресурсами, такими как подсистема управления памятью, подсистема ввода-вывода, файловая система.
Чтобы поддерживать мультипрограммирование, ОС должна определить и оформить для себя те внутренние единицы работы, между которыми будет разделяться процессор и другие ресурсы компьютера. В настоящее время в большинстве операционных систем определены два типа единиц работы. Более крупная единица работы, обычно носящая название процесса, или задачи, требует для своего выполнения нескольких более мелких работ, для обозначения которых используют термины «поток», или «нить».
Процесс рассматривается операционной системой как заявка на потребление всех видов ресурсов, кроме одного процессорного времени. Этот последний ресурс распределяется операционной системой между потоками, которые и получили свое название благодаря тому, что они представляют собой последовательности (потоки выполнения) команд.
Состояния потока
ОС выполняет планирование потоков, принимая во внимание их состояние.
В мультипрограммной системе поток может находиться в одном из трех основных состояний:
В течение своей жизни каждый поток переходит из одного состояния в другое в соответствии с алгоритмом планирования потоков.
В состоянии выполнения в однопроцессорной системе может находиться не более одного потока, а в каждом из состояний ожидания и готовности несколько.
Для возобновления выполнения процесса необходимо сохранить информацию о состоянии ОС: Контекст информация, которая отражает состояние операционной среды, та информация, которая необходима для выполнения процесса: состояние регистров (программный счетчик, регистра указатель стека и т.д.), режим работы процессора, указатели на открытые файлы, информация о незавершенных операциях ввода/вывода, коды ошибок, выполняемых системных вызовов.
Дескриптор процесса информация, необходимая для планирования: идентификатор процесса, состояние процесса, данные о степени его привилегированности, место нахождения сегмента кода, информация о соседних дескрипторах в очереди.
В дескрипторе хранится более оперативная информация, которая должна быть доступна.