Распределение адресного пространства ЭВМ

advertisement
Распределение адресного пространства ЭВМ
Адресное пространство – число адресов, которое может формировать процессор. Размер
определяется разрядностью шины адреса. Совсем необязательно, что все адреса будут
соответствовать реально существующим ячейкам памяти. В то же время адресное
пространство показывает максимально возможное число ячеек памяти.
В зависимости от конфигурации ЭВМ распределение адресного пространства может
различаться. Однако существуют некоторые правила его распределения.
В области данных храниться 256 указателей векторов прерываний. Область данных BIOS
- 100 адресов. Сама BIOS является частью ОС и храниться в специальных ПЗУ. В нем
хранятся разнообразные данные которые используются программами BIOS в своей
работе. Загрузка MS DOS, управление стандартной аппаратурой
адрес
00000h
векторы прерываний
00400h
00500h
область данных BIOS
ОС MS DOS
Свободная память
А0000h
AFFFF
Графический
видеобуфер
Свободная область
B8000
8FFFF
FFFFF
100000
текстовый видеобуфер
ПЗУ расшир. BIOS
Свободная область
ПЗУ BIOS
расширенная память
размер
1 кбайт
256
байт
64
32
32
64
128
64
В области данных BIOS размещается входной буфер (клавиатуры) в который помещены
коды нажимаемых клавиш . адрес видеоадаптера и адрес портов ввода – вывода. Днные,
которые характеризуют текущее состояние видеосистемы. Ячейки памяти для отсчета
системного времени. Область данных BIOS заполняется информацией в процессе
начальной загрузки, а затем модифицируется по мере необходимости. Начиная с адреса
500 размещается ОС MS DOS. В зависимости от конфигурации она занимает несколько
десятков килобайт. MS DOS записывается в память автоматически в процессе начальной
загрузки.
До адреса А0000 размещается свободная область, предназначенная для загрузки
системных и прикладных программ.
В начале загружаются резидентные программы (постоянно находящиеся в памяти),
пользовательские программы.
Начиная с А0000 до FFFFF распределяется старшая область памяти размером 384
килобайта. Распределение этой области показано.
Первые 64 килобайта отводятся для адресации графическому видеобуферу графического
адаптера.
Сам видеоадаптер представляет отдельную плату, которая подключается к шине и имеет
собственное ОЗУ, которое не имеет никакого отношения к ОП ЭВМ. Однако его схемы
управления построены на адреса диапазона А0000 – AFFFF.
Для того чтобы вывести на экран графическое изображение нужно записать его в
видеобуфер по этим адресам.
Аналогичным образом осуществляется связь с текстовым видеоадаптером. Здесь же
находится адреса по которым располагается ПЗУ BIOS (64 килобайта) еще 64 отданы
ПЗУ расширения BIOS которое предназначено для хранения служебных программ
обслуживания дисков и графических видеоадаптеров.
В защищенном режиме работы память не ограничивается 1 мб а может иметь
максимальный размер 4 гб. Поэтому начиная с области (*)
Способы обмена информацией в ЭВМ.
Во время работы ВМ постоянно производится обмен информацией между узлами и
элементами ЭВМ. Причем главным элементом является процессор. Наиболее
распространенной шиной для обмена информацией является общая шина.
Процесс передачи информации от МП и устройствами называется записью. Передача от
устройств к МП – чтение.
Совокупность унифицированных линий и шин, связывающих устройства между собой а
также протоколы (алгоритмы) обмена информацией по этим линиям и шинам называется
интерфейсом.
Интерфейс и общая шина предполагают соединение одноименных входов и выходов всех
устройств входящих в систему общими проводниками.
Внешние устройства подключаются к интерфейсу через контроллеры (схемы
согласования)
Рисунок
В состав контроллера входят 3 узла
1. дешифратор адреса (который подключается к шине адреса системы). Дешифратор на
своем выходе формирует сигнал, который устанавливает вешнее устройство в активное
состояние, если на его входе установлена комбинация, соответствующая адресу внешнего
устройства
2. регистр данных. Буферный регистр, через который осуществляется обмен данными
между внешним устройством и системной шиной данных.
3. регистр состояния. Регистр, отдельные разряды которого характеризуют внутреннее
состояние внешнего устройства. Они формируют информацию о готовности внешнего
устройства к обмену.
При организации обмена необходимо решить ряд задач которые обеспечивают
правильный обмен информацией между устройствами:
1. Обеспечить связь только с теми устройствами, с которыми требуется произвести
обмен (принципы адресности).
2. согласовать скорость обмена, т к скорости работы разных устройств сильно
различается.
3. синхронизация обмена. Правильное определение моментов начала и окончания
передачи информации.
4. обеспечить максимальную скорость обмена.
Три основных способа обмена информацией:
1. программный ввод – вывод (синхронный, асинхронный)
рисунок
это наиболее простой способ обмена информацией. Всеми действиями по обмену
управляет МП. Перед началом операции обмена процессор опрашивает внешнее
устройство о готовности обмена.
Если устройство готово, то производится обмен (чтение или запись регистра данных).
Если устройство не готово, то процессор должен ждать, периодически повторяя опрос
о готовности.
Недостаток этого способа особо сильно проявляется. Большую часть времени CPU
должен ждать готовности устройства.
Рассмотрим операцию обмена с принтером, не имеющий собственной памяти и со
скоростью 10 символов в секунду.
Рисунок
Поскольку принтер не имеет памяти то происходит посимвольный вывод на печать.
Большую часть времени процессор вынужден ждать готовности устройства. Слово из
10 букв будет печататься 1 секунду (хотя время передачи кодов в регистр данных – 10
мкс все остальное время - 0.99999 с CPU вынужден ждать готовности к обмену.
Пример показывает, что программный ввод – вывод является неэффективным.
2. ввод – вывод по прерыванию.
Рисунок
Для повышения производительности CPU его нужно освободить от опроса устройства
готовности. Эта задача возлагается на контроллер внешнего устройства. Получив команду
ввода – вывода контроллер передает ее во внешнее устройством следит за временем ее
выполнения. По окончанию действия контроллер формирует и посылает в CPU сигнал
требования прерываний. CPU приостанавливает работу на основной программе и
обслуживает это прерывание, т е CPU передает в котроллер код очередного символа,
после этого процессор возвращает ее к выполнению основой программы. Далее эти
действия повторяются
Рисунок
В программе вывода по прерываниям отсутствует время ожидания готовности принтера.
Как только принтер готов, контроллер вырабатывает сигнал о прерывании – CPU
прерывает основную программу, передает код и продолжает работу.
3. прямой доступ к памяти (ПДП). Используется когда требуется произвести обмен
между устройствами большими массивами информации ( сохранение данных на
диск, запись на диск с диска). Обычно, если решать эти задачи обычным способом,
то это происходит через МП.
Рисунок
Архитектурные особенности 32-разрядных процессоров в реальном режиме
1. CPU 32 – разр. Intel 80386 85 г.
2. CPU 32 – разр. Intel 80486 89 г.
3. 98 г. Pentium
Современные CPU могут работать в 4 режимах.
Не смотря на то, что 32 разрядные CPU насчитывают несколько десятков регистров в
реальном режиме работы участвуют значительно меньшее число.
Регистры данных
биты
EAX
31
16
15
AH
AX
0
AL
аккумулятор
EBX
BH
BX
BL
базовый регистр
ECX
CH
CX
CL
счетчик
EDX
DH
DX
DL
регистр данных
Регистры указатели
ESI
SI
индекс источника
EDI
DI
индекс приемника
EBP
BP
указатель базы
ESP
SP
указатель стека
Сегментые регистры
CS
регистр сегмента команд
DS
регистр сегмента данных
ES
регистр дополнительного
сегмента данны
FS
GS
регистр сегмента стека
SS
Прочие регистры
EIP
IP
EFLAGS
указатель команд
регистр флагов
Е – расширенный (32 – разрядные регистры)
Регистр флагов несмотря на то, что стал 32 – разрядным используется в нем ишь 18
младших бит.
Арифметические флаги:
CF – перенос
PF – четность
AF – вспомогательный перенос
ZF – ноль
SF - знак
OF – переполнение
Флаг задачи, флаг рестарта, флаг виртуального режима, 2-х битовое поле привилегий
ввода вывода
386 – подключение команд 386 – го CPU
486
586
Download