Реферат Курсовая Конспект
Лекция 5 - Лекция, раздел Образование, Операционные системы Динамическое Преобразование Адресов. (Dat) Эт...
|
Динамическое преобразование адресов. (DAT)
Это средство доступно программой, если процессор находится в режиме EC.
DAT дает возможность прерывать выполнение программы в любой момент времени, записывать ее всю или частично на внешнем носитель, а затем восстановить возможно ее в другом месте ОП, продолжить выполнение, при этом нет необходимости изменять что-либо в программе, т.е. возможность создания ОС виртуальной памяти, превышающей ОП.
В режиме EC в слово состоянии программы находится бит DAT. Когда он выключен, то исполнительные адреса трактуются как логические, иначе как реальные.
В своей работе средства DAT используют информацию из управляющих регистров (УР).
PS - page size - размер страницы (8-9-й биты)
PS= 0 1 - 2kb или 1 0 - 4kb; другие значений не допускаются
SS - sector size - сегментный размер (11-12-й биты)
SS= 0 0 - 64kb или 0 1 - 1Mb; другие значений не допускаются
Здесь адрес и длина таблицы сегментов.
Формат одной записи таблицы сегментов:
i - бит доступности данного сегмента
Форматы страниниц:
Адрес - адрес страницы в реальной ОП.
i - бит доступности данной страницы.
Схема преобразования адресов:
Процессор IBM/370 трактует логический адрес как совокупность индекса сегмента, индекса страницы и индекса байта.
DAT выполняется следующим образом:
1. из управляющего регистра УП1 извлекается таблица сегментов, при этом индекс сегмента логического адреса используется как номер строки таблицы сегментов
2. из найденной строки извлекается адрес таблицы страниц, а индекс страницы логического адреса используется как номер строки в таблице страниц
3. из найденной строки извлекается адрес страницы в реальной памяти, к нему добавляется индекс байта и результате получается реальный аддрес.
При выполнении DTA возможны следующие особые случаи:
1. особый случай использования сегмента - индекс сегмента превышает длину таблицы сегментов и значение бита доступности указывает на недоступность сегмента
2. особый случай использования страницы - индекс страницы превышает размер таблицы страниц и значение бита доступности указывает на недоступность страницы => программное прерывание.
Смена значения адреса таблицы сегментов в УР1 приводит к тому, что теже самые логические адреса будут преобразовываться уже в другие адреса. Поэтому говрят, что адрес аблицы сегментов определяет то адресное пространство, в котором выполняется программа.
Для каждого сегмента существует одна таблица страниц.
Буфер бытрой адресации. (TLD)
В строках TLD процессор запоминает исходные данные и резутьтаты DAT. Поэтому, прежде чем выполнить преобразование, процессор всегда пытается найти уже готовый резутьтат, сохраненный в буфере.
TLD во избежании ошибок должен быть очищен в следующих случаях:
1. смена значений в УР1
2. изменение содержимого в текущей таблице сегментов
3. смена содержимого в любой таблице страниц, на которой есть ссылка из текущей таблицы сегментов.
Если страница стала доступной, то TLD очищаеть не надо, а если стала не доступной - надо.
– Конец работы –
Эта тема принадлежит разделу:
Лекция... Операционные системы... DOS Windows Unix...
Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Лекция 5
Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:
Твитнуть |
Новости и инфо для студентов