Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ШМИДТ.docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
570.9 Кб
Скачать

4. Адресация памяти в реальном режиме работы процессора, логическая организация памяти.

Логический адрес – адрес, на понятном для программы языке (сегмент+смещение).

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

Адресация памяти в реальном режиме происходит сегментной адресацией памяти, т.е. обращение к памяти осуществляется исключительно с помощью сегментов. (адресное пространство до 1Гб)

Сегмент - это условно выделенная область адресного пространства, размером 64Кб.

Смещение - относительный адрес (адресация от нуля).

Физический адрес любой ячейки памяти вычисляется процессором путем сложения начального адреса сегмента, в котором располагается эта ячейка, со смещением к ней (в байтах) от начала сегмента.

  • расширяем до 20 бит сегментную компоненту, дописывая справа 4 нулевых бита, получаем число 12340h;

  • расширяем до 20 бит компоненту смещения, дописывая слева 4 нулевых бита, получаем число 00123h;

  • для получения физического адреса складываем полученные числа: 12340h + 00123h = 12463h.

5. Адресация памяти в защищенном режиме работы процесора

Логический адрес – адрес, на понятном для программы языке (сегмент+смещение).

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

Адресация памяти в защищенном режиме делится на две части: сегментация и страничная организация. (адресное пространство до 4Гб)

В защищенном режиме каждый сегмент имеет собственный размер (в реальном режиме сегменты одинаковые по 64кб).

На этапе создания процесса система создает в памяти локальную таблицу дескрипторов–описателей сегментов и одну глобальную таблицу дескрипторов где хранятся дескрипторы сегментов.

Дескриптор - структура, где записана информация о сегменте.

Каждый дескриптор содержит следующую информацию, характеризующую сегмент:

  • адрес сегмента;

  • размер сегмента в байтах;

  • право доступа (позволяет указать, что данный сегмент доступен только для чтения (R, RW, RUN));

  • уровень привилегий сегмента.

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

Селектор - (вместо сегментного адреса) - его часть (13 бит) представляет собой индекс в дескрипторной таблице, т.е. указывает на дескриптор, в котором находится полная информация о сегменте.

Логический адрес состоит из 16-битового селектора сегмента (записываемого в специальный сегментный регистр) и 32-битового смещения в этом сегменте. Логический адрес преобразуется в линейный адрес сложением смещения и адреса сегмента. Адрес сегмента берется из таблицы глобальных дескрипторов, либо из таблицы локальных дескрипторов.

Линейный адрес - (виртуальный адрес) - адрес, идентифицирующий локализацию байта в виртуальном адресном пространстве.

Полученный линейный виртуальный адрес преобразуется в искомый физический адрес. Процессор в этом случае оперирует с блоками равной длины (4Кбайт) – страницами, на которые разбита вся память (как физическая, так и виртуальная, соответствующие страницы также будут называться физическая и виртуальная).

Страница - минимальная единица памяти, которой оперирует система виртуальной памяти.

Виртуальная память - ресурсы оперативной памяти, выделяемые прикладной программе операционной системой.

Файл подкачки - специальный файл, размещающийся на одном или нескольких дисках компьютера и предназначенный для (временного) хранения страниц виртуальной памяти.