Учебники

Операционная система — Процессы

Процесс — это в основном программа в исполнении. Выполнение процесса должно выполняться последовательно.

Процесс определяется как объект, который представляет собой базовую единицу работы, которая должна быть реализована в системе.

Проще говоря, мы пишем наши компьютерные программы в текстовом файле, и когда мы выполняем эту программу, она становится процессом, который выполняет все задачи, упомянутые в программе.

Когда программа загружается в память и становится процессом, ее можно разделить на четыре части: стек, куча, текст и данные. На следующем рисунке показана упрощенная схема процесса внутри основной памяти —

Компоненты процесса

SN Компонент и описание
1

стек

Стек процесса содержит временные данные, такие как параметры метода / функции, адрес возврата и локальные переменные.

2

отвал

Это динамически выделяемая память для процесса во время его выполнения.

3

Текст

Это включает текущую активность, представленную значением счетчика программы и содержимым регистров процессора.

4

Данные

Этот раздел содержит глобальные и статические переменные.

стек

Стек процесса содержит временные данные, такие как параметры метода / функции, адрес возврата и локальные переменные.

отвал

Это динамически выделяемая память для процесса во время его выполнения.

Текст

Это включает текущую активность, представленную значением счетчика программы и содержимым регистров процессора.

Данные

Этот раздел содержит глобальные и статические переменные.

программа

Программа — это фрагмент кода, который может состоять из одной строки или миллионов строк. Компьютерная программа обычно пишется программистом на языке программирования. Например, вот простая программа, написанная на языке программирования C —

#include <stdio.h>

int main() {
   printf("Hello, World! \n");
   return 0;
}

Компьютерная программа — это набор инструкций, которые выполняют определенную задачу при выполнении компьютером. Когда мы сравниваем программу с процессом, мы можем заключить, что процесс является динамическим экземпляром компьютерной программы.

Часть компьютерной программы, которая выполняет четко определенную задачу, называется алгоритмом . Коллекция компьютерных программ, библиотек и связанных данных называется программным обеспечением .

Жизненный цикл процесса

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

В общем случае процесс может иметь одно из следующих пяти состояний одновременно.

SN Состояние и описание
1

Начните

Это начальное состояние при первом запуске / создании процесса.

2

готовы

Процесс ожидает назначения процессору. Готовые процессы ожидают, чтобы процессор был выделен им операционной системой, чтобы они могли работать. Процесс может войти в это состояние после состояния запуска или во время его выполнения, но прерывается планировщиком, чтобы назначить ЦП другому процессу.

3

Бег

Как только процесс был назначен процессору планировщиком ОС, состояние процесса устанавливается на выполнение, и процессор выполняет свои инструкции.

4

ждущий

Процесс переходит в состояние ожидания, если ему нужно дождаться ресурса, например, ждать ввода пользователя или ждать, пока файл станет доступным.

5

Прекращено или Выход

Как только процесс завершает свое выполнение или он завершается операционной системой, он переводится в состояние завершения, где он ожидает удаления из основной памяти.

Начните

Это начальное состояние при первом запуске / создании процесса.

готовы

Процесс ожидает назначения процессору. Готовые процессы ожидают, чтобы процессор был выделен им операционной системой, чтобы они могли работать. Процесс может войти в это состояние после состояния запуска или во время его выполнения, но прерывается планировщиком, чтобы назначить ЦП другому процессу.

Бег

Как только процесс был назначен процессору планировщиком ОС, состояние процесса устанавливается на выполнение, и процессор выполняет свои инструкции.

ждущий

Процесс переходит в состояние ожидания, если ему нужно дождаться ресурса, например, ждать ввода пользователя или ждать, пока файл станет доступным.

Прекращено или Выход

Как только процесс завершает свое выполнение или он завершается операционной системой, он переводится в состояние завершения, где он ожидает удаления из основной памяти.

Состояние процесса

Блок управления процессом (PCB)

Блок управления процессом — это структура данных, поддерживаемая операционной системой для каждого процесса. Печатная плата идентифицируется целочисленным идентификатором процесса (PID). PCB хранит всю информацию, необходимую для отслеживания процесса, как указано ниже в таблице —

SN Информация и описание
1

Состояние процесса

Текущее состояние процесса, т. Е. Готов ли он, работает, ждет или что-то еще.

2

Процессные привилегии

Это необходимо для разрешения / запрета доступа к системным ресурсам.

3

Идентификатор процесса

Уникальная идентификация для каждого процесса в операционной системе.

4

Указатель

Указатель на родительский процесс.

5

Счетчик команд

Счетчик программ — это указатель на адрес следующей инструкции, которая будет выполнена для этого процесса.

6

Регистры процессора

Различные регистры процессора, где процесс должен быть сохранен для выполнения в рабочем состоянии.

7

Информация о планировании процессора

Приоритет процесса и другая информация о планировании, которая требуется для планирования процесса.

8

Информация об управлении памятью

Это включает в себя информацию таблицы страниц, пределов памяти, таблицы сегментов в зависимости от памяти, используемой операционной системой.

9

Бухгалтерская информация

Это включает количество ЦП, использованного для выполнения процесса, ограничения по времени, идентификатор выполнения и т. Д.

10

Информация о состоянии ввода-вывода

Это включает в себя список устройств ввода-вывода, выделенных для процесса.

Состояние процесса

Текущее состояние процесса, т. Е. Готов ли он, работает, ждет или что-то еще.

Процессные привилегии

Это необходимо для разрешения / запрета доступа к системным ресурсам.

Идентификатор процесса

Уникальная идентификация для каждого процесса в операционной системе.

Указатель

Указатель на родительский процесс.

Счетчик команд

Счетчик программ — это указатель на адрес следующей инструкции, которая будет выполнена для этого процесса.

Регистры процессора

Различные регистры процессора, где процесс должен быть сохранен для выполнения в рабочем состоянии.

Информация о планировании процессора

Приоритет процесса и другая информация о планировании, которая требуется для планирования процесса.

Информация об управлении памятью

Это включает в себя информацию таблицы страниц, пределов памяти, таблицы сегментов в зависимости от памяти, используемой операционной системой.

Бухгалтерская информация

Это включает количество ЦП, использованного для выполнения процесса, ограничения по времени, идентификатор выполнения и т. Д.

Информация о состоянии ввода-вывода

Это включает в себя список устройств ввода-вывода, выделенных для процесса.

Архитектура печатной платы полностью зависит от операционной системы и может содержать разную информацию в разных операционных системах. Вот упрощенная схема печатной платы —

Блок управления процессом

Печатная плата поддерживается для процесса в течение всего срока его службы и удаляется после завершения процесса.