Жесткий кодинг Крис Касперски Хакер, номер #093, стр. 093-136-5 * установка всех регистров чипсета в значения по умолчанию (берутся из BIOS); * детектирование типа ЦП; * инициализация таблицы векторов прерываний; * считывание установок CMOS в стек BIOS'а; * построение карты ресурсов для PCI- и P&P-устройств; * инициализация тактового генератора; * сканирование всех устройств, подключенных к PCI-шине; * назначение устройствам IRQ и портов ввода/вывода; * поиск видео-карты и отображение VGA BIOS на сегмент C000h; * инициализация буфера клавиатуры для вектора INT 09h; * инициализация внутренних MTRP-регистров ЦП для отображения памяти 0-640 Кб; * инициализация APIC-контроллера; * установка регистров чипсета в соответствии с настройками CMOS; * инициализация интегрированного IDE-контроллера; * измерение тактовой частоты ЦП; * вызов VIDEO-BIOS; * вывод на экран информации о типе ЦП, тактовой частоте, логотипа BIOS и т. д.; * сброс клавиатуры; * тест битовой маски контроллера прерываний 8259 для канала 1; * тест битовой маски контроллера прерываний 8259 для канала 2; * первичная инициализация шины USB; * тестирование и очистка памяти; * готовность выйти в BIOS Setup по нажатию <DEL>; * инициализация PS/2 мыши; * инициализация и выделение ресурсов интегрированным COM и LPT-портам; * инициализация привода гибких дисков; * детектирование и инициализация IDE-приводов (HDD, LS120, ZIP, CDROM); * детектирование и инициализация не интегрированных COM/LPT-портов; * перепрограммирование шрифтов для вывода EPA-логотипа в текстовом режиме; * вывод EPA-логотипа; * вызов hock-процедуры менеджера энергопитания; * восстановление шрифтов, используемых для вывода EPA-логотипа; * запрос пароля (если загрузка компьютера защищена паролем); * запись всех данных из стека BIOS обратно в CMOS; * инициализация загрузочных устройств P&P; * финальная инициализация шины USB; * инициализация APCI-таблицы на вершине памяти; * поиск ISA-устройств (если есть эта рухлядь) и вызов их BIOS'ов; * финальное распределение между ISA и PCI устройствами; * финальная инициализация чипсета; * финальная инициализация менеджера энергопитания; * очистка экрана и вывод таблицы с информацией о конфигурации всех устройств; * инициализация клавиатурных индикаторов и установка скорости автоповтора; * построение MP-таблицы; * построение и обновление ESCD-таблицы; * установка века в CMOS; * загрузка даты/времени в область данных BIOS; * построение таблицы маршрутизации аппаратных прерываний MSIRQ; * попытка загрузки с загрузочного носителя (вызов прерывания INT 19h); * на этом BIOS прекращает свою работу и передает управление boot-сектору; ссылки по теме BIOSmods Портал, посвященный BIOS'у и его доработке (на английском языке): http://www.biosmods.com/; ROM Статьи по прошивке и доработке прошивок, уникальный инструментарий (на русском языке): http://www.rom.by; Часто задаваемые вопросы о BIOS: довольно устаревшее, но все-таки полезное FAQ по BIOS'ам (на русском языке): http://www.ixbt.com/mainboard/faq/biosfaq.shtml; The Official Website of Pinczakko: |