Лекция № 6: Модель процесса и управление им
Для ознакомления с предыдущей лекцией, перейдите по ссылке.
Кратко: Обзор модели процесса, этапов создания и завершения процесса, управления ресурсами и особенностей зомби-процессов.
Процесс в ОС
- Исполнение программы с ресурсами: память, CPU, устройства.
- Процесс — активная сущность, включающая код, состояние и ресурсы.
- Идентификатор (PID) — уникальный номер процесса.
- Состояние: выполняется, в очереди, заблокирован.
- Контекст: регистры, стек, указатели.
Создание процесса
- Процесс создается системным вызовом (fork() в UNIX, CreateProcess в Windows).
- Копируется контекст, выделяются ресурсы.
- Процесс переходит в статус готовности к выполнению.
Завершение процесса
- Процесс завершает работу по завершению программы, ошибке или сигналу.
- Вызывается exit() или аналог.
- Ресурсы освобождаются, процесс удаляется из системы.
- Возможен "зомби-процесс" — процесс, завершившийся, но не обработанный родителем.
Управление завершением
- Ресурсы освобождаются после wait().
- Зомби возникает, если родитель не вызвал wait().
- Процесс удаляется после обработки статуса завершения.
Контрольные вопросы
- Что такое процесс и чем он отличается от программы?
- Какие основные этапы создания процесса?
- Что происходит при завершении процесса?
- Что такое зомби-процесс и когда он возникает?
- Каким системным вызовом создается процесс в UNIX?
- В чем разница между нормальным завершением и ошибочным?
- Как ОС освобождает ресурсы завершенного процесса?
- Что происходит, если родитель не вызывает wait()?