Причинами создания является:
1) Новое пакетное задание. Готовясь принять на обработку новое задание. ОС считывает очередные команды управления заданием.
2) Вход в систему в интерактивном режиме, когда в систему с терминала подключается новый пользователь.
3) Создание ОС процесса нужной для работы некоторой служебной ОС может создать процесс, для выполнения некоторой операции.
4) Порождение одного процесса другим с целью структуризации программы или использования возможности параллельных вычислений, программа может создавать другие процессы.
Когда создается новый процесс ОС создает структуры данных, используемых при управлении этим процессом и размещаемых в адресе пространства в основной памяти для процесса.
Завершение процесса
В любой системе должны быть средства, позволяющие определить, закончилось ли выполнение процесса. Для этого пакетное задание может включать в себя специальную команду или явный вызов служб ОС, приводящий к завершению процесса. При этом может генерироваться запрос на прерывание или выполнятся действие пользователя сообщающего о том, что он покидает сеанс связи. Во всех случаях вызов специальных служб ОС завершает процесс.
|
|
Причин завершения достаточно много:
1) обычное завершение (процесс вызывает exit);
2) превышение лимита времени, отведенного программе;
3) недостаточный объем памяти;
4) выход за пределы отведенной области памяти;
5) ошибка защиты;
6) арифметическая ошибка (деление на ноль, переполнение);
7) изменение ожидания;
8) ошибка ввода/вывода;
9) неверная команда (счетчик команд переключается на счетчик данных);
10) команда с недопустимыми привилегиями;
11) непрерывное использование данных (часть данных или не инициализирована, или другого типа);
12) вмешательство оператора или ОС;
13) завершение родительского процесса;
14) запрос со стороны родительского процесса.