русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Программное обеспечение операционной системы


Дата добавления: 2014-11-28; просмотров: 568; Нарушение авторских прав


Особенности разработки части программного обеспечения операционной системы, управляющей памятью, зависят от ответа на три основныхвопроса.

1. Будет ли использоваться виртуальная память.

2. Будет ли использоваться сегментация, страничная адресация или обе ука­занные технологии.

3. Какие алгоритмы будут использованы для различных аспектов управления памятью.

Ответы на первые два вопроса тесно связаны с используемой аппаратной платформой. Так, ранние реализации UNIX не использовали виртуальную память, поскольку процессоры, на которых работали эти операционные системы, не поддерживали ни сегментации, ни страничной организации, а без аппаратной поддержки преобразования адресов ни сегментация, ни страничная организация никакой практической ценности не представляют.

Приведем два небольших замечания по поводу первых двух вопросов из представленного списка. Во-первых, за исключением операционных систем типа MS DOS для некоторых старых персональных компьютеров и специализированных систем, все важные операционные системы используют виртуальную память. Во-вторых, "чистая" сегментация становится очень редким явлением. При комбинации сегментации и страничной организации основная масса вопросов управления памятью, с которыми сталкивается разработчик операционной системы, лежит в области страничной организации. Таким образом, мы сосредоточим свое внимание на вопросах, связанных со страничной организацией памяти.

Ответ на третий из поставленных в этом разделе вопросов связан с программным обеспечением операционной системы, и именно ему посвящен данный раздел. В табл. 8.3 перечислены основные рассматриваемые в этом разделе стратегии. В каждом случае ключевым вопросом становится производительность: требуется сократить количество прерываний из-за отсутствия страницы в памяти, поскольку их обработ­ка приводит к существенным накладным расходам, которые включают как минимум принятие решения о том, какие резидентные страницы должны быть замещены, и операции ввода-вывода по замене страниц в основной памяти. Кроме того, операци­онная система должна активизировать на время выполнения медленных операций ввода-вывода другой готовый к работе процесс. Ни одна из перечисленных в табл. 8.3 стратегий не является "наилучшей". Задача управления памятью чрезвы­чайно сложна. Кроме того, производительность каждого набора стратегий зависит от размера основной памяти, относительной скорости основной и вторичной памяти, размера и количества конкурирующих за ресурсы процессов и поведения отдельных программ. Последняя характеристика зависит от природы приложения, использо­ванных языка программирования и компилятора, стиля программиста, а для инте­рактивных программ — от динамичности пользователя. Так что читатель не должен ожидать окончательного ответа на поставленные вопросы. Для малых вычислитель­ных систем разработчик операционной системы должен попытаться выбрать такой набор стратегий, который представляется ему наиболее подходящим; в случае ис­пользования больших систем, в частности майнфреймов, операционная система должна быть оснащена инструментами для мониторинга и управления, которые по­зволят администратору настроить ее таким образом, чтобы получить наивысшую производительность для данных физических параметров и решаемых на ней задач.



 

Таблица 8.3. Стратегии операционной системы для виртуальной памяти

Стратегия выборки По требованию Предварительная выборка Стратегия размещения Стратегия замещения Основные алгоритмы Оптимальный Дольше всех неиспользовавшиеся Первым вошел – первым вышел Часовой Буферизация страниц   Управление резидентным множеством Размер резидентного множества Фиксированный Переменный Область видимости Глобальная Локальная   Стратегия очистки По требованию Предварительная очистка   Управление загрузкой Степень многозадачности

 



<== предыдущая лекция | следующая лекция ==>
Сегментация | Стратегия выборки


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.412 сек.