- •1.Процессор
- •1.1. Арифметико-логическое устройство
- •1.2. Устройство управления
- •1.3. Основные принципы работы современных процессоров
- •1.4. Регистры процессора
- •1.4.1. Регистры общего назначения
- •1.4.2.Указатель команд
- •1.4.3. Сегментные регистры
- •1.4.4. Регистр состояния микропроцессора Intel 8086
- •1.4.5. Управляющие регистры
- •1.4.6. Прочие регистры
- •1.5. Представление команд в эвм
- •1.6. Основные стадии выполнения команд
- •2. СисТемная шина
- •2.1. Шины
- •2.2. Шина данных. Разрядность шины
- •2.3. Адресная шина. Разрядность шины
- •2.4. Шина управления
- •2.5. Цикл шины
- •2.6. Системные и локальные шины
- •2.7. Стандарты шин
- •3. Многоуровневая организация памяти
- •3.1. Регистровая память
- •3.2. Буферная память
- •3.2.1. Кэширование памяти
- •3.2.2. Принципы кэширования
- •3.2.3. Кэш прямого отображения
- •3.2.4. Наборно-ассоциативный кэш
- •3.2.5. Ассоциативный кэш
- •3.3. Оперативная память
- •3.3.1. Логическое распределение оперативной памяти
- •3.3.2. Стандартная оперативная память
- •3.4.Страничная и сегментная организация памяти. Виртуальная память
- •3.4.1. Режимы процессора
- •3.4.2. Организация памяти
- •3.4.3. Концепция виртуальной памяти
- •3.4.4. Страничная организация памяти
- •3.4.5. Сегментация памяти
- •3.4.6. Механизм замены (своппирования) страниц
- •3.5. Защита информации и памяти
- •3.6. Внешняя память
- •3.6.1. Классификация накопителей
- •3.6.2. Логическая структура дисков
- •3.6.3. Флоппи-диски
- •3.6.4. Сменные диски
- •3.6.5. Стриммер
- •3.6.6. Магнитооптические накопители
- •3.6.7.Накопители на гибких магнитных дисках Бернулли
- •3.6.8. Накопители на гибких магнитных дисках Zip
- •4. Система ввода-вывода
- •4.1.Принципы организации обменов данными
- •4.1.1. Структура с одним общим интерфейсом
- •4.1.2. Структура с каналами ввода-вывода
- •4.1.3. Основные параметры интерфейсов
- •4.1.4. Параллельная и последовательная передача данных
- •4.1.5. Методы передачи информации между устройствами эвм
- •4.2. Индивидуальные каналы
- •4.2.1. Основные типы каналов ввода-вывода
- •4.3. Ввод-вывод с отображением на память
- •4.4. Порты ввода-вывода
- •4.4.1. Параллельный порт
- •4.4.2. Последовательный порт
- •Адреса и прерывания последовательных портов
- •4.4.3. Развитие параллельного и последовательного интерфейсов
- •5. Организация прерываний
- •5.1 Механизм прерываний
- •5.1.1. Назначение системы прерываний
- •5.1.2. Порядок обработки прерывания
- •5.1.3. Характеристики системы прерывания
- •5.1.4. Приоритетное обслуживание запросов прерывания
- •5.1.5. Программное управление приоритетом
- •5.2. Организация системы прерываний микропроцессора х86
- •5.2.1. Аппаратные прерывания. Контроллер прерываний
- •5.2.2. Особенности обработки аппаратных прерываний
- •5.2.3. Внутренние прерывания
- •5.2.4. Таблица векторов прерываний
- •5.2.5. Процедуры прерываний
- •1. Пример выполнения упражнения тренинга на умение № 1
- •2. Пример выполнения упражнения тренинга на умение № 2
- •3.Пример выполнения упражнения тренинга на умение № 3
- •4. Пример выполнения упражнения тренинга на умение № 4
- •5. Пример выполнения упражнения тренинга на умение № 5
- •6. Пример выполнения упражнения тренинга на умение № 6
3.4.Страничная и сегментная организация памяти. Виртуальная память
3.4.1. Режимы процессора
32-разрядный процессор может работать в одном из двух режимов и переключаться между ними достаточно быстро:
Real Address Mode – режим реальной адресации (или просто реальный режим – Real Mode), полностью совместим с 8086. В этом режиме возможна адресация до 1 Мбайт физической памяти.
Protected Virtual Address Mode – защищенный режим виртуальной адресации (или просто защищенный режим – Protected Mode). В этом режиме процессор позволяет адресовать до 4 Гбайт физической памяти, через которую при использовании механизма страничной адресации могут отображаться до 64 Тбайт виртуальной памяти каждой задачи.
Существенным дополнением является Virtual 8086 Mode – режим виртуального процессора 8086. Этот режим является особым состоянием задачи защищенного режима, в котором процессор функционирует как 8086.
На одном процессоре в таком режиме могут параллельно исполняться несколько задач с изолированными друг от друга ресурсами. При этом использование физического адресного пространства памяти управляется механизмами сегментации и трансляции страниц. Попытки выполнения недопустимых команд, выхода за рамки отведенного пространства памяти и разрешенной области ввода/вывода контролируются системой защиты.
3.4.2. Организация памяти
Ячейка памяти – элементарная адресуемая единица запоминающего устройства.
Память для 32-разрядных процессоров 80х86 подразделяется на байты (8 бит), слова (16 бит), двойные слова (32 бит) и учетверенные слова (64 бит). Все пространство памяти разбивается на параграфы области из 16 смежных байт, начиная с нулевого адреса.
Более крупными единицами организации памяти являются страницы и сегменты.
Сегмент – единица памяти, которая в зависимости от режима работы процессора может быть 64 Кбайт, 1Мбайт или 4 Гбайта.
Страница памяти – единица памяти, обычно 4Кбайта.
Страничный сегмент – сегмент в памяти, разделенный на страницы.
Память может логически организовываться в виде одного или множества сегментов переменной длины (в реальном режиме – фиксированной). Кроме сегментации, в защищенном режиме возможно разбиение (Paging) логической памяти на страницы размером 4 Кбайта, каждая из которых может отображаться на любую область физической памяти. Начиная с 5-го поколения появилась возможность увеличения размера страницы до 4 Мбайт. Сегментация и разбиение на страницы могут применяться в любых сочетаниях. Сегментация является средством организации логической памяти на прикладном уровне. Разбиение на страницы применяется на системном уровне для управления физической памятью. Сегменты и страницы могут выгружаться из физической оперативной памяти на диск и по мере необходимости подкачиваться с него обратно в физическую память. Таким образом реализуется виртуальная память.
Применительно к памяти различают три адресных пространства: логическое, линейное и физическое. Основным режимом работы 32-разрядных процессоров считается защищенный режим, в котором работают все механизмы преобразования адресных пространств.
Логический адрес, также называемый виртуальным, состоит из селектора сегмента и эффективного адреса, называемого также смещением (offset).
Селектор сегмента хранится в старших 14 битах сегментного регистра (CS, DS, ES, SS, FS или GS), участвующего в адресации конкретного элемента памяти. По значению селектора из специальных таблиц, хранящихся в памяти, извлекается начальный адрес сегмента.
Эффективный адрес вычисляется по формуле
EA=Base+Index · Scale+Disp,
где Смещение (Displacement или Disp) – 8-, 16- или 32-битное число, включенное в команду;
База (Base) – содержимое базового регистра;
Индекс (Index) – содержимое индексного регистра;
Масштаб (Scale) – множитель (1, 2, 4 или 8), указанный в коде инструкции.
Блок сегментации транслирует логическое адресное пространство в 32-битное пространство линейных адресов. Линейный адрес образуется сложением базового адреса сегмента со смещением.
Базовый адрес – адрес, относительно которого указываются другие адреса в сегменте данных.
Смещение – величина, добавляемая к базовому адресу для получения исполнительного адреса.
Базовый адрес сегмента в реальном режиме образуется умножением содержимого используемого сегментного регистра на 16 (как и в 8086). В защищенном режиме базовый адрес загружается из дескриптора, хранящегося в таблице, по селектору, загруженному в используемый сегментный регистр.
32-битный физический адрес памяти образуется после преобразования линейного адреса блоком страничной переадресации. Он выводится на внешнюю шину адреса процессора. В простейшем случае (при отключенном блоке страничной переадресации) физический адрес совпадает с линейным. Включенный блок страничной переадресации осуществляет трансляцию линейного адреса в физический страницами размером 4 Кбайт (для старших поколений процессоров также возможны страницы размером 2 или 4 Мбайт). Блок обеспечивает расширение разрядности физического адреса процессоров шестого поколения до 36 бит.
Шина адреса разрядностью 32/64 бита позволяет адресовать 4/64 Гбайта физической памяти, но в реальном режиме доступен только 1 Мбайт младших адресов.