- •«Санкт-Петербургский государственный электротехнический университет «лэти» им.В.И.Ульянова (Ленина)» (сПбГэту)
- •Архитектура компьютера
- •Оглавление
- •Основные понятия архитектуры и организации компьютеров.
- •1.1. Состав компьютера
- •1.2. Виды (классы) компьютеров
- •1.3. Принцип программного управления и машина фон Неймана
- •1.4. Понятия архитектуры, организации и реализации компьютера
- •1.5. Многоуровневая организация компьютера
- •1.6. Понятие семантического разрыва между уровнями
- •1.7. Организация аппаратных средств вм
- •Представление и обработка данных в вм
- •Целые числа
- •Представление и обработка вещественных чисел.
- •Логические операции над битовыми наборами
- •Представление и обработка символов.
- •Представление видеоинформации и аудиоинформации.
- •Видеоинформация.
- •Аудиоинформация
- •Организация процессора и основной памяти вм
- •3.1. Типовая структура процессора и основной памяти
- •3.2. Основной цикл работы процессора
- •3.3. Организация процессора и памяти в архитекуре Intel x86.
- •3.3.1. Программно доступные регистры процессора
- •3.3.2. Организация стека в архитектуре Intel х86
- •3.3.3. Организация выполняемых программ в ms dos
- •3.3.4. Режимы адресации памяти в архитектуре Intel х86
- •1. Регистровая адресация
- •2. Непосредственная адресация
- •3. Прямая адресация
- •4. Косвенная адресация
- •7. Индексная адресация с масштабированием
- •8. Адресация по базе с индексированием и масштабированием
- •3.3.5. Краткая характеристика системы команд процессоров Intel х86
- •3.3.6 .Арифметическая обработка чисел с использованием математического сопроцессора
- •Организация прерываний в процессорах Intel x86
- •Эволюция микроархитектуры Intel x86
- •Управление выполнением команд в компьютерах.
- •Аппаратный способ формирования управляющих сигналов
- •Микропрограммный способ формирования управляющих сигналов
- •Компьютеры с сокращенным набором команд
- •Организация памяти в компьютере
- •6.1. Назначение и основные характеристики памяти
- •6.2. Основные среды хранения информации
- •6.3. Методы доступа к данным.
- •6.4. Память с произвольным доступом (ппд)
- •6.5. Блочная организация основной памяти.
- •6.6. Постоянные запоминающие устройства (пзу - rom)
- •6.7. Ассоциативные запоминающие устройства (азу)
- •6.8. Иерархическая система памяти
- •Организация кэш-памяти.
- •Прямое отображение блоков оп на кэш-память
- •Наборно-ассоциативное отображение блоков оп на Кэш-память
- •6.10. Организация виртуальной памяти
- •Организация виртуальной памяти в Intel 80386 и более старших моделях.
- •Защита памяти в процессоре Intel 80386
- •Организация работы с внешней памятью
- •7.1. Типы, виды, свойства дисковых накопителей информации.
- •7.2. Магнитные дисковые накопители.
- •7.3. Основные физические и логические параметры жмд
- •7.4. Контроллеры жестких дисков
- •Логическое хранение и кодирование информации
- •Интерфейсы жестких дисков
- •Работа накопителя
- •Внешняя память на cd и dvd дисках.
- •Принципы организации raid массивов
- •Основные принципы построения raid массивов
- •Одиночные уровни raid
- •Составные уровни raid массивов
- •Сравнительные результаты
- •Системные и локальные шины
- •9.1. Общие положения и требования к шинам
- •9.2. Основные виды, характеристики и параметры шин
- •9.3. Стандарты шин
- •Организация системы ввода-вывода в вм
- •10.1. Назначение и основные требования к системе ввода-вывода вм
- •10.2. Архитектура систем ввода-вывода
- •10.3. Способы выполнения операции передачи данных
- •Синхронная передача данных
- •Ввод-вывод по программному прерыванию
- •Ввод-вывод по аппаратному прерыванию (прямой доступ к памяти)
- •10.4. Структуры контроллеров ву для различных режимов передачи данных
- •Программные средства управления вводом-выводом (пс увв)
- •Состав пс увв
- •11.2. Основные компоненты процедуры управления ввода-вывода общего вида
- •11.3 Состав и реализация устанавливаемого драйвера символьного типа
- •Список литературы
- •Приложения
- •Регистры ммх
- •Типы данных
- •Команды ммх
- •П2. Краткое введение в программирование на языке Ассемблера
- •1. Директивы задания данных
- •2. Директивы сегментации программы
- •3. Директивы группирования.
- •4. Порядок размещения сегментов.
-
Организация виртуальной памяти в Intel 80386 и более старших моделях.
Эти процессоры могут работать в трех режимах:
-
Реальный режим – работает как быстрый процессор i8086, особенно с 32-битными данными, и имеет адресное пространство памяти до 4Гб.
-
Защищенный режим – использует виртуальную организацию памяти, многозадачную работу, развитую систему защиты памяти (программ и данных).
-
Реализация виртуальной машины i8086 – используется для совместимости с процессором i8086, при этом процессор эффективно реализует программы, написанные для процессора i8086
В защищенном режиме размер виртуальной памяти C ВАП =246 б = 64Гб. Это достигается благодаря разбиению ВАП на 16К сегментов, максимальный размер каждого из которых равен 4 Гб.
При организации виртуальной памяти используется три вида адресов.
-
Логический адрес ЛА ВАП.
-
Физический адрес ФА ФАП.
-
Линейный адрес – представляет собой объединение базового адреса сегмента и смещения в пределах сегмента.
Любое описание сегмента состоит из двух частей: программно-доступной, называемой селектором сегмента и размещаемой в одном из сегментных регистров, и скрытой, называемой дескриптором сегмента и находящейся в одной из специальных структур в ОП, называемых таблицами дескрипторов. Считается, что дескриптор после выборки размещается в скрытой части регистра сегментов, находящейся в памяти (рис. 6.10).
Доступная (селектор) Скрытая (дескриптор)
15 0 63 0
CS БАС Граница Атрибуты - это дескриптор сегмента
(БАС – базовый адрес сегмента)
DS
GS
Сегментный
регистр Индекс TI RPL (Поля селектора)
Селектор 15 … 3 2 1 0 (Номера битов)
Рис. 6.10
Индекс задает смещение строки с описанием (дескриптором) данного сегмента в таблице дескрипторов.
Поле TI определяет таблицу дескрипторов, на которую ссылается селектор (0 – глобальная, 1 – локальная ).
Поле RPL (0 - 3) - запрашиваемый уровень привелегий (инициатор запроса – программа, которая хочет получить доступ к ресурсам).
Содержание селекторов сегментов формируется операционной системой при загрузке задачи.
Структура дескриптора сегмента (рис. 6.11)
31 …24 23 22 21 20 19 … 16 15 14..13 12 11.. 9 8 7 … 0
База G D 0 AVL Граница P DPL S тип А База
База сегмента [0-15] Граница сегмента [0 -15]
Рис 6.11
Основные поля сегмента размещены в различных частях дескриптора: 32-битная база сегмента размещена в трех частях и определяет его место внутри 4-Гбайтного линейного адресного пространства, 20-битная граница сегмента размещена в двух частях и определяет его длину, остальные биты дескриптора образуют поле атрибутов. Длина сегмента, в зависимости от бита дробности (G), задается либо в байтах, либо в страницах: при G=0 – в байтах, а при G= 1 – в страницах (С = 4Кб) и объем будет 220 * 215 = 232 (4Гб).
Бит D задает тип данных, размещенных в сегменте:
D = 0 – 16-битные данные, D = 1 – 32-битные данные.
AVL – бит, предоставляемый в распоряжение пользователя (available).
Бит P – бит присутствия: 0 – на диске, 1 – в оперативной памяти, биты DPL – уровень привилегий дескриптора (Descriptor Privilege Level), обеспечивающий защиту доступа к сегменту..
При доступе к сегменту запрашиваемый уровень привилегий RPL или текущий уровень привилегий CPL (соответствует уровню привилегий дескриптора кода выполняемой сейчас программы) должны быть больше DPL (в логическом смысле; для сравнения их числовых значений отношение должно быть меньше).
Бит S – бит режима сегмента: пользовательский или системный (User / Supervisor).
Биты типа говорят, является сегмент программой или данными и определяют режим доступа:
|
Биты |
11 |
10 |
9 |
|
Данные |
1 |
E |
W |
|
Код |
0 |
C |
R |
R – только чтение; W – только запись; E – бит расширения при загрузке сегмента (1 – при увеличении адресов, 0 – при уменьшении адресов); бит С – признак согласования сегментов (уровень привилегий, с которыми обращается к данному сегменту, всегда приравнивается к уровню данного сегмента – в моделях процессоров выше i386 он существует только для поддержки).
Бит А – бит обращения к сегменту, устанавливается при обращении к сегменту и через некоторое время сбрасывается операционной системой (обеспечивает дисциплины замещения сегментов).
Алгоритм преобразования виртуального адреса в физический адрес (рис. 6.12).
База Виртуальный
или
логический

+
Смещение адрес 
(ЛА)


+
* Индекс



Коэффициент
масштабирования (1,2,4,8)

ЛА селектор ЛА смещения

Сегментная трансляция
Линейный адрес

0
PG&PE
1

DIR PAGE offset
Страничная трансляция
Физический адрес ФА
Рис. 6.12
Схема выполнения сегментной трансляции (рис. 6.13)
I этап
Сегментная трансляция – это преобразование логического адреса (селектор сегмента и смещение сегмента из команды программы) в линейный адрес. На основании селектора происходит выборка дескриптора из локальной или глобальной таблицы дескрипторов и запись его в скрытую часть сегментного регистра. В результате формируется линейный адрес сегмента (ЛАС) по правилу ЛАС = БАС + смещение.
II этап
Страничная трансляция (Рис.6.14) – это преобразование линейного адреса в физический адрес. Если используется реальный режим или нет разбиения сегмента на страницы, то этот этап пропускается и ФА = ЛАС.
Каталог Страница Смещение Линейный адрес
(10) (10) (12)
PG PE TC1 TC2
CR0
+ + + ФА
dir page
CR3 База адреса каталога














Рис.6.14
CRi – i-й ( i =0..3) регистр управления, PG – бит признака страничной организации сегмента, PE (Protect Enable) – признак установки защищенного режима; (CR0. PG)&(CR0. PE) = 1 - признак страничной трансляции. ТС1 – таблица каталогов, ТС2 – таблица страниц
Размер ФАП = 1К каталогов* 1К страниц * 4К смещение = 1k x 1k x 4k= 4Gb.
Формат строки таблицы страниц:
|
31 12 |
11 |
10 7 |
6 |
5 |
4 3 |
2 |
1 |
0 |
|
Адрес страни-чного кадра |
AVL |
0 |
D |
A |
00 |
U/S |
R/W |
P |
AVL – бит, предоставляемый в распоряжение пользователя, бит P – бит присутствия страницы, бит D – бит мусора, бит А – бит обращения к странице, бит U/S (User / Supervisor) – бит режима использования страницы: пользовательский или системный, бит R/W (Read/Write) – бит доступа (по чтению/записи).
