
- •Операционные системы. Часть 2 Учебное пособие
- •Содержание
- •6.1.1. Общие понятия 58
- •4.Память
- •4.1.Управление оперативной памятью
- •4.1.1.Виртуальная и физическая память
- •4.1.2.Схема управления памятью
- •4.1.3.Управление памятью в однозадачной системе
- •4.1.4.Управление памятью в многозадачной системе
- •4.1.5.Подкачка процессов целиком
- •4.1.6.Страничная подкачка
- •4.1.7.Управление виртуальной памятью
- •4.2.Носители памяти для долговременного хранения данных
- •4.2.1.Накопители на жестких дисках
- •4.2.2.Оптические диски
- •4.2.3.Голографические диски
- •4.2.4.Флэш-память
- •4.2.5.Перспективные носители информации
- •Контрольные вопросы
- •5.Разработка надстроек к операционным системам
- •5.1.Общие понятия
- •5.2.Многозадачная оболочка с синхронной заменой контекста
- •5.3.Многозадачная система с принудительной заменой контекста
- •5.4.Дополнения к асинхронной надстройке
- •Контрольные вопросы
- •6.Краткий обзор операционных систем
- •6.1. Операционная система unix
- •6.1.1.Общие понятия
- •6.1.2. Структура unix
- •6.2.Операционные системы реального времени
- •6.2.1.Понятие об операционной системе qnx
- •6.2.2.Введение в ос VX Works
- •6.3.Особенности ос для универсальных многопроцессорных систем
- •6.3.1.Операционная система helios
- •6.4.Операционная система Windows 2000
- •Варианты выпуска Windows 2000
- •Контрольные вопросы
- •Литература
- •Предметный указатель
4.1.Управление оперативной памятью
4.1.1.Виртуальная и физическая память
За исключением случая, когда программа пишется непосредственно в машинных кодах, при разработке программных кодов в явном или неявном виде используются виртуальные адреса. Более того, если требуется обращение к конкретному физическому адресу (например, к видеобуферу) виртуальный адрес требуется подбирать таким образом, чтобы при связывании информации (на этапе запуска программы) он был преобразован в нужный физический адрес. Вид конкретного преобразования виртуальной памяти (ВП) в физическую определяется типом модели ВП (см. дальше). Ниже приведен пример такого преобразования для реального режима (сегментная модель ВП) семейства машин IBM PC.
cli
mov ax, 40h
mov es, ax
mov bx, es:[1A h]
sti
После построения исполняемого файла и его загрузки в систему, виртуальный адрес es:[1A h] согласно правилам, определенным для реального режима, преобразуется в физический – 41Ah (адрес указателя головы буфера клавиатуры) и в регистр bx будет послано значение символа из начала буфера клавиатуры. Такое разделение памяти на виртуальную и физическую (оно отсутствовало в первых машинах) дает как минимум три преимущества:
переносимость программ для совместимых ОС на уровне исполняемых файлов;
возможность работать с программой, объем которой больше транзитной области памяти;
иметь дело на уровне пользователя с любой из имеющих на данном компьютере моделей памяти (например, сегментной, страничной, плоской моделями).
Виды физической памяти. Практически на всех видах современных ЭВМ физическая память разделена на три уровня: память для долговременного хранения информации со временем выборки информации Тдл, оперативная память со временем выборки информации Топ и сверхоперативная память (кэш память) со временем выборки информации Ткэш. Кэш память в семействе машин IBM PC появилась относительно недавно. В 386 процессоре она появилась впервые и использовалась исключительно для ускорения процесса адресации, которая была ахиллесовой пятой ЭВМ этой серии. При появлении процессоров серии IBM PC 586 тактовая частота стала увеличиваться столь стремительно, что это привело к эффекту «паровоза, который оторвался от вагонов», ибо в контексте последовательности операций:
считать операнды из памяти;
произвести над ними операции вычисления;
обновленные значения операндов заслать в память;
скорость вычисления определялась самой медленной операцией, т. е. работой с памятью. Это заставило внести два принципиальных новшества:
внести в схему кэш память второго уровня на основе быстрых носителях информации, существенно уменьшив время выборки из памяти;
минуя относительно «медленный» магистральный канал, через специальные порты соединить процессор с памятью (в некотором плане это возвращение к схеме машин 3–го поколения).
Время работы с памятью по-прежнему остаётся больше, но разрыв с быстродействием процессора не выглядит теперь таким вызывающим.
Значения выборок информации из разных видов памяти соответствует соотношению:
Тдл
>>
Топ
>> Ткэш .
Очевидно, что средневзвешенное значение
времени работы со всеми видами памяти
Тсред лежит в пределах Ткэш
Тсред
Тдл .
Желаемое приближение Тсред к значению Ткэш достигается такой организацией вычислительного процесса, при которой подавляющее число операций обмена информации между памятью и процессором идет через кэш память. Такая организация характерна для большинства современных операционных систем. Например, как правило, исполняемый файл за одно обращение считывается из долговременной памяти в оперативную. Затем в порядке очередности порциями, соответствующими объему кэш, переписывается в сверхоперативную память. После чего происходит непосредственная обработка кодов.