YourLib.net
Твоя библиотека
Главная arrow Информатика (Под общ. ред. А.Н. Данчула) arrow 2.4.2. Специальные виды памяти. Виртуальная память
2.4.2. Специальные виды памяти. Виртуальная память

2.4.2. Специальные виды памяти. Виртуальная память

   Обрабатываемые на ПК данные очень часто содержат массивы неизменяющихся (постоянных) данных или же данных, изменяющихся достаточно редко. Расходовать определенную часть емкости оперативной памяти для хранения таких массивов данных нецелесообразно. Для их хранения используется специальная односторонняя (только для чтения) память (ROM — Read Only Memory). Часто такая память называется постоянным запоминающим устройством — ПЗУ. Такая память энергонезависима. Отметим, что функционирование ROM можно рассматривать как выполнение однозначного преобразования кода адреса ячейки (ROM является адресным ЗУ) в код хранящегося в ней слова (рис. 2.18).
   В современных типах постоянной памяти пользователь при наличии специальных технических средств на рабочем месте

Рис. 2.18. Схема функционирования ROM 

Рис. 2.18. Схема функционирования ROM

может стирать и перепрограммировать такую память многократно. Это достигается за счет запоминающих элементов, методов записи, хранения и стирания информации. Такой тип памяти, получивший широкое распространение, называется перепрограммируемым постоянным запоминающим устройством (ППЗУ). Далее мы будем пользоваться термином ПЗУ.
   ПЗУ применяются: в BIOS для хранения специальной информации; в мультимедийных системах (звуковых картах, видеоадаптерах) и т. д.
   Кэш-память — сверхоперативная память, используемая в основном для повышения производительности совместно функционирующих разноскоростных устройств и тем самым системы в целом. В современных ПК кэш-память применяется в основном в трактах обмена информацией между МП и ОП, а также между винчестером (жесткий магнитный диск) и шиной данных. Как известно, важным фактором, влияющим на производительность всей системы, является скорость, с которой данные пересылаются в МП и из него в основную память и другие устройства ПК. Скорость работы МП такова, что большинство типов микросхем, обычно применяемых в ПК, не годятся для непосредственной работы на такой скорости. При этом для предотвращения потерь данных в процессе обмена информацией МП должен периодически останавливаться (например, давая возможность микросхемам памяти принять данные). Такие паузы называются «состоянием ожидания». Для исключения (или уменьшения) состояний ожидания можно применять быстрые микросхемы статической RAM для построения основной памяти. Но как уже отмечалось, такие микросхемы дороги и не выгодны при построении памяти значительной емкости. Одним из способов организации динамической памяти, позволяющих уменьшить число состояний ожидания МП, является многоуровневая организация памяти. В данном случае это двухуровневая организация памяти, т. е. к основной памяти, построенной на динамических микросхемах, добавляется очень быстрая память ограниченной емкости, построенная на статических микросхемах (кэш-память).
   Рассмотрим взаимодействие кэш-памяти с МП (рис. 2.19). Предположим, что ОП и кэш-память состоят из отдельных блоков. При обращении МП к ОП сначала производится сравнение запрашиваемых адресов с адресами, хранящимися в справочнике. Последний содержит адреса данных из ОП, которые

Рис. 2.19. Место кэш-памяти в системе МП — ОП 

Рис. 2.19. Место кэш-памяти в системе МП — ОП

хранятся в кэш-памяти. При обнаружении нужного адреса происходит быстрая выборка данных из кэш-памяти. В противном случае должно произойти обновление содержимого кэш-памяти.
   При использовании кэш-памяти для ОП могут возникнуть некоторые проблемы. Например, программа может изменить содержание того байта в ОП, копия которого находится в кэшпамяти. Если байт в кэш-памяти не будет изменен одновременно с изменением байта в ОП, то использование данного байта приведет к ошибке. Для избежания этих и подобных случаев используются соответствующие устройства управления, т. е. контроллеры кэш-памяти. Естественно, что эффективность работы ОП с кэш-памятью зависит и от характеристик конкретной программы (насколько последовательно расположены команды и обрабатываемые данные, как часто происходит передача управления и т. д.).
   Основной идеей организации виртуальной памяти является то, что в любой момент в выделенной части основной памяти (ОП) достаточно держать минимальное количество блоков (сегментов, страниц и т. д.) данных, необходимых для решения одной задачи. Операционная система должна пересылать нужныеблоки (когда они потребуются) с диска в выделенную часть основной памяти и возвращать их (когда они не нужны) на диск, освобождая соответствующее место выделенной части основной памяти. Фактически оперативная память служит буфером запоминающим устройствам для согласования работы МП и внешних запоминающих устройств (рис. 2.20).
   Механизм замещения частей программы приводится в действие при отсутствии искомого блока в ОП. Для приема необходимого блока в ОП место освобождается по одному из критериев: максимальному времени пребывания блока в ОП; наименьшему количеству ранее сделанных обращений к некоторому блоку; наибольшему времени, в течение которого блок не использовался, и т. д. Уменьшение времени обмена сводится к уменьшению числа пересылок и к выбору оптимального метода определения «наименее ценных» блоков, находящихся в ОП, и оптимального размера самого блока. Основное преимущество заключается в том, что пользователь получает пространство адресов, равное объему запоминающих устройств ПК (в рассмотренном случае ОП и дисковой памяти) с функцией ОП, не зависящей, однако, от объема ОП. Это повышает эффективность использования вычислительной системы для многопрограммной работы.

Рис. 2.20. Принципиальная схема функционирования виртуальной памяти 

Рис. 2.20. Принципиальная схема функционирования виртуальной памяти

 
< Пред.   След. >