Компьютерные системы
Все об аппаратных средствах ПК
Сайт управляется системой uCoz
НА ГЛАВНУЮ
ПК
Процессоры
ОЗУ и ПЗУ
Системные платы
BIOS
⇒Инициализация
⇒Ресурсы BIOS
⇒Распределение памяти
⇒Программа POST
⇒Цифровая индикация ошибок
⇒Загрузка операционной системы
⇒Настройка BIOS
⇒Стандартная конфигурация
⇒Установка винчестера
Блоки питания
Устройства ввода
Интерфейсы
Магнитные диски
Звук
Компакт-диски
Видеоадаптеры
Мониторы
Сети

Ресурсы BIOS


Программы, находящиеся в BIOS, используют ряд ресурсов компьютера для хранения данных, полученных в ходе инициализации оборудования, тестирования и для работы служебных подпрограмм. На рис. показано распределение оперативной памяти компьютера PC.
Наиболее важная служебная зона адресов размером в 1 Кбайт начинается с нулевого адреса. В ней находятся векторы аппаратных и программных прерываний, с которыми работают процессор и программное обеспечение. Сами векторы представляют собой инструкцию безусловного перехода на подпрограмму обработки прерывания. Каждый вектор занимает 4 байта, соответственно, всего может быть всего 256 прерываний.
Распределение адресного пространства ОЗУ для компьютера IBM PC
С прерываниями связана одна из проблем персональных компьютеров, которая осложняет жизнь системным программистам. Дело в том, что зону векторов, расположенную с нулевого адреса, используют как сами процессоры семейства х8б, так и различные устройства компьютера, в чем виноваты разработчики IBM PC. Вначале это не особенно осложняло жизнь программистам, поскольку у процессора было не так много аппаратных прерываний, но в дальнейшем, по мере совершенствования процессоров, 256 векторов стало маловато.
Ниже, только для иллюстрации использования таблицы векторов приведено назначение нескольких прерываний компьютера IBM PC AT (для современных процессоров назначение ряда векторов несколько иное):
  • INT 00h — деление на 0;
  • INT 01h — пошаговый режим;
  • INT 02h — немаскируемое прерывание;
  • ТХТТ ATI INT ОЗп — точка останова;
  • INT 04h — переполнение;
  • INT 08h — таймер;
  • INT 09h — клавиатура;
  • INT 33h — поддержка мыши;
  • INT 4Ah — будильник пользователя.

После зоны векторов прерываний идет область, называемая BIOS Data Area, где размещаются данные, полученные в ходе тестирования оборудования, буфера системных устройств, например буфер клавиатуры, и различные служебные регистры. Эта область данных имеет размер не менее 256 байтов и начинается с адреса 0000:0400h или 0040:0000h. Назначение наиболее интересных для пользователя зон в области BIOS Data Area приведено в табл.
Назначение ячеек BIOS Data Area

Адрес

Размер, байт

Назначение

040:000

4x2

Базовые адреса портов СОМ 1— COM4

040:008

3x2

Базовые адреса портов LPT1— LPT3

040:010 040:017

2 39

Установленное оборудование Область флагов и буфер клавиатуры

040:049

1

Текущий видеорежим

040:04А

2

Ширина экрана (число колонок символов)

040:050

16

Позиция курсора (младшая половина — колонка, старшая — ряд)

040:060

2

Размер курсора (в младшем байте — последняя строка, в старшем — первая)

040:067

5

Область данных POST

Для работы с видеоадаптером BIOS использует область видеопамяти, расположенную выше 640 Кбайт. Видеопамять занимает 128 Кбайт, начиная с адреса A0000h и до C0000h, но для конкретного режима работы видеоадаптера (монитора) используется строго определенная часть памяти. Например, в текстовом режиме могут использоваться только 4 Кбайт