- •Раздел 4. Микропроцессоры семейства intel
- •Тема 4.1. Модели мп семейства intel и их сравнительная характеристика
- •Тема 4.2. Организация однокристальных 16-разрядных микропроцессоров
- •Стандартная архитектура 16-разрядного микропроцессора intel 8086.
- •Программная модель микропроцессора intel 8086.
- •Организация памяти.
- •Стандартная архитектура 16-разрядного микропроцессора intel 8086.
- •Программная модель микропроцессора intel 8086.
- •Сегментные регистры (cs, ds, ss, es),
- •Регистр адреса командIp,
- •Регистр флагов f.
- •Регистр флагов f
- •3. Организация памяти.
- •Тема 4.3. Система команд мп, форматы команд, классификация команд, способы адресации
- •Формат команды микропроцессора
- •Режимы адресации операндов
- •Тема 4.4. Система прерываний микроЭвм
- •Типы прерываний и особых ситуаций. Приоритеты прерываний и особых ситуаций
- •Механизм обработки прерываний
- •Типы прерываний и особых ситуаций. Приоритеты прерываний и особых ситуаций
- •Аппаратные прерывания
- •Программные прерывания
- •Исключительные ситуации
- •Механизм обработки прерываний
- •Тема 4.5. Сопроцессоры
- •Общие сведения и технические характеристики. Форматы команд и обрабатываемых данных. Система команд арифметического сопроцессора
- •Структура арифметического сопроцессора
- •Общие сведения и технические характеристики. Форматы команд и обрабатываемых данных. Система команд арифметического сопроцессора
- •Структура арифметического сопроцессора
- •Тема 4.6. Архитектура 32-разрядных мп
- •Регистровая структура мп 80486
- •Типы данных 32-разрядных мп
- •Система команд, форматы команд и способы адресации мп 80486
- •Тема 4.7. Реальный режим работы мп
- •Тема 4.8. Защищенный режим работы мп
- •Дескрипторы сегментов и их таблицы. Типы сегментов и дескрипторов
- •Страничная и сегментная организация памяти. Преобразование адресов в защищенном режиме
- •Средства поддержки мультизадачности и защиты. Механизмы защиты
- •Тема 4.9. Виртуальный режим работы мп
- •Виртуальная память. Средства поддержки виртуальной памяти
- •Пространство виртуальных адресов. Механизм преобразования адресов
- •Виртуальная память. Средства поддержки виртуальной памяти
- •Пространство виртуальных адресов. Механизм преобразования адресов
- •Сегментно - страничное распределение
Тема 4.9. Виртуальный режим работы мп
-
Виртуальная память. Средства поддержки виртуальной памяти
-
Пространство виртуальных адресов. Механизм преобразования адресов
-
Виртуальная память. Средства поддержки виртуальной памяти
Виртуальная память является наиболее эффективным способом управления памятью. Виртуальная память использует дисковую память для временного хранения не помещающихся в оперативную память данных и кодов выполняемых программ.
Необходимым условием для того, чтобы программа могла выполняться, является ее нахождение в оперативной памяти. Только в этом случае процессор может извлекать команды из памяти и интерпретировать их, выполняя заданные действия.
Виртуализация оперативной памяти осуществляется совокупностью программных модулей ОС и аппаратных схем процессора и включает решение следующих задач:
-
размещение данных в ЗУ разного типа, например, часть кодов программы в оперативной памяти, а часть – на диске,
-
выбор программ или их частей для перемещения из оперативной памяти на диск и обратно,
-
преобразование виртуальных адресов в физические.
В настоящее время все множество реализаций виртуальной памяти может быть представлено тремя классами;
-
страничная виртуальная память организует перемещение данных между памятью и диском страницами – частями виртуального адресного пространства, фиксированного и сравнительно небольшого размера,
-
сегментная виртуальная память предусматривает перемещение данных сегментами - частями виртуального адресного пространства произвольного размера, полученными с учетом смыслового значения данных,
-
сегментно - страничная виртуальная память использует двухуровневое деление: адресное пространство делится на сегменты, а затем сегменты делятся на страницы. Единицей перемещения данных здесь является страница.
Для временного хранения сегментов и страниц на диске отводится либо специальная область, либо специальный файл.
Типичная машинная команда требует 3-4 обращений к памяти и при каждом обращении происходит преобразование виртуального адреса в физический. Для уменьшения времени преобразования адресов во всех процессорах предусмотрен аппаратный механизм получения физического адреса по виртуальному.
-
Пространство виртуальных адресов. Механизм преобразования адресов
Система с сегментной организацией функционирует аналогично системе со страничной организацией. При каждом обращении к оперативной памяти выполняется преобразование виртуального адреса в физический, периодически происходят прерывания, связанные с отсутствием нужных сегментов в памяти. При необходимости освобождения памяти некоторые сегменты выгружаются.
При страничной организации виртуальное адресное пространство делится на страницы механически, без учета смыслового значения данных. В одной странице могут оказаться и коды команд, и переменные, и массив исходных данных программы.
Размер сегмента определяется с учетом смыслового значения содержащейся в них информации. Отдельный сегмент может представлять собой подпрограмму, массив данных и т. д.
Максимальный размер сегмента определяется разрядностью виртуального адреса. Например, при 32-разрядной организации процессора он равен 4 Гбайт. Сегменты не упорядочиваются относительно друг друга. Виртуальный адрес задается номером сегмента и линейным виртуальным адресом внутри сегмента.
При загрузке программы в оперативную память помещается только часть ее сегментов. Полная копия виртуального адресного пространства находится в дисковой памяти. Для каждого загружаемого сегмента ОС подыскивает непрерывный участок свободной памяти достаточного размера. Смежные в виртуальной памяти сегменты одной программы могут занимать в оперативной памяти несмежные участки. Если во время выполнения программы происходит обращение по виртуальному адресу, относящемуся к сегменту, который в данный момент отсутствует в памяти, то ОС организует загрузку нужного сегмента с диска. При отсутствии в памяти места, необходимого для загрузки сегмента, ОС выбирает сегмент на выгрузку.
На этапе создания вычислительного процесса во время загрузки программы в оперативную память ОС создает таблицу сегментов программы (аналогичную таблице страниц), в которой для каждого сегмента указывается:
-
базовый физический адрес сегмента в оперативной памяти,
-
размер сегмента,
-
правила доступа к сегменту,
-
признаки присутствия, модификации и обращения к данному сегменту.
Преобразование виртуального адреса в физический при сегментной организации памяти:
Рисунок 2 – Преобразование виртуального адреса в физический при сегментной организации памяти
Недостатки сегментного распределения:
-
при сегментной организации единицей передачи между памятью и диском является сегмент, имеющий большой объем (по сравнению со страницей). Однако, во многих случаях для работы программы не требуется загружать весь сегмент целиком, достаточно лишь несколько страниц. Аналогично, при отсутствии свободного места в памяти не стоит выгружать целый сегмент, когда можно обойтись выгрузкой нескольких страниц.
-
неэффективное использование пространства памяти. В процессе работы в памяти могут образоваться небольшие участки, в которые не может быть загружен ни один сегмент.
Преимущества сегментного распределения над страничным: возможность задания прав доступа к сегменту («только чтение», «чтение и запись» и т. д.)