1. Процесс. Состояния процесса. Операции над процессами.
2. Обработка прерываний. Типы прерываний. Переключения контекста. Разрешение и запрещение прерываний.
3. Ядро операционной системы. Основные функции ядра. Иерархическая структура ОС. Архитектура ОС Linux.
· [Дейтел 87] Дейтел Г., Введение в операционные системы. М."Мир",1987.
· [Кейлингерт 85] Кейлингерт П., Элементы операционных систем, М."Мир", 1985.
· [Кейслер 86] Кейслер С., Проектирование операционных систем для малых ЭВМ, М."Мир", 1986.
· [Колин 75] Колин А., Введение в операционные системы, М."Мир", 1975.
· [Цикритзис 77] Цикритзис Д., Бернстайн Ф., Операционные системы, М."Мир", 1977.
Понятие процесс(process) введено разработчиками ОС с 60-х годов, как программа во время выполнения. Заметим, что программа - это всего лишь файл в формате загрузки, сохраняемый на диске, а процесс расположен в памяти на этапе выполнения.
Для процесса характерен ряд дискретных состояний, причем смену этих состояний могут вызывать различные события. Первоначально ограничимся рассмотрением трех основных состояний процесса.
· Процесс находится в состоянии выполнения, если в данный момент ему выделен центральный процессор (ЦП).
· Процесс находится в состоянии готовности, если он мог бы сразу использовать центральный процессор, предоставленный в его распоряжение.
· Процесс находится в состоянии блокировки, если он ожидает некоторого события, чтобы получить возможность продолжать выполнение.
Заметим, что в однопроцессорной машине в состоянии выполнения может в каждый конкретный момент времени находится только один процесс. В состояниях же готовности и блокировки могут находиться несколько процессов, т.е. есть возможность создать список готовых и список заблокированных процессов.
Список готовых процессов упорядочен по приоритету, первым в распоряжение получает ЦП первый процесс из списка. При создании списка готовых процессов, каждый новый процесс помещается в конец списка, а по мере завершения выполнения предыдущих процессов продвигается в головную часть списка. Список же заблокированных процессов не упорядочен, т.к. разблокировка процессов осуществляется в том порядке, в котором происходят ожидаемые ими события.
Рассмотрим диаграмму переходов процесса X из состояния в состояние - смену состояний процесса.