Лекция №8. Процессы в операционных системах

YOUTUBE · 27.11.2025 07:30

Ключевые темы и таймкоды

Введение в процессы в операционных системах

0:01
  • Процесс — это программа во время её выполнения.
  • Современные компьютеры выполняют множество задач одновременно.

Процессы на персональном компьютере

0:29
  • При запуске системы запускается множество процессов, о которых пользователь может не знать.
  • Примеры процессов: ожидание электронной почты, проверка антивируса, печать файлов.
  • Количество процессов может достигать нескольких десятков или даже сотен.

Адресное пространство и ресурсы процесса

1:20
  • Каждый процесс имеет своё адресное пространство в оперативной памяти.
  • Адресное пространство содержит программу, данные и стек программы.
  • Процесс также имеет набор ресурсов: регистры, список открытых файлов, необработанные предупреждения и т. д.

События, приводящие к созданию процессов

2:54
  • Инициализация системы: создание высокоприоритетных и фоновых процессов.
  • Выполнение системного вызова: создание новых процессов работающим процессом.
  • Запрос пользователя: запуск программы по команде или щелчку мыши.
  • Инициация пакетного задания: создание процессов для обработки данных на больших машинах.

Иерархия процессов в Unix и Linux

8:40
  • В Unix и Linux каждый новый процесс является дочерним к предыдущему.
  • Дочерний процесс получает переменные и регистры от родительского.
  • Прародитель всех процессов — процесс init, запускаемый при включении системы.

Иерархия процессов в Windows

9:52
  • В Windows нет строгой иерархии процессов, используется маркер дескриптор родительского процесса.
  • Дескриптор может быть передан другому процессу.

Завершение процессов

10:14
  • Четыре причины завершения процесса: обычный выход, выход при ошибке, фатальная ошибка, уничтожение другим процессом.
  • Примеры причин: закрытие окна текстового редактора, завершение процедуры архивации, деление на ноль.

Состояние процессов в однопроцессорной системе

12:26
  • Три основных состояния процесса: выполнение, готовность, блокировка.
  • Четыре перехода между состояниями: блокировка в ожидании ввода, приостановка планировщиком, возобновление работы, событие, позволяющее процессу продолжить работу.

Планирование процессов

15:55
  • Планировщик процессов решает, какой процесс, когда и сколько времени должен выполняться.
  • Переходы 2 и 3 вызываются планировщиком без оповещения процесса.
  • С точки зрения процессов есть только два состояния: выполнение действия и ожидание готовности.

Ускорение ответа на запросы

16:58
  • На серверах для ускорения ответа на запрос клиента загружают несколько процессов в режиме ожидания.
  • При получении запроса процесс переходит из режима ожидания в режим выполнения, что быстрее, чем запуск нового процесса.

Управление процессами в ОС

17:22
  • Операционной системе необходимо проверять наличие всех обслуживаемых процессов.
  • В универсальных системах, таких как компьютеры, требуется способ создания и прерывания процессов по мере необходимости.

Родительские и дочерние процессы

17:57
  • У каждого процесса есть один родитель и могут быть дочерние процессы.
  • Задачи по управлению процессами возлагаются на операционную систему.

Различие между программой и процессом

18:18
  • Программа и процесс имеют различия, несмотря на кажущуюся схожесть.
  • Пример с приготовлением пиццы иллюстрирует эти различия.

Пример с Максом и пиццей

18:41
  • Макс решает приготовить пиццу, используя книгу рецептов и кухонные принадлежности.
  • Во время приготовления ему звонят Настя и кот, требуя внимания.
  • Макс успевает ответить на звонок и покормить кота, продолжая готовить пиццу.

Аналогия с процессами в ОС

20:08
  • Макс символизирует центральный процессор, рецепт — программу, ингредиенты — входные данные, кухонная техника — аппаратную часть.
  • Приготовление пиццы — первый процесс, требующий много времени, звонок Насти — второй процесс, кот — третий процесс с высоким приоритетом.

Взаимодействие процессов

22:06
  • Центральный процессор обращается к программе для получения алгоритма решения задачи.
  • Программа получает входные данные, а аппаратная часть начинает выполнять задачу.
  • Процессы могут быть приостановлены для обработки более приоритетных задач.

Завершение обработки

23:07
  • После обработки всех процессов компьютер возвращается к первому процессу и завершает его, выводя результат.

Определение программы и процесса

23:37
  • Программа — это алгоритм действия, хранящийся на носителе.
  • Процесс — это само действие, возникающее при запуске программы.

Заключение

23:53
  • Лекция о процессах в операционных системах завершена.