Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
UchbnoePosobieV14 - p2.doc
Скачиваний:
0
Добавлен:
03.01.2020
Размер:
2.08 Mб
Скачать

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–го поколения).

Время работы с памятью по-прежнему остаётся больше, но разрыв с быстродействием процессора не выглядит теперь таким вызывающим.

Значения выборок информации из разных видов памяти соответствует соотношению:

Тдл >> Топ >> Ткэш .

Очевидно, что средневзвешенное значение времени работы со всеми видами памяти Тсред лежит в пределах Ткэш Тсред Тдл .

Желаемое приближение Тсред к значению Ткэш достигается такой организацией вычислительного процесса, при которой подавляющее число операций обмена информации между памятью и процессором идет через кэш память. Такая организация характерна для большинства современных операционных систем. Например, как правило, исполняемый файл за одно обращение считывается из долговременной памяти в оперативную. Затем в порядке очередности порциями, соответствующими объему кэш, переписывается в сверхоперативную память. После чего происходит непосредственная обработка кодов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]