
- •С. Ф. Храпский операционные системы, среды и оболочки основные теоретические сведения
- •Оглавление
- •Предисловие
- •Введение
- •1. Управление процессами в автономных однопроцессорных вычислительных машинах
- •1.1. Понятия вычислительного процесса и ресурса
- •1.2. Планирование процессов
- •1.3. Межпроцессное взаимодействие
- •1.4. Понятия потока («нити») и многопоточности
- •Контрольные вопросы и задания
- •2. Управление ресурсами в автономных однопроцессорных компьютерах
- •2.1. Управление памятью
- •Управление вводом-выводом
- •2.3. Управление файлами и файловая система
- •Контрольные вопросы и задания
- •3. Управление процессами и ресурсами в автономных многопроцессорных вычислительных машинах
- •3.1. Реализация операционных систем многопроцессорных вычислительных машин
- •Планирование и синхронизация в многопроцессорных вычислительных машинах
- •Контрольные вопросы и задания
- •4. Управление процессами и ресурсами в многомашинных вычислительных системах
- •4.1. Способы организации управления процессами
- •И ресурсами в многомашинных вычислительных системах
- •4.2. Понятия сетевой и распределенной операционных систем
- •4.3. Варианты реализации распределенных операционных систем
- •Контрольные вопросы и задания
- •5. Общие концепции разработки операционных систем
- •5.1. Основные принципы построения операционных систем
- •5.2. Архитектурные особенности проектирования операционных систем
- •5.3. Принципы построения системных и прикладных программных интерфейсов
- •Контрольные вопросы и задания
- •6. История развития операционных систем и эволюция их функциональных характеристик
- •6.1. Операционные системы разных этапов разработки вычислительных машин
- •6.2. История развития и характеристики операционных систем unix
- •6.3. История развития и характеристики операционных систем семейства Windows
- •Контрольные вопросы и задания
- •7. Пример практической реализации операционной системы: unix
- •7.1. Обзор системы unix
- •7.1.1. Общие представления
- •7.1.2. Интерфейсы системы unix
- •7.1.3. Оболочка и утилиты системы unix
- •7.1.4. Структура ядра системы unix
- •7.2. Процессы в unix
- •7.2.1. Основные понятия
- •7.2.2. Реализация процессов в unix
- •7.2.3. Планирование в системе unix
- •7.3. Управление памятью в unix
- •7.3.1. Основные понятия
- •7.3.2. Реализация управления памятью в unix
- •7.4. Ввод-вывод в системе unix
- •7.4.1. Основные понятия
- •7.4.2. Реализация ввода-вывода в системе unix
- •7.4.3. Потоки данных в unix
- •7.5. Файловые системы unix
- •7.5.1. Основные понятия
- •7.5.2. Реализация классической файловой системы unix
- •7.5.3. Реализация файловой системы Berkeley Fast
- •7.5.4. Реализация файловой системы Linux
- •7.5.5. Реализация файловой системы nfs
- •7.6. Безопасность в unix
- •7.6.1. Основные понятия
- •7.6.2. Реализация безопасности в unix
- •Контрольные вопросы и задания
- •8. Пример практической реализации операционной системы: Windows 2000
- •8.1. Обзор структуры операционной систем Windows 2000
- •8.1.1. Структура системы
- •8.1.2. Реализация объектов
- •8.1.3. Подсистемы окружения
- •8.2. Процессы и потоки в Windows 2000
- •8.2.1. Основные понятия
- •8.2.2. Межпроцессное взаимодействие
- •8.2.3. Реализация процессов и потоков
- •8.2.4. Загрузка Windows 2000
- •8.3. Управление памятью в Windows 2000
- •8.3.1. Основные понятия
- •8.3.2. Реализация управления памятью
- •8.4. Ввод-вывод в системе Windows 2000
- •8.4.1. Основные понятия
- •8.4.2. Реализация ввода-вывода в Windows 2000
- •8.5. Файловые системы Windows 2000
- •8.5.1. Файловые системы типа fat
- •8.5.2. Файловая система типа ntfs
- •8.6. Безопасность в Windows 2000
- •8.6.1. Основные понятия
- •8.6.2. Реализация защиты в Windows 2000
- •Контрольные вопросы и задания
- •Заключение
- •Библиографический список
- •Словарь терминов и определений
- •Алфавитно-предметный указатель
- •Храпский Сергей Филиппович операционные системы, среды и оболочки основные теоретические сведения
- •644099, Омск, ул. Красногвардейская, 9
Контрольные вопросы и задания
1. Охарактеризуйте начальные этапы разработки и развития ОС.
2. Опишите основные характерные особенности ОС семейства MS-DOS и историю их эволюции.
3. Какие функции выполняют операционные оболочки, какова их роль в совершенствовании пользовательского интерфейса ОС?
4. Дайте характеристику ОС семейства UNIX, представьте области практического применения наиболее популярных версий UNIX.
5. В чем особенности реализации и функционирования сетевых операционных систем компании Novell?
-
Охарактеризуйте ОС семейства Windows 95/98/ME.
-
Назовите главные достоинства ОС линии Windows NT.
-
Какие качества характерны для современных серверных версий ОС Windows?
-
Перечислите известные специализированные ОС.
7. Пример практической реализации операционной системы: unix
7.1. Обзор системы unix
7.1.1. Общие представления
Операционная система UNIX представляет собой интерактивную систему, разработанную для одновременной поддержки нескольких процессов и нескольких пользователей. Она была разработана программистами и для программистов, чтобы использовать ее в окружении, в котором большинство пользователей являются относительно опытными и занимаются сложными проектами разработки программного обеспечения. Во многих случаях большое количество программистов активно сотрудничают в деле создания единой системы, поэтому в операционной системе UNIX есть достаточное количество средств, позволяющих программистам работать вместе и управлять совместным использованием общей информации. К настоящему времени существует множество версий системы UNIX (см. раздел 6) и между ними имеются определенные различия. В дальнейшем изложении основное внимание уделяется общим чертам всех версий, а не особенностям какой-либо конкретной версии. Поэтому рассматриваемые вопросы реализации ОС UNIX не всегда в равной степени соответствуют разным версиям.
7.1.2. Интерфейсы системы unix
Операционную систему UNIX можно рассматривать в виде некоторой пирамиды. У основания пирамиды располагается аппаратное обеспечение, состоящее из центрального процессора, памяти, дисков, терминалов и других устройств. Выше над аппаратным обеспечением работает операционная система UNIX. Ее функции заключаются в управлении аппаратным обеспечением и предоставлении всем программам интерфейса системных вызовов. Эти системные вызовы позволяют программам создавать процессы, файлы и прочие ресурсы, а также управлять ими. Программы обращаются к системным вызовам, помещая аргументы в регистры центрального процессора (или иногда в стек) и выполняя команду эмулированного прерывания для переключения из пользовательского режима в режим ядра и передачи управления операционной системе UNIX. Системные вызовы реализуются библиотечные функциями – процедурами. Каждая такая процедура помещает аргументы в нужное место и выполняет команду эмулированного прерывания. Интерфейс библиотечных функций определен в стандарте POSIX. Стандарт POSIX определяет библиотечные процедуры, соответствующие системным вызовам, их параметры, что они должны делать и какой результат возвращать.
Помимо операционной системы и библиотеки системных вызовов, все версии UNIX содержат большое количество стандартных программ, некоторые из них описываются стандартом POSIX 1003.2, тогда как другие могут различаться в разных версиях системы UNIX. К этим программам относятся командный процессор (оболочка), компиляторы, редакторы, программы обработки текста и утилиты для работы с файлами. Именно эти программы и запускаются пользователем с терминала.
Таким образом, можно говорить о трех интерфейсах в операционной системе UNIX: интерфейсе системных вызовов, интерфейсе библиотечных функций и интерфейсе, образованным набором стандартных обслуживающих программ.