Процесс - это экземпляр выполняемой программы. Процесс – это нечто выполняющее программу и создающее среду для ее функционирования.
Процесс это основная единица расписания, т.к. только один процесс может в один момент времени занимать процессор в однопроцессорной системе. Кроме этого, процесс старается перехватить ресурсы системы, такие как различные устройства или память. Он также запрашивает системные службы, которые выполняются для него и от его имени ядром. Unix – многозадачная система, так что несколько независимых процессов могут работать одновременно. При этом, в отличие от Windows, в Unix как можно большее время процессора отдается не ядру, а процессам.
Атрибуты процесса
Процесс в UNIX имеет ряд атрибутов, позволяющих операционной системе управлять его работой. Основные атрибуты:
6. Реальный (UID) и эффективный (EUID) идентификаторы пользователя
7. Реальный (GID) и эффективный (EGID) идентификаторы группы
PID
Каждый процесс имеет уникальный идентификатор PID, позволяющий ядру системы различать процессы. Когда создается новый процесс, ядро присваивает ему следующий свободный идентификатор.
Формируются процессы с 0 до N-1, где N - предельное число процессов, которые система может одновременно обрабатывать. Это параметр настройки ОС. (обычно - 65737)
Присвоение идентификатора обычно происходит по возрастающий, т.е. идентификатор нового процесса больше, чем идентификатор процесса, созданного перед ним. Если идентификатор достигает максимального значения, следующий процесс получит минимальный свободный PID и цикл повторяется. Когда процесс завершает работу, ядро освобождает использовавшийся им идентификатор.
PPID
идентификатор процесса, породившего данный процесс. Все процессы в системе, кроме системных процессов и процесса init, являющегося прародителем остальных процессов, порождены одним из существующих или существовавших ранее процессов.
PRI
приоритет выполнения, на основании которого віполняется рраспределение процессорных ресурсов. Это величина переменная и динамически изменяется планировщиком.
NICE
Относительный приоритет процесса, учитываемый планировщиком при определении очередности запуска. Относительный приоритет не изменяется системой на всем протяжении жизни процесса (хотя может быть изменен пользователем или администратором.
TTY
Терминал или псевдотерминал, связанный с процессом. С этим терминалом по умолчанию связаны стандартные потоки: входной, выходной и поток сообщений об ошибках. Процессы-демоны не связаны с терминалом.