Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Понятие процесса в UNIX. Его контекст.




http://cs.mipt.ru/docs/courses/osstud/02/ch2.htm - l0201Все построение операционной системы UNIX основано на использовании концепции процессов, которая обсуждалась на лекции. Контекст процесса складывается из пользовательского контекста и контекста ядра, как изображено на рисунке 2.1.

Рисунок 2.1. Контекст процесса

Под пользовательским контекстом процесса понимают код и данные, расположенные в адресном пространстве процесса. Все данные подразделяются на инициализируемые неизменяемые данные (например, константы), инициализируемые изменяемые данные (все переменные, начальные значения которых присваиваются на этапе компиляции), неинициализируемые изменяемые данные (все статические переменные, которым не присвоены начальные значения на этапе компиляции), стек пользователя и данные, расположенные в динамически выделяемой памяти (например, с помощью стандартных библиотечных C функций malloc, calloc и realloc). Исполняемый код и инициализируемые данные составляют содержимое файла программы, который исполняется в контексте процесса. Пользовательский стек используется при работе процесса в пользовательском режиме (user-mode).

http://cs.mipt.ru/docs/courses/osstud/02/ch2.htm - l020302Под понятием контекст ядра объединяются системный контекст и регистровый контекст, рассмотренные на лекции. Мы будем выделять в контексте ядра стек ядра, который используется при работе процесса в режиме ядра (kernel mode), и данные ядра, хранящиеся в структурах, являющихся аналогом блока управления процессом - PCB. Состав данных ядра будет уточняться на последующих семинарах. На этом занятии нам достаточно знать, что в данные ядра входят: идентификатор пользователя - UID, групповой идентификатор пользователя - GID, идентификатор процесса - PID, идентификатор родительского процесса - PPID.

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

http://cs.mipt.ru/docs/courses/osstud/02/ch2.htm - l020303aКаждый процесс в операционной системе получает свой собственный уникальный идентификационный номер PID (Process IDentificator). При создании нового процесса операционная система пытается присвоить ему свободный номер больший, чем у процесса, созданного перед ним. Если таких свободных номеров не оказывается (например, мы достигли максимально возможного номера для процесса), то операционная система выбирает минимальный из всех свободных номеров. В операционной системе Linux присвоение идентификационных номеров процессов начинается с номера 0, который получает процесс kernel при старте операционной системы. Максимально возможное значение для номера процесса в Linux на базе 32 разрядных процессоров Intel составляет 231-1.






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных