Процессы и потоки

схема состояний процесса
suspended переводится как "завешенный" - остановленный, короче - когда процесс ожидает своей очереди на выполнение.
Суммарное число состояний на схеме 7 - а именно -
есть три "статичных" состояний:

  1. не активен (не запущен - валяется где-то в памяти - процессор не использует)
  2. работает (занимает процессорную мощность)
  3. приостановлен(ждёт своей очереди чтобы начать снова "считать" на процессоре)

(в них процесс теоретически может пребывать сколько угодно долго - ну или скажем - дольше чем в остальных четырёх состояниях)
А также 4 переходных - между предыдущими 3-мя состояния:

  1. запускается (активизируется - начинает выполнение)
  2. приостанавливается (становится в очередь на выполнение)
  3. возобновляется (когда его очередь на выполнение пришла)
  4. завершается (то есть переходит в долговременное состояние "не активен")

Также важными оказываются понятия:
Проце?сс-зо?мби, зо?мби (англ. zombie process, англ. defunct process) — дочерний процесс в Unix-системе, завершивший своё выполнение, но ещё присутствующий в списке процессов операционной системы, чтобы дать родительскому процессу считать код завершения.

Операции над процессами:

  1. создание
  2. уничтожение
  3. восстановление
  4. изменение приоритета
  5. блокирование
  6. пробуждение
  7. запуск

Для создания процесса необходимо:

  1. присвоить процессу имя
  2. добавить информацию о процессе в список процессов
  3. определить приоритет процесса
  4. сформировать блок управления процесса
  5. предоставить процессу нужные ресурсы

Процессы могут образовывать иерархию.
В связи с чем процесс определяют атрибута:

  1. его id в иерархии
  2. id его родителя (то есть процесса, который породил данный) в иерархии

Потоки

потоки содержаться "внутри" процесса (есть особенности) - имеют общую память/

Поток имеет:

  1. состояние выполнения
  2. стэки
  3. статическую память для локальных переменных
  4. сохраняет контекст в неактивном состоянии
  5. имеет доступ к пространству памяти и ресурсам своего процесса