Понедельник, Июль 5th, 2010

Операционные системы, среды и оболочки

? Первые мультипрограммные операционные системы строились по этой схеме. Иногда в некотором разделе размещалось по нескольку небольших программ, которые постоянно в нем находились. Такие программы назывались ОЗУ-резидентными.

? Увеличить число параллельно выполняемых приложений можно за счет свопинга (swapping) –задача может быть выгружена на магнитный диск (перемещена во внешнюю память), а на ее место загружается либо более привилегированная, либо просто готовая к выполнению другая задача, находившаяся на диске в приостановленном состоянии. При свопинге из основной памяти во внешнюю (обратно) перемещается вся программа, а не ее отдельная часть.
? Недостатком рассматриваемого способа распределения памяти является фрагментация памяти

Разделы с подвижными границами
? Одной из первых операционных систем, в которой был реализован такой способ распределения памяти, была OS MVT
? Специальный планировщик (диспетчер памяти) ведёт список адресов свободной оперативной памяти. При появлении новой задачи он выделяет для нее раздел, объем которой равен необходимому, либо чуть больше, модифицирует список свободных областей памяти.

? Способы выделения памяти под новый раздел: • первый подходящий участок;
• самый подходящий участок;
• самый неподходящий участок.

? Недостаток метода — сильная фрагментация памяти. Можно организовать уплотнение памяти.
? Данный способ распределения памяти, тем не менее, применялся достаточно длительное время в нескольких операционных системах

4. Сегментная, страничная и сегментно-страничная организация памяти
? Первым среди разрывных методов распределения памяти был сегментный. Программа разбивается на логические элементы —сегменты, каждому сегменту выделяется физическая память.
? Вся информация о текущем размещении сегментов задачи в памяти обычно сводится в таблицу сегментов, чаще такую таблицу называют таблицей дескрипторов сегментов задачи.
? Виртуальный адрес для этого способа будет состоять из двух полей — номера сегмента и смещения относительно начала сегмента.

? Если сегмент задачи находится в оперативной памяти, то об этом делается пометка в дескрипторе. В этом случае в поле адреса записывается адрес физической памяти, с которого сегмент начинается, а в поле длины сегмента (limit) указывается количество адресуемых ячеек памяти.
? Также в дескрипторе сегмента, как правило, содержатся данные о типе сегмента, правах доступа к нему, отметка об обращениях к данному сегменту.
? При передаче управления следующей задаче операционная система должна занести в соответствующий регистр адрес таблицы дескрипторов сегментов этой задачи.

? В оперативной памяти размещают не все сегменты задачи, а только задействованные в данный момент.
? Перемещение сегментов из оперативной памяти на жесткий диск и обратно часто называют свопингом сегментов.

Дисциплины замещения сегмента:
• правило FIFO (First In First Out — первый пришедший первым и выбывает);

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37

Категория: Лекции