- •История развития архитектуры эвм
- •Нулевое поколение (1492 – 1945)
- •Первое поколение (1937-1953)
- •Второе поколение (1954 - 1962)
- •Третье поколение (1963-1972)
- •Четвертое поколение (1972-1984)
- •Пятое поколение (1984-1990)
- •Шестое поколение (1990-)
- •Концепция машины с хранимой в памяти программой
- •Принцип двоичного кодирования
- •Принцип программного управления
- •Принцип однородности памяти
- •Принцип адресности
- •Типы структур вычислительных машин и систем
- •Структуры вычислительных машин
- •Структуры вычислительных систем
- •Процессор. Структурная схема процессора. Понятие о микропрограммном управлении Структурная схема процессора
- •Алгоритмы выполнения операций. Микропрограммы
- •Синтез микропрограммного автомата. Синтез устройства управления
- •Обратная структурная таблица
- •Управляющие автоматы с программируемой логикой
- •Адресная структура памяти
- •Принципы построения устройств памяти
- •Адресная, ассоциативная и стековая организация памяти
- •Адресная память
- •Ассоциативная память
- •Стековая память
- •Команды процессора
- •Методы повышения производительности работы процессора
- •1.Конвейеризация (конвейер операций)
- •2. Процессоры с risc – архитектурой
- •3. Организация кэш-памяти
- •3.1. Техническая идея кэш-памяти
- •3.2. Архитектура кэш-памяти
- •3.2.1. Кэш память с прямым отображением
- •3.2.2. Полностью ассоциативная кэш память
- •3.2.3. Частично ассоциативная кэш память
- •3.3 Алгоритм замещения строк в кэш памяти
- •3.4 Методы записи в кэш память
- •Микропроцессор Intel 80i86
- •Страничная организация памяти
- •Буфер ассоциативной трансляции
- •Организация виртуальной памяти
- •Встроенные средства защиты информации в микропроцессорах фирмы intel
- •1. Концепции и компоненты защищенного режима
- •Независимость подготовки пользовательских программ и их защита от взаимных помех.
- •Защита программ операционной системы от помех при сбоях в программах пользователей.
- •Защита программ ос верхнего уровня от помех при сбоях в программах ос нижнего уровня.
- •Защита программ от отрицательных последствий при программных сбоях.
- •Защита целостности функционирования вычислительной системы.
- •2. Информационная основа работы механизма защиты
- •3. Уровни привилегий
- •Концепция уровней привилегий.
- •Задание уровней привилегий.
- •Проверка корректности использования отдельных команд.
- •Защита данных.
- •4.3 Защита программ.
- •Принципы организации системы прерывания
- •Программируемый контроллер прямого доступа к памяти
- •Лабораторная работа №1
- •Размещение байт и слов в памяти.
- •Лабораторная работа №2
- •Список операций
Страничная организация памяти
Страничный диспетчер памяти, имеющийся в микропроцессоре, обеспечивает следующую возможность:1)представляет пользователю возможность работать с большим адресным пространством;
2)обеспечивает защиту ОС и программное обеспечение пользователя;
3)реализует быструю трансляцию адресов.
Линейное адресное пространство памяти объемом 4 Гб при страничной организации разбито на 220 страниц объемом по 4 кб каждая страница. Фиксированный размер всех страниц позволяет загружать любую требуемую виртуальную страницу в нужную физическую страницу.
Страничная трансляция включается в защищенный режим установкой в единицу 31-го разряда нулевого регистра управления CRQ и выключается сбросом этого разряда в ноль.
При страничной организации сегмент разбивается на отдельные разделы, число которых может достигнуть до 210.
В свою очередь каждый раздел может содержать до 210 страниц объемом по 4 кб каждая. Начальные (базовые) адреса страниц каждого раздела хранятся в соответствующей таблице страниц, содержащейся в памяти. Обращение к этой таблице производится с помощью каталога, в котором содержатся начальные адреса таблиц страниц для всех разделов. Таким образом, страницы могут быть рассеяны по разным частям памяти, а их размещение в памяти определяется содержимым каталогов разделов и таблиц страниц.
Л инейный 32-ый адрес при страничной организации памяти является исходной информацией для формирования физического адреса с помощью каталога разделов и таблиц страниц. При этом линейный адрес рассматривается как совокупность трех полей.
TABLE – указывает относительный адрес таблицы страниц выбираемого раздела в каталоге.
PAGE – задает относительный адрес требуемой страницы данного раздела.
BYTE – содержит относительный адрес выбираемого на странице байта.
Каталог занимает одну страницу памяти, где для каждого раздела содержатся 32-разрядные указатели входа в таблицу страниц этого раздела. Каждая из таблиц страниц также занимает одну страницу памяти, где для каждой страницы дается 32-хразрядный указатель входа в эту страницу.
Указатели входа в раздел и в страницу имеют одинаковый формат.
Каждый указатель содержит информацию, определяющую порядок использования страниц. Старшие 20 разрядов занимает базовый адрес. Остальные разряды имеют следующий смысл.
Р – бит присутствия. Если Р=1, то разрешается использование таблицы страниц, если Р=0, то такое использование запрещается. При Р=0 попытка обращения к соответствующему разделу или странице вызывает прерывание из-за отсутствия нужной страницы в оперативной памяти. После загрузки нужной страницы в память, бит Р устанавливается в «1» и в этом случае обращение к данной странице становится возможной. Это нужно для того, чтобы ОС знала, где находится страница.
R/W - бит чтения/записи.
U/S - бит пользователь/супервизор.
Эти два бита определяют право доступа к соответствующей странице или разделу для программ пользователя. Программа пользователя обычно имеет самый низкий уровень привилегий равный 3. Если осуществляется запрос с уровнем привилегий равным 3, то при значении U/S = 0 программе пользователя запрещается доступ к разделу или странице.
При U/S = 1 обращение разрешается, но при этом учитывается значение бита R/W.
Если R/W = 0, то программе пользователя разрешается только чтение раздела или страницы.
Если R/W = 1, то разрешается как чтение, так и запись. Если осуществляются запросы с большим уровнем привилегий (0, 1 и 2), то допускается запись и чтение разделов и страниц при любых значениях ‘1’ и ‘2’ разрядов.
Такие уровни привилегий имеет ОС.
А - бит доступа. Этот бит автоматически устанавливается в «1» микропроцессором при обращении к данному разделу или странице для записи или чтения.
D – бит «мусора». В указателе кадра страницы этот бит устанавливают в «1» при записи на данную страницу. Для указателей таблиц страниц значение бита D является неопределенной.
Биты D и A используются ОС, поддерживающей виртуальную память, для определения в ОЗУ тех разделов и страниц, которые подлежат удалению из ОЗУ, поскольку к ним долгое время не было обращения. Проверку и сброс этих разрядов выполняет ОС. Проиллюстрируем процесс вычисления физического адреса с помощью следующей схемы:
Содержимое CR3 (регистр управления) задает старшие 20 разрядов базового адреса для входа в каталог раздела. Для получения физического адреса строки каталога разделов к этим 20 разрядам добавляется 10-тиразрядное поле TABLE линейного адреса и 2 нулевых младших разрядов. По полученному таким образом адресу обращаются к каталогу разделов, откуда выбирают указатели входа в таблицу страниц. Этот указатель содержит 20-разрядный базовый адрес таблицы страниц. К этим 20 разрядам добавляется поле PAGE и 2 нулевых младших разряда. В результате получается адрес строки таблицы страниц. В этой строке находится указатель входа в страницу, содержащий 20-разрядный базовый адрес страницы. Добавление к этому базовому адресу 12-тиразрядного поля BYTE дает физический адрес байта.
Существенное сокращение времени преобразования адресов в микропроцессоре достигается путем внутренней ассоциативной памяти, которая называется «буфером ассоциативной трансляции» и обозначается TLB.