Анализ и оценка виртуальной памяти ЭВМ при ее сегментно-страничной организации — страница 7

  • Просмотров 8311
  • Скачиваний 287
  • Размер файла 47
    Кб

каких- 14-ти битовый виртуальный адрес 3-х битовый 11-ти битовый адрес в пределах выбранной ВС номер ВС Рис.4 ————— * Эта страница необязательно может быть свободной. Подробности о стратегиях замены (своппирования) страниц см. в § 8 Copyright © 1994 by Vsevolod Ukrainsky либо операций (записи или выборки операндов, выполнения команды или осуществления передачи управления), программой формируется 14-ти битовый адрес, соответсвующий виртуальному

адресу, который определяет ячейки в промежутке от 0 до 16 Кб - 1. В данном примере 14-ти битовый адрес как бы разбивается на 3-х битовый номер виртуальной страницы и 11-ти битовый внутри той страницы, номер которой определён тем самым 3-х битовым номером. Пример кода адреса при страничной организации памяти показан на рисунке 4. А связь между номерами страниц и самими виртуаль- ными адресами показанна на рисунке 5. Итак, рассмотрим

рисунок 4: 3-х битовый номер виртуальной страницы 110 (в bin-формате) соот-ветствует номерам 6 и 6h (dec- и hex-форматы) - необходимо пом- нить, что все операции в машине производятся в шеснадцатеричном формате. Таким образом, выбирается страница с номером 6 и внут- ренним адресом 00101001110B (14Eh). Значит по рисунку 5, этот физи-ческий адрес будет соответствовать виртуальному адресу 12288... Страница Виртуальные адреса Рис.5 Это значит, что шестая

страница виртуальной памяти начинается с адреса 12288 и заканчивается по адресу 14335. Общий объем вир- туальной страницы составляет 2048 Байт (2 Кб). Для определения физического адреса пользовательской программы, резидентный диспетчер памяти под управлением операционной сис- темы должен установить местонахождение виртуальной страницы. Физическая страница памяти, которая соответствует виртуальной, может находится в оперативной

памяти, но может также быть и на диске. Как было сказанно ранее, для того чтобы установить соответс- твие между виртуальной и физической страницами, ОС обращается к страничной таблице, каждая из строк которой содержит по одной за- писи для каждой из восьми виртуальных страниц. Как же организо- ванна эта страничная таблица? Запись в строке содержит три поля Первое однобитовое поле по сути является флагом - в этой ячейке может

находится либо включенный, либо выключенный бит (1 или 0), что указывает на конкретное местонахождение страницы: если в этом поле содержится код нуля это подсказывает процессору, что необходимую страницу нужно искать во внешней памяти, если зна- чение бита в данном поле равно 1, то искомая страница уже находит- ся в оперативной памяти. Таким образом, все функции единственного бита в этом поле - принимать значения True или False. Второе