Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод указан АРХИТЕКТУРА ЭВМ Майстренко .doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
3.38 Mб
Скачать

Адресное пространство программы d Таблица сегментов программы d оп

0 Сегмент 1

2 0 Кбайт

0 Сегмент 2

1 0 Кбайт

0 Сегмент 3

20 Кбайт


Номер сегмента

Адрес ОП

1

7 5 Кбайт

2

1 25 Кбайт

3

2 05 Кбайт

ОС 0

Программа D 75К

(Сегмент 1)

Программа А 95К

Программа D 125К

(Сегмент 2)

Программа В 135К

Программа D 205К

(Сегмент 3)

Программа С 225К 256К


Динамическая трансляция адресов

На рисунке изображено выполнение программы D. В РНТС находится адрес таблицы сегментов этой программы.

Если программа В прервёт выполнение программы D, то в регистр начала таблицы сегментов будет занесён адрес таблицы сегментов программы В. Допустим, начальный адрес таблицы сегментов программы D равен 68000. Для обращения к адресу 15000 сегмента 1 производятся следующие действия:

- регистр начала таблицы сегментов указывает на таблицу сегментов программы

D - 68000;

- номер сегмента s в относительном адресе используется для обращения к таблице

сегментов (в данном примере к первой строке);

- адрес, хранимый в выбранной строке в таблице сегментов, есть адрес начала сегмента

в основной памяти.

- смещение в относительном адресе добавляется к начальному адресу. Результат

является абсолютным адресом в основной памяти: 15000+75000=90000.

Относительный адрес

РНТС s i

6 8000


1

15000

Таблица сегментов программы D

Номер сегмента

Адрес

1

0 75000

2

125000

3

205000

Абсолютный адрес: 075000+15000=090000

Технология динамической трансляции адресов

При динамической трансляции адресов такое определение адресов ведётся в процессе выполнения каждой программы.

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

Сегментно-страничная организация добавляет ещё один уровень в структуре адресного пространства программы.

Адресное пространство программы дробиться на сегменты, внутри сегментов на страницы, внутри страниц на адреса байтов.

Номер сегмента (s) Номер страницы (р) Смещение (i)

1

2

1500

31 24 23 12 11 0

8 разрядов 12 разрядов 12 разрядов

(256 сегментов) (4096 страниц в (4096 байт в странице)

сегменте)

Адресная структура при сегментно-страничной организации