
- •1. Управление процессами
- •1.1 Операции над процессами
- •1.2 Обработка прерываний
- •2. Иерархическая структура ос.
- •2.1 Понятие параллельных и асинхронных процессов
- •2.2 Алгоритм Деккера.
- •2.3 Аппаратная реализация взаимоисключения
- •2.4 Реализация взаимоисключения с помощью семафоров
- •3. Тупиковые ситуации
- •3.1 Четыре необходимых условия возникновения тупика
- •3.2 Основные направления исследований по проблеме тупиков
- •3.3 Предотвращение тупиков, 3 стратегических принципа.
- •3.5 Обнаружение тупиков
- •3.6 Восстановление после тупиков
- •4. Управление памятью
- •4.1 Организация памяти
- •4.2 Стратегии управления памятью
- •4.3 Связное и несвязное распределение памяти
- •4.4 Мультипрограммирование с фиксированными разделами
- •4.5 Мультипрограммирование с переменными разделами
- •4.6 Стратегии размещения информации в памяти
- •5. Организация виртуальной памяти
- •5.1 Страничная организация памяти
- •5.2 Сегментная организация памяти
- •5.3 Странично-сегментная организация памяти
- •5.4 Стратегии управления виртуальной памятью
- •5.5 Принцип локальности
- •5.6 Стратегии вталкивания страниц
- •6. Управление процессорами
- •6.1 Уровни планирования загрузки процессоров
- •6.2 Цели планирования
- •6.3 Принципы планирования
- •7 Управление внешней памятью
- •8. Производительность
- •8.1 Методы оценки производительности
- •9. Операционная система ms-dos – структура и механизмы
- •9.1 Этапы загрузки ms-dos
- •9.2 Параметры загрузки ms-dos
- •9.3 Структура диска в ms-dos
- •9.4 Использование памяти системой ms-dos
- •9.5 Средства использования памяти
- •10. Операционная система windows 9.X
- •10.1 Сравнение dos и Windows 9.X
- •10.2 Windows 9.X Функции операционной системы
- •10.3 Виртуальная адресация памяти Windows 9.X
- •10.4 Виртуальные машины ос Windows 9.X
- •10.5 Процессы и сообщения в ос Windows 9.X
- •10.6 Планирование приоритетов
- •10.7 Файловая система Windows 9.X
- •11. Операционная система unix
- •11.1 Структура ос unix
- •11.2 Файловая система ос unix
- •11.3 Типы файлов.
- •11.4 Структура файловой системы unix.
- •11.4.1 Базовая файловая система. System V (s5fs).
- •11.4.2 Файловая система ffs.
- •11.5 Архитектура виртуальной файловой системы.
- •11.6 Подсистема управления процессами
- •11.6.1 Типы процессов
- •11.6.2 Атрибуты процесса.
- •11.6.3 Состояния процесса.
- •11.7 Принципы управления памятью
- •11.8 Планирование выполнения процессов
- •11.9 Взаимодействия между процессами
- •12. Загрузка ос windows 2000
- •12.3 Загрузка и инициализация драйверов устройств
- •12.6.1 Раздел [boot loader]
- •12.6.2 Раздел [operating systems]
- •13 Файловая система windows nt (ntfs)
- •13 Новые возможности ntfs 5.0
- •14 Структура ntfs
- •14.1 Главная файловая таблица
- •14.2 Атрибуты файла ntfs
- •14.3 Системные файлы ntfs
- •14.4 Сравнение ntfs с hpfs и fat
- •15 Конфигурирование системы
11.6.2 Атрибуты процесса.
Процесс в UNIX имеет несколько атрибутов, позволяющих операционной системе эффективно управлять его работой. Рассмотрим важнейшие из них:
Идентификатор процесса Process ID (PID). Каждый процесс имеет уникальный идентификатор PID, позволяющий ядру системы различать процессы. Когда создается новый процесс, ядро присваивает ему следующий свободный идентификатор. Присвоение идентификаторов происходит по возрастающей, то есть идентификатор нового процесс больше, чем идентификатор процесса, созданного перед ним. Если идентификатор достиг максимального значения, то следующий процесс получит минимальный свободный PID и цикл повторяется.
Идентификатор родительского процесса Parent Process ID (PPID) - идентификатор процесса, породившего данный процесс.
Приоритет процесса (Nice Number). Относительный приоритет процесса учитывается планировщиком при определении очередности запуска. Фактическое же распределение процессорных ресурсов определяется приоритетом выполнения, зависящим от нескольких факторов. Относительный приоритет не изменяется системой на протяжении жизни процесса в отличие от приоритета выполнения, динамически обновляемого ядром.
Терминальная линия (TTY). Терминал или псевдотерминал, ассоциированный с процессом, если такой существует. Процессы-демоны не имеют ассоциированного терминала.
Реальный (RID) и эффективный (EVID) идентификаторы пользователя. Реальным идентификатором пользователя данного процесса является идентификатор пользователя, запустившего процесс. Эффективный идентификатор служит для определения прав доступа процесса к системным ресурсам. Обычно реальный и эффективный идентификаторы эквивалентны, т.е. процесс имеет те же права, что и пользователь, его запустивший. Однако существует возможность задать процессу более широкие права путем установки флага SVID, когда эффективному идентификатору присваивается значение идентификатора владельца исполняемого файла.
Реальный (RGID) и эффективный (EGID) идентификаторы группы. Определяются аналогично идентификаторам пользователя.
11.6.3 Состояния процесса.
Процесс выполняется в режиме задачи. При этом процессором выполняются прикладные инструкции данного процесса.
Процесс выполняется в режиме ядра. При этом процессором выполняются системные инструкции ядра операционной системы.
Процесс не выполняется, но готов к запуску, как только планировщик выберет его. Процесс находится в очереди на выполнение и обладает всеми необходимыми ему ресурсами, кроме вычислительных.
Процесс находится в состоянии сна, ожидая недоступного в данный момент ресурса.
Процесс возвращается из режима ядра в режим задачи, но ядро прерывает его и производит переключение для запуска более высокоприоритетного процесса.
Процесс только что создан и находится в переходном состоянии: он существует, но не готов к запуску и не находится в состоянии сна.
Процесс выполнил системный вызов exit() и перешел в состояние зомби. Как такового процесса не существует, но остаются записи, содержащие код возврата и временную статистику его выполнения. Это состояние является конечным в жизненном цикле процесса.