Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
sp.docx
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
213.38 Кб
Скачать

36. Подсистема памяти. Основные задачи, функции, требования

Основными задачами при управлении памятью являются:

– выделение памяти процессам (программам) и освобождение ее;

– идентификация принадлежности выделенных фрагментов и контроль доступа к ним;

– установка соответствия адресов программ и физических адресов памяти;

– перемещение выделенных фрагментов памяти, в т.ч. и с использованием внешних запоминающих устройств.

Память – второй (наряду с процессорным временем) важнейший ресурс вычислительной системы, распределяемый ее операционной системой. Память играет роль “среды обитания” программ, их “операционного поля”, места размещения обрабатываемых данных. Основу подсистемы памяти ЭВМ составляет физическая память, которая включает:

– оперативное запоминающее устройство (ЗУ) – ОЗУ или RAM (random-accessmemory), “основной” тип памяти, доступный для чтения и записи;

– постоянное ЗУ – ПЗУ или ROM (read-onlymemory), доступное только для чтения;

– внешнее ЗУ – ВЗУ, обычно с магнитным (диски, ленты, кассеты и т.д.) или оптическим типом записи, большой емкости и с низкой стоимостью хранения единицы информации; в дальнейшем здесь рассматриваются в основном дисковые устройства, используемые в т.н. виртуальной памяти.

По назначению память может быть разделена на память программ и память данных. Далее рассматривается т.н. фон-Неймановская архитектура подсистемы памяти: код программ и данные размещаются в физически едином адресном пространстве. Альтернативная архитектура, предусматривающая физически раздельные ЗУ для программ и данных,  – т.н. Гарвардская – более распространена в специализированной вычислительной технике. Однако концепция логического разделения адресного пространства применяется в большинстве серьезных ОС.

Традиционно “внутренняя” память организуется как сплошной массив ячеек (слов), доступ к которым осуществляется по адресам. По соображениям производительности желательно, чтобы слова имели одинаковую разрядность, но может допускаться и адресация слов различной длины, например, в x86 – байт (8 бит), слово (2 байта), двойное слово (4 байта), четверное слово (8 байт), 10-байтовое слово. Минимальной единицей адресуемой памяти обычно считается байт.

Выделяются следующие виды адресов:

1) символические – используются при написании программ в читаемом виде, фактически эквиваленты имен элементов данных или элементов аппаратной архитектуры;

2) виртуальные – условные адреса, используемые в загружаемом модуле программы, назначаются транслятором исходя из принятого соглашения (например, начиная с нулевого);

3) логические – адреса времени выполнения программы, которыми она оперирует с точки зрения программиста и которые соответствуют программной модели процессора;

3) физические – соответствуют реальным ячейкам ЗУ данной архитектуры.

Для выполнения загруженной программы ее виртуальные адреса необходимо преобразовать в физические. Это может быть сделано 2 основными способами:

– настройка при загрузке (“раннее преобразование”) – выполняется однократно загрузчиком;

– настройка во время выполнения (“позднее преобразование”) – выполняется в момент обращения к адресам с помощью соответствующих аппаратных и/или программных средств.

В случае ранней настройки логические адреса соответствуют физическим либо однозначно переводятся в них простейшей процедурой. При позднем преобразовании логические адреса соответствуют виртуальным.

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