Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Реальный режим (однозадачный)




Это режим работы первых 16-битовых микропроцессоров. Наличие его обусловлено тем, что необходимо обеспечить в новых моделях микропроцессоров функционирование программ, разработанных для старых моделей.

Любой современный микропроцессор, находясь в реальном режиме, очень мало отличается от старого (первого) i8086. Это лишь его более быстрый аналог с уве­личенным (до 32 бит) размером всех регистров, кроме сегментных. Чтобы по­лучить доступ ко всем остальным архитектурным и функциональным новшест­вам микропроцессора, необходимо перейти в защищенный режим.

Защищенный режим создан прежде всего для работы нескольких независимых программ. Для обеспечения совместной работы нескольких задач необходимо защитить их от взаимного влияния, взаимодействие задач должно регулироваться.

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

Виртуальный режим создан для того, чтобы использовать для работы программ пространство памяти большее, чем объем физической памяти.

Суть его заключается в том, что у микропроцессора существует возможность по обмену страницами памяти с жестким диском. Если программа требует памяти больше, чем объем физической памяти, редко используемые страницы памяти записываются на жесткий диск в специальный файл виртуальной памяти (файл обмена, или страничный файл, или файл подкачки, чаще swap-файлом, подчеркивая, что страницы этого файла замещают друг друга в ОП). В настоящее время файл подкачки может динамически изменять свой размер в зависимости от потребностей системы.

Сегментированная модель памяти (память делится на сегменты кодов, данных, стека, дополнительные),

В реальномрежиме: для хранения адресов начала соответствующих сегментов используется 16-разрядные регистры CS, SS, DS, ES, FS, GS. Они используются при вычислении физических адресов путем суммирования базового (начала сегмента) адреса, находящегося в сегментном регистре, со смещением. Максимальный размер сегмента в реальном режиме 64 Кбайт.

Страничная модель (вся ОП делится на одинаковые страницы размером 4 Кб)

Для каждой текущей задачи создаетсятаблица страниц.

Защита страничной памяти основана на контроле уровня доступа к каждой странице.

Каждая страница снабжается кодом уровня доступа (только чтение; чтение и запись; только выполнение). При работе со страницей значение кода разрешенного уровня доступа сравнивается с фактически требуемым. При несовпадении работа программы прерывается.

Диспетчер памяти для каждой страницы формирует соответствующий дескриптор. Дескрипторсодержит так называемый бит присутствия.

Если он = 1, это означает, что данная страница сейчас размещена в ОП.

Если он = 0, то страница расположена во внешней памяти.

Основное достоинство страничного способа распределения памяти -

минимально возможная фрагментация (эффективное распределение памяти).

Недостатки:

1) потери памяти на размещение таблиц страниц

2) потери процессорного времени на обработку таблиц страниц (диспетчер памяти).

3) Программы разбиваются на страницы случайно, без учета логических взаимосвязей, имеющихся в коде Þ межстраничные переходы осуществляются чаще, чем межсегментные + трудности в организации разделения программных модулей между выполняющими процессами

 

Чтобы избежать недостатка №3 был предложен сегментно-страничный способ распределения памяти.

Сегментно-страничная (ОП делится на сегменты, а сегменты делятся на страницы одинаковой длины).

Программа разбивается на сегменты.

Адрес, по-прежнему, состоит из двух частей - сегмент + смещение.

Но смещение относительно начала сегмента может состоять из двух полей: виртуальной страницы и индекса.

Для доступа к памяти необходимо:

1) вычислить адрес дескриптора сегмента и прочитать его;

2) вычислить адрес элемента таблицы страниц этого сегмента и извлечь из памяти необходимый элемент;

3) к номеру (адресу) физической страницы приписать номер (адрес) ячейки в странице.

 







Дата добавления: 2015-04-19; просмотров: 142. Нарушение авторских прав

Studopedia.info - Студопедия - 2014-2018 год . (0.002 сек.) русская версия | украинская версия