Организация памяти
Физическая память, к которой микропроцессор имеет доступ по шине адреса (см. Рисунок 1), называется оперативной памятью (или оперативным запоминающим устройством — ОЗУ). На самом нижнем уровне память компьютера можно рассматривать как массив битов. Один бит может хранить значение О или 1. Для физической реализации битов и работы с ними идеально подходят логические схемы. Но микропроцессору неудобно работать с памятью на уровне битов, поэтому реально ОЗУ организовано как последовательность ячеек — байтов. Один байт состоит из 8 бит. Каждому байту соответствует свой уникальный адрес (его номер), называемый физическим. Диапазон значений физических адресов зависит от разрядности шины адреса микропроцессора. Для i486 и Pentium он находится в пределах от 0 до 232 - 1 (4 Гбайт). Механизм управления памятью полностью аппаратный. Это означает, что программа не может сама сформировать физический адрес памяти на адресной шине. Ей приходится «играть» по правилам микропроцессора. Отметим, что в конечном итоге этот механизм позволяет обеспечить: · компактность хранения адреса в машинной команде; · гибкость механизма адресации; · защиту адресных пространств задач в многозадачной системе; · поддержку виртуальной памяти. Микропроцессор аппаратно поддерживает несколько моделей использования оперативной памяти: · сегментированную модель. В этой модели память для программы делится на непрерывные области памяти (сегменты), а сама программа может обращаться только к данным, которые находятся в этих сегментах; · страничную модель. Ее можно рассматривать как надстройку над сегментированной моделью. В случае использования этой модели оперативная память рассматривается как совокупность блоков фиксированного размера 4 Кбайт. Основное применение этой модели связано с организацией виртуальной памяти, что позволяет операционной системе использовать для работы программ пространство памяти большее, чем объем физической памяти. Для микропроцессоров i486 и Pentium размер возможной виртуальной памяти может достигать 4 Тбайт (терабайт). Особенности использования и реализации этих моделей зависят от режима работы микропроцессора: · Режим реальных адресов, или просто реальный режим. Это режим, в котором работал i8086. Наличие его в i486 и Pentium обусловлено тем, что фирма Intel старается обеспечить в новых моделях микропроцессоров функционирование программ, разработанных для ранних моделей микропроцессоров. · Защищенный режим позволяет максимально реализовать все архитектурные идеи, заложенные в модели микропроцессоров Intel, начиная с i80286. Программы, разработанные для i8086 (реального режима), не могут функционировать в защищенном режиме. Одна из причин этого связана именно с особенностями формирования физического адреса в защищенном режиме. · Режим виртуального 8086. Переход в этот режим возможен, если микропроцессор уже находится в защищенном режиме. Отличительной особенностью этого режима является возможность одновременной работы нескольких программ, разработанных для i8086. Это объясняется тем, что процесс формирования физического адреса для этих программ производится по правилам реального режима.
|