Математика | ||||
Проектирование операционных систем-Кейслер С. М.: Мир, 1986. — 680 с., ил. | ||||
Кейслер С.
33 Проектирование операционных систем для малых ЭВМ: Пер. с англ. — М.: Мир, 1986. — 680 с., ил. В книге американского специалиста рассматриваются методы проектирования операционных систем многоуровневого управления малыми вычислительными машинами предназначенными для использования в автоматизированных комплексах управления производственными процессами или в качестве персональных компьютеровОписываются основные блоки операционной системы, указывается их назначение. Значительное внимание уделено взаимодействию операционных систем с пользователем Изложение сопровождается многочисленными примерами. Для специалистов работающих в области создания программного обеспечения мини- и микроЭВМ. ПРЕДИСЛОВИЕ РЕДАКТОРА ПЕРЕВОДА Создание операционных систем — совершенно особая область программирования. Это —так называемое системное программирование, которое имеет дело с разработкой компиляторов или интерпретаторов с языков программирования, различных программных систем (интерактивных, отладочных, архивных, файловых, управления базами данных и т. п.) и операционных систем для ЭВМ. Среди всего множества этих объектов разработка и реализация операционной системы (ОС) являются самыми сложными и трудоемкими. И не только потому, что операционная система создается, как правило, для новой ЭВМ, не имеющей какого-либо сервисного математического обеспечения, что, естественно, затрудняет весь процесс отладки. В последнее десятилетие для преодоления этой трудности очень эффективно использовались инструментальные ЭВМ. Операционная система сама по себе является довольно сложным объектом с многочисленными внутренними связями, которые растут явно нелинейно при увеличении функциональной сложности задач, поставленных перед ОС. Сам за себя говорит даже тот факт, что несмотря на большой опыт накопленный в области операционных систем, все еще не существует какого-то определенного «стандарта» или «эталона» ОС. Были попытки представить операционную систему UNIX в качестве такой стандартной операционной системы для всех ЭВМ, но они не увенчались успехом в основном из-за очень больших накладных расходов, присущих этой системе. А пока с появлением каждой новой ЭВМ, и в особенности михроЭВМ, крайне актуальной является задача создания эффективной и удобной операционной системы. И такие системы создаются для каждого типа мини-и микроЭВМ. В данной книге автор рассматривает вопросы проектирования операционных систем для малых ЭВМ. Большинство решений, приводимых автором, основано на популярных операционных системах для мини-ЭВМ фирм Digital Equipment, Hewlett-Packard и Data General. Но построение книги намного выигрывает за счет того, что автор не стал подробно разбирать достоинства и недостатки одной или нескольких ОС, а попытался обобщить имеющийся опыт и показать, как надо реализовывать ту или иную функциональную возможность, заложенную в операционную систему. Надо сказать, что краеугольным камнем каждой операционной системы (и автор несколько раз подробно это обсуждает) является набор функций, которые ОС должна предоставить пользователю. Операционная система не может делать «все для всех>. Такая система, как правило, никогда не будет реализована До конца, и отечественный и зарубежный опыт лишний раз это подтверждает. Так, автор глубоко и подробно останавливается на ключевых аспектах ОС — управлении устройствами, процессами, памятью, вводом-выводом, на файловой системе и сервисных программах (утилитах). Большим достоинством книги является то, что помимо детального описания функционирования каждой части ОС приведены и соответствующие алгоритмы. Однако они в некотором роде являются учебными, так как не принадлежат никакой ОС, не зависят ни от какой конкретной ЭВМ и написаны, кроме того, на псев- ОГЛАВЛЕНИЕ 90 Предисловие редактора перевода Предисловие ................. 7 Благодарности ................ & Глава 1. Введение . . ............. 1.1. Цель книги ............... -' 1.2. Компоненты ЭВМ ............. ll 1.3. Перспективные взгляды на операционные системы .... ^» 1.4. Типы операционных систем .......... 39' 1.5. Основные концепции, влияющие на проектирование операцион- ных систем ............... ^ 1.6. Предварительный обзор рассматриваемых далее тем ... 57 . Глава 2. Управление внешними устройствами ....... 60 2.1. Концепции управления внешними устройствами .... 60 2.2. Концепции управления внешними устройствами ..... 66 2.3. Управление терминальными устройствами ...... 2.4. Управление печатающим устройством ....... 2.5. Управление магнитными лентами ........ 2.6. Управление внешними запоминающими устройствами большой емкости ............. . 2.7. Устройство управления памятью .......... 139 2.8. Распределение внешней памяти ......... 147 Глава 3. Управление процессами ........... 174 3.1. Концепции управления процессами ........ 174 3.2. Планирование и диспетчеризация процессов ...... 180 3.3. Функции управления процессами ......... 205 3.4. Управление событиями ........... 224 3.5. Взаимодействия между процессами ........ 235 Глава 4. Управление памятью ........ .... 260 4.1. Функции управления памятью ......... 260 4.2. Динамическое распределение памяти ....... 270 4.3. Обмен и сцепление программ .......... 280 4.4. Программирование с использованием оверлеев ..... 290 4.5. Методы управления страницами ......... 313 Глава 5. Управление вводом-выводом ......... 345 5.1. Концепции управления вводом-выводом ....... 345 5.2. Структура менеджера ввода-вывода ........ 350 5.3. Управление буферами ............ 357 679 5.4. Методы доступа .... ......... 37 5.5. Менеджер интерфейса ввода-вывода ........ За 5.6. Методы произвольного доступа ........ ,40 5.7. Функции последовательного доступа ........ 40 5.8. Механизмы защиты ввода-вывода ........ 42 Слава 6. Управление файлами ............ 44 6.1. Концепции управления файлами ......... 44 6.2. Организация файлов , .......... 46 6.3. Структура менеджера файлов ......... 47 6.4. Создание файла и создание связи с файлом ...... 48 6.5. Удаление файла и связи с файлом ........ 49 6.6. Программы модификации файла .... ..... 49 6.7. Открытие файла или устройства ........ .50 6.8. Закрытие и переустановка файлов ........ 511 6.9. Функции управления справочником ........ 521 Слава 7. Пользовательский интерфейс и утилиты ....... 53 7.1. Структура пользовательской среды ........ 53! 7.2. Командный язык операционной системы ....... 53/ 7.3. Связь с системой: запросы на системное обслуживание . . 55; 7.4. Конфигурация системы и генерация ........ 56! 7.5. Инициализация системы . ......... 56S 7.6. Базы данных операционной системы ........ 571 7.7. Утилиты операционной системы ......... 58; 7.8. Анализ и обработка ошибок .......... 59* 7.9. Управление очередями ....... '. . . . 60! 7.10. Управление семафорами ........... 621 ^Приложение А. Структура языка проектирования программ .... 631 Приложение Б. Неявные системные функции ........ 634 Дополнение ................. 63( -Литература .................. 631 Предметный указатель ............ 668 Цена: 300руб. |
||||