Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Системный модуль ROM BIOS



Системный модуль ROM BIOS (System ROM BIOS) обеспечивает программную поддержку стандартных устройств PC, конфигурирование аппаратных средств, их диагностику и вызов загрузчика операционной системы. Системный модуль ROM BIOS в значительной степени привязан к конкретной реализации систем­ной платы, поскольку именно ему приходится программировать все микросхе­мы чипсета системной платы. Функции BIOS разделяются на следующие груп­пы:

♦ инициализация и начальное тестирование аппаратных средств — POST;

♦ настройка и конфигурирование аппаратных средств и системных ресурсов —
CMOS Setup, см. 6.6;

♦ автоматическое распределение системных ресурсов — PnP BIOS;

♦ идентификация и конфигурирование устройств PCI — PCI BIOS, см. 14.7;

♦ начальная загрузка (первый этап загрузки операционной системы) — Boots­
trap Loader;

♦ обслуживание аппаратных прерываний от системных устройств (таймера,
клавиатуры, дисков) — BIOS Hardware Interrupts;

♦ отработка базовых функций программных обращений (сервисов) к систем­
ным устройствам — ROM BIOS Services;

♦ поддержка управляемости конфигурированием — DMI BIOS;

♦ поддержка управления энергопотреблением и автоматического конфигури­
рования - АРМ и ACPI BIOS.

Все эти функции (или их часть) исполняет системный модуль BIOS, хранящий­ся в микросхеме ПЗУ или флэш-памяти на системной плате. Большинство сер­висных функций выполняется в 16-битном режиме, хотя некоторые новые функции могут иметь и альтернативные вызовы для 32-битного исполнения.

Системный модуль BIOS должен обслуживать по вышеуказанным функциям все компоненты, установленные на системной плате: процессор, контроллер па­мяти (ОЗУ и кэш), стандартные архитектурные компоненты (контроллеры прерываний и DMA, системный таймер, системный порт, CMOS RTC), кон­троллер клавиатуры, а также набор стандартных периферийных контроллеров и адаптеров, даже если они и не установлены на системной плате. В этот набор входят графические адаптеры CGA и MDA, порты СОМ и LPT, контроллер НГМД, диски АТА (теперь уже обязательно двух каналов). Если на системной плате установлены дополнительные компоненты, например контроллер SCSI, графический адаптер SVGA, адаптер локальной сети, то их поддержка тоже должна быть в системном модуле BIOS.

Микросхема с системным модулем BIOS приписана к пространству памяти, и ее положение определяется двумя свойствами процессоров х86:

♦ После аппаратного сброса процессор выполняет первую инструкцию по ад­
ресу начала последнего параграфа физически адресуемой памяти: 8086/88
по адресу FFFFOh; 80286 и 386SX - по адресу FFFFFOh; 386DX и выше -
по адресу FFFFFFFOh (правда, Р6 можно сконфигурировать и на старт по
адресу FFFFOh).

♦ В стандартном реальном режиме процессору доступна лишь память с адре­
сами в пределах О-FFFFFh, следовательно, программный код и данные BIOS
должны находиться в этом диапазоне. Векторы прерываний, ссылающиеся
на сервисы BIOS, в реальном режиме могут адресоваться только к памяти
в диапазоне адресов 0-OFFFFFh (0-10FFEF при открытом вентиле Gate
А20).

По этим соображениям в PC AT область системного модуля BIOS располагает­ся под границей первого мегабайта памяти по адресам FOOOO-FFFFFh, занимая 64 Кбайт (целый сегмент). Копия этого образа на машинах 80286 и 386SX рас­полагается по адресам FFOOOO-FFFFFFh под границей 16-го мегабайта. На машинах 386DX и выше копия образа BIOS находится в области FFFFOOOO-FFFFFFFFh, но для процессоров Р6 она, в принципе, необязатель­на. Тем не менее, ее продолжают использовать (даже, например, в чипсете i820). Кроме того, для совместимости с АТ/286 на некоторых платах могла присутст­вовать и дополнительная копия BIOS по адресам FFOOOO-FFFFFFh, если она разрешена настройкой CMOS Setup (в этом случае невозможно использовать более 16 Мбайт ОЗУ). В машинах XT системный модуль BIOS был компакт­ным (8 Кбайт) и размещался в области FEOOO-FFFFFh. Когда появились мик­росхемы ПЗУ емкостью 128 Мбайт, на некоторых машинах AT системный модуль BIOS стал занимать область EOOOO-FFFFFh, но вскоре от этого «рас­ширения» отказались, поскольку оно сокращало размер доступной верхней па­мяти (см. 4.2). Современный системный модуль BIOS имеет типовой объем 128 или 256 Кбайт, который проецируется в «окно» размером 64 Кбайт страницами. Это возможно, поскольку во время начальных стадий теста POST и выполне­ния утилиты CMOS Setup не требуется поддержки всех сервисов BIOS, а в ра­бочем режиме, наоборот, не нужен программный код POST и Setup.

Поскольку содержимое флэш-BIOS может быть изменено прямо в компьютере, возникает опасность полной потери работоспособности компьютера при занесе­нии некорректной «прошивки» или под действием вируса. С разрушенным модулем BIOS компьютер не может запуститься. Для предотвращения таких си­туаций применяют различные способы защиты.

 




Поиск по сайту:

©2015-2020 studopedya.ru Все права принадлежат авторам размещенных материалов.