В пособии описаны полная структура системы UNIX, взаимоотношения между процессами, выполняющимися в режиме задачи и в режиме ядра, а также аппаратная среда функционирования ядра операционной системы. Процессы выполняются в режиме задачи или в режиме ядра, в котором они пользуются услугами системы благодаря наличию набора обращений к операционной системе. Архитектура системы поддерживает такой стиль программирования, при котором из небольших программ, выполняющих только отдельные функции, но хорошо, составляются более сложные программы, использующие механизм каналов и переназначение ввода-вывода.
Обращения к операционной системе позволяют процессам производить операции, которые иначе не выполняются. В функции ядра системы UNIX намеренно не включены многие функции, являющиеся частью других операционных систем, поскольку набор обращений к системе позволяет процессам выполнять все необходимые операции на пользовательском уровне.
Основными компонентами ядра операционной системы выступают подсистема управления файлами и подсистема управления процессами. Подсистема управления файлами управляет хранением и выборкой данных в пользовательских файлах. Файлы организованы в виде файловых систем, которые трактуются как логические устройства. Физическое устройство, такое, как диск, может содержать несколько логических устройств (файловых систем).
Ядро является невыгружаемым и это означает, что процесс, выполняющийся в режиме ядра, будет продолжать свое выполнение до тех пор, пока не перейдет в состояние "сна" или пока не вернется в режим задачи. Ядро обеспечивает целостность своих информационных структур.
Процессы в системе UNIX могут находиться в различных логических состояниях и переходить из состояния в состояние в соответствии с установленными правилами перехода, при этом информация о состоянии сохраняется в таблице процессов и в адресном пространстве процесса. Контекст процесса состоит из пользовательского контекста и системного контекста.
Алгоритм подкачки процессов реализует перемещение процессов целиком между основной памятью и устройством выгрузки.
Устройства в ОС Unix могут быть либо блочного, либо символьного типа; интерфейс между устройствами и остальной частью ядра определяется типом устройств. Поток - это полнодуплексная связь между процессами и драйверами устройств.
В Unix существует несколько форм взаимодействия процессов: а) трассировка процессов и б) механизмы обмена сообщениями, работы с семафорами и разделения памяти.
Поскольку система UNIX с самого начала проектировалась как сетевая операционная система, она поддерживает широкий спектр вычислительных сетей, что определило ее широкое распространение в современных информационных сетях.
Литература
1. Келли-Бутл С. Введение в UNIX. – М.: Лори, 1994. – 342 с.
2. Кристиан К. Введение в операционную систему UNIX. – М.: Финансы и статистика, 1985. – 318 с.
3. МакМален Джон. UNIX : Перевод с англ. В.Л.Григорьева. – М.: Компьютер – ЮНИТИ, 1996. – 368 с.
4. UNIX: Руководство системного администратора./ Эви Немет,Гарт Снайдер, Скотт Сибасс, Трент Р.Хейн; Пер.с англ. С.М.Тимачева. Под ред.М.В.Коломыцева. – 3- е изд.-Киев: BHV, 1998. – 832 c.
5. Кузнецов С. Д.Операционная система UNIX. Учебное пособие. http://www.citmgu.ru/
6. Забродин Л.Д. UNIX: Введение в командный интерфейс.-М.: ДИАЛОГ-МИФИ, 1994.–144 с.
7. Дайсон П. Операционная система UNIX: Настольный справочник/ Пер.С.Орлов. Под ред.В.Вагина. – М.: ЛОРИ, 1997. – 395 с.
8. Дегтярев Е.К. Введение в UNIX. – М.: Память, 1991. – 128 с.
9. Керниган Б.В., Пайк Р. Uniх – универсальная среда программирова-ния: Научное издание/ Пер.с англ. А.М.Березко,В.А.Иващенко. Под ред. М.И.Белякова. – М. : Финансы и статистика, 1992. – 304 с.
10.Дейтел Г. Введение в операционные системы. В 2-х т. Т.2/ Пер с англ. – М: Мир, 1987. – 359 с.
11.Безбогов А.А. Операционные системы и системное программирование. Раздел 1. Учебное пособие. – Тамбов: ТВВАИУ, 2001. – 158 с