Возможность развития операционной системы
Большинство операционных систем постоянно развиваются. Происходит это в силу следующих причин.
• Обновление и возникновение новых видов аппаратного обеспечения. На
пример, ранние версии операционных систем UNIX и OS/2 не использовали
механизмы страничной организации памяти, потому что они работали на
машинах, не обеспеченных соответствующими аппаратными средствами1.
Более поздние версии операционных систем были доработаны таким образом, чтобы они могли использовать новые аппаратные возможности. Точно
так же на устройство операционных систем повлияло использование графических терминалов и терминалов, работающих в страничном режиме, вместо алфавитно-цифровых терминалов с построчной разверткой. Такой терминал позволяет пользователю работать одновременно с несколькими приложениями в различных окнах экрана. Такая возможность требует более сложной поддержки со стороны операционной системы.
Рис. 2.2. Операционная система как диспетчер ресурсов
• Новые сервисы. Для удовлетворения требований пользователей или нужд системных администраторов операционные системы предоставляют новые возможности. Например, если станет трудно поддерживать высокую производительность при работе с имеющимся на определенный момент инструментарием
пользователя, в операционную систему могут быть добавлены новые инструменты для контроля и оценки производительности. Другой пример — поддержка новых приложений, использующих окна на экране дисплея. Эта возможность потребовала значительного обновления операционной системы.
• Исправления. В каждой операционной системе есть ошибки. Время от времени они обнаруживаются и исправляются. Конечно, в исправление может
вкрасться новая ошибка...
Необходимость регулярных изменений операционных систем накладывает определенные требования на их устройство. Очевидно, что эти системы должны иметь модульную конструкцию с четко определенным взаимодействием модулей; очень важную роль играет хорошая и полная документированность. Для больших программ, которыми на сегодняшний день являются типичные операционные системы, недостаточно выполнить то, что называется непосредственной модуляризацией [DENN80a] — нужно сделать нечто большее, чем простая разбивка целой программы на отдельные подпрограммы. В данной главе мы вернемся к этому вопросу.
Дата добавления: 2016-06-05; просмотров: 1690;