Процессы и потоки
Primary tabs
Forums:
suspended переводится как "завешенный" - остановленный, короче - когда процесс ожидает своей очереди на выполнение.
Суммарное число состояний на схеме 7 - а именно -
есть три "статичных" состояний:
- не активен (не запущен - валяется где-то в памяти - процессор не использует)
- работает (занимает процессорную мощность)
- приостановлен(ждёт своей очереди чтобы начать снова "считать" на процессоре)
(в них процесс теоретически может пребывать сколько угодно долго - ну или скажем - дольше чем в остальных четырёх состояниях)
А также 4 переходных - между предыдущими 3-мя состояния:
- запускается (активизируется - начинает выполнение)
- приостанавливается (становится в очередь на выполнение)
- возобновляется (когда его очередь на выполнение пришла)
- завершается (то есть переходит в долговременное состояние "не активен")
Также важными оказываются понятия:
Проце?сс-зо?мби, зо?мби (англ. zombie process, англ. defunct process) — дочерний процесс в Unix-системе, завершивший своё выполнение, но ещё присутствующий в списке процессов операционной системы, чтобы дать родительскому процессу считать код завершения.
Операции над процессами:
- создание
- уничтожение
- восстановление
- изменение приоритета
- блокирование
- пробуждение
- запуск
Для создания процесса необходимо:
- присвоить процессу имя
- добавить информацию о процессе в список процессов
- определить приоритет процесса
- сформировать блок управления процесса
- предоставить процессу нужные ресурсы
Процессы могут образовывать иерархию.
В связи с чем процесс определяют атрибута:
- его id в иерархии
- id его родителя (то есть процесса, который породил данный) в иерархии
Потоки
потоки содержаться "внутри" процесса (есть особенности) - имеют общую память/
Поток имеет:
- состояние выполнения
- стэки
- статическую память для локальных переменных
- сохраняет контекст в неактивном состоянии
- имеет доступ к пространству памяти и ресурсам своего процесса
- Log in to post comments
- 3276 reads