Что происходит после включения компьютера. Этапы включения и загрузки компьютера. Загрузка ядра операционной системы

Включаем БП, если все напряжения в норме, то спустя 0,1...0,5 сек БП выдаёт на материнскую плату сигнал PowerGood (PG). На материнской плате собрана специальная схема, вырабатывающая сигнал RESET. Эта же схема может быть завязана с хардваремонитором, контролирующим напряжения питания, которые поступают на маму от БП и\или вырабатываются преобразователями материнки для питания различных узлов (проца, памяти, чипсета и т.д.). В обязанности хардваремонитора также входит контроль температуры основных элементов платы и контроль оборотов вентиляторов. Только после получения PG от БП, а также сигнала от хардваремонитора "все в порядке" схема формирования RESETa снимает этот самый RESET с чипсета, мультика и различной мелкой логики, распаяной на плате, а также с самого процессора. Сигнал RESET держит сброшеными значения всех битов управляющих регистров и обнуляет регистры процессора, кроме регистра CS (Code Segment) содержащего начальный адрес сегмента кода, в нем устанавливается значение FFFFh. После снятия RESETa процессор начинает работу в реальном режиме и в течение примерно 7 циклов синхронизации приступает к выполнению инструкции, считываемой из ROM BIOS по тому самому адресу FFFF:0000. (Современный процессор (начиная с i386DX) выполняет первую инструкцию по адресу FFFFFFF0h, находящемуся в топе 4 Гб пространства.) К этому моменту клокер уже должен выдавать стабильные задающие тактовые частоты на PCI, процессор, USB, чипсет и оперативную память. Размер области ROM BIOS от адреса FFFF:0000 до конца равен 16 байт, и в ней по указанному адресу записана команда перехода на реально исполняемый код BIOS. В этот момент процессор не может выполнять никакую другую последовательность команд, поскольку нигде в любой из областей памяти, кроме BIOS, её просто не существует. Итак, начинается выполнение конкретного кода ROM BIOS. Последовательно выполняя команды этого кода, процессор реализует функцию начального самотестирования POST (Power-On Self Test). На данном этапе кроме процессора тестируются память и системные средства ввода/вывода. Обнаружив ошибку, система подаст звуковой сигнал, так как видеоадаптер пока еще не инициализирован. Также производится конфигурирование программно-управляемых аппаратных средств материнской платы. Часть конфигурирования выполняется однозначно, другая часть может определяться положением джамперов (перемычек или переключателей) системной платы, но ряд параметров возможно (а иногда и необходимо) устанавливать пользователю. Для этих целей служит утилита Setup, встроенная в код BIOS, обычно эта утилита вызывается нажатием DEL во время выполнения POST. Параметры конфигурирования, установленные с помощью этой утилиты, запоминаются в энергонезависимой памяти, питаемой от трехвольтовой батарейки, размещённой на материнской плате. Часть из них всегда хранится в традиционной CMOS Memory, объединённой с часами и календарём RTC (Real Time Clock). Другая часть (в зависимости от фирмы-производителя) может помещаться и в энергонезависимую (например, флэш) память (NVRAM). Кроме этой части статически определяемых параметров, имеется область энергонезависимой памяти ESCD для поддержки динамического конфигурирования системы Plug and Play, которая может автоматически обновляться при каждой перезагрузке компьютера. ESCD - неупакованная область, хранится во Flash ROM, его обновление на финальном этапе выполнения POST сопровождается выводом сообщения "Update DMI pool..." Останов в этом случае (до вывода сообщения или во время вывода сообщения) связан с нарушеними логических структур BIOS. Перепрограммирование - необходимое, но увы иногда недостаточное решение в такой ситуации.

Следует отметить, что далеко не все коды видны на индикаторе в процессе нормальной загрузки компьютера: некоторые высвечиваются лишь в том случае, если POST останавливается. Происходит это потому, что многие подпрограммы POST исполняются настолько быстро, что человеческий глаз не в состоянии уследить за индицируемым состоянием регистра диагностики, а некоторые коды появляются только при обнаружении неисправности. Итак, смотрим код, но не надо спешить менять девайс, если он известен! Тщательно проверяем всё, вплоть до прозвонки дорожек! Если не известно, что это за девайс, подизасмить БИОСяку, найти, где он инитится... Если не "моги", позадалбывать местных дизасмеров... Если индикатор показывает FF или 00, то наша плата вообще не смогла "стартануть", и нам надо проверять все питания элементов платы, задающий генератор, процессор и посмотреть наличие сигналов на шине данных и адреса.

Итак, программный старт компьютера вкратце выглядит примерно так:

Программируются регистры Host Bridge, очищается Internal Cache, запрещается Internal и External Cache, а также операции с кэш-памятью, запрещается Shadow RAM, вследствие чего происходит направление непосредственно к ROM циклов обращения к адресам расположения System BIOS. Эта процедура должна соответствовать конкретному чипсету. Далее программируются РIIХ ресурсы: контроллер DMA, контроллер прерываний, таймер, блок RTC. При этом контроллер DMA переводится в пассивный режим.

В компьютерах на SIMM или SDRAM с помощью последовательных циклов запись/чтение определяется тип памяти, суммарный объём и размещение по строкам. В компьютерах на SDRAM, DDR или DDR2 для определения параметров установленой памяти читается SPD (по протоколу SMBus, практически тот же самый i2c). И в соответствии с полученной информацией настраивается DRAM-контроллер. На этом же этапе процессор должен быть переключён в Protected Mode (защищённый режим).

Проверяются первые 256 кб памяти, которые в дальнейшем будут использованы как транзитный буфер, а также осуществляется распаковка и копирование System BIOS в DRAM.

По специальному алгоритму определяется наличие, тип и параметры External Cache.

Определяется тип процессора, результат помещается в CMOS. Если по каким-либо причинам определение типа процессора закончилось неудачно, для платформы на интеловском процессоре такая ошибка становится фатальной и система, а соответственно и выполнение POST, останавливается. При неудачном определении типа процессора на платформе АМД в CMOS помещается "неизвестный процессор".

Осуществляется проверка и инициализация контроллера клавиатуры, однако на данный момент приём кодов нажатых клавиш ещё не возможен.

Проверяется функционирование CMOS и напряжение питания её батареи. Если фиксируется ошибка питания, выполнение POST не останавливается, однако BIOS "запоминает" этот факт. Ошибка при контрольной записи/чтении CMOS считается фатальной и POST останавливается.

Программируются конфигурационные регистры Host Bridge и PIIX значениями, взятыми из BIOS.

Генерируется таблица векторов прерываний, а также производится первичная настройка подсистемы управления питанием.

Проверяется контрольная сумма блока ячеек CMOS, а также, если BIOS поддерживает PnP, выполняется сканирование устройств ISA PnP и инициализация их параметров. Для PCI-устройств устанавливаются основные (стандартные) поля в блоке конфигурационных регистров.

Инициализируется блок переменных BIOS.

Определяется наличие видеоадаптера путём проверки наличия сигнатуры 55АА по адресу начала Video BIOS (C0000:0000h). Если Video BIOS обнаружен и его контрольная сумма правильная, включается процедура инициализации видеоадаптера. С этого момента появляется изображение на экране монитора, высвечивается заставка видеоадаптера, инициализируется клавиатура. Далее по ходу POST тестируется контроллер DMA и контроллер прерываний.

Определяется объём Base Memory и External Memory, и с этого момента начинается отображаемый на экране тест оперативной памяти.

Инициализируется PS/2 mouse.

Производится инициализация подсистемы гибких дисков.

Выполняется программный сброс контроллера жёстких дисков. Если в Setup указан режим AUTO, производится детектирование устройств IDE, в противном случае параметры устройств берутся из CMOS. В соответствии с конфигурацией системы размаскируются прерывания IRQ14 и IRQ15.

Инициализируется сопроцессор FPU.

Настраивается клавиатура USB. На данном этапе становится возможен вход в CMOS Setup по нажатию клавиши DEL.

Осуществляется запрос на ввод пароля, если это предусмотрено установками CMOS Setup.

Производится поиск и инициализация ПЗУ дополнительных BIOS, а также картируется каждая из линий запросов прерывания PCI.

Если в Setup включён данный режим, устанавливается антивирусная защита BOOT Sector.

Осуществляется автоматический переход на зимнее или летнее время, для клавиатуры настраиваются состояние NumLock и режим автоповтора.

Корректируются блоки ESCD (только для PNP BIOS) и производится очистка ОЗУ.

Успешная инициализация аппаратных средств компьютера сопровождается одиночным звуковым сигналом, после чего управление передается загрузчику BOOT-сектора.

А как быть если 00 или FF, т.е. не выполнена ни одна команда системного BIOS? ("жизнь" на биосной флешке отсутствует):

  1. Нужно быть абсолютно уверенным, что все напряжения в норме и обеспечено надлежащее тактирование.
  2. Нужно быть абсолютно уверенным, что процессор исправен и данный экземпляр платы с данным процессором, грубо говоря "заводится".
  3. На платформах с AMD нужно обеспечить связь CPU с NB, т.к. до начала выполнения первой из команд системного BIOS по известному адресу выполняется недокументированный "Hand-Shake" между CPU и NB. Только после этого платформа переходит к нормальному старту в смысле x86. (Hand-Shake - название условное по аналогии с чем-то давно знакомым).
  4. На платформах с чипсетами VIA(начиная с KT266)/SiS(начиная с 635/735) до старта в смысле x86 выполняется "НЕЧТО", обеспеченное SB и BIOS. Поэтому BIOS должен быть достоверным (!). Кстати, на nForce тоже есть нечто подобное, хотя и не такое критичное, как VIA/SiS.
  5. Предположим, что передача управления по адресу FFFF FFF0h все-таки состоялась. До инициализации первого POST кода BIOS выполняет сотни команд, в т.ч. зачастую (Award, AMI, но не Phoenix) обращается к SIO/MIO и CMOS. Если там проблема - сообщение POST не дождаться. Если есть уверенность в том, что SIO/MIO неисправен (дикий нагрев - тут мы на все 100% солидарны) - менять и не думать. Думать будем, если это не помогло:) Тут следует заметить, что если принято решение о замене SIO, то иногда следует снять два буфера RS-232, были случаи, когда пробитый преобразователь RS232-TTL выжигал переустановленный SIO. Работы тут мало, а спокойствие дороже. Но если буфер выполнен "нестандартно", например, как у ITE или у старых Winbond, то прежде чем снимать, полезно обратиться к документации.
  6. Если это не помогло: кроме SIO/MIO на старт влияет система мониторинга (если она в SIO/MIO, то этот пункт можно и не читать), особливо ея датчики. На старых платах это что-то типа LM75. Датчики снять. Так же не будет лишним проверить на соответствие Hardware Monitor Interface (Например, Epox 3PTA, нет RESETа, на SIO не было сигнала FAN1in, выяснилось до замены SIO). В некоторых случаях настроение системной платы зависит и от звуковых чипов, сетевых чипов, прочих разных подключенных к PCI/LPC/ISA. Особенно, если они что-то там просаживают, коротят и т.п. Особенно упорные ремонтники в таких случаях на плате оставляют только чипсет, и смотрят жив ли он:)
  7. Как посмотреть, жив ли чипсет. Можно осциллографом, если есть время, осциллограф и навыки по работе с ним. Можно просто заменить чипсет, если плата того стоит и в изобилии комплектующие. Наши партнеры доложили, что они при снятом SIO ставят тестовый BIOS, и если он выполняется, то плату есть надежда поднять без BGA-операций. Но это вопрос спорный, ибо для различных SIO есть свои варианты:
    1. SIO с Flash ROM Interface (W83697HF);
    2. SIO с раздельными шинами DATA/ADDRESS(FDC37M602);
    3. LPC Inerface.
  8. Если в течение ~10 сек. процессор не выполнит инициализацию SIO, чип аппаратного мониторинга в системный динамик выведет последовательность звуковых сигналов типа "сирена". Если чип системного мониторинга в отдельном корпусе (на BX, например), то сирена будет без процессора, без BIOS и без чипа SIO. Естественно, это только в том случае, если обеспечено питание и тактирование этого самого HW-мониторинга.

Загрузка операционной системы является сложным процессом и состоит из нескольких этапов.


Немногие пользователи ПК знают, что происходит после нажати кнопки Power с их компьютером. Итак, поехали!

1. После включения питания ПК начинается процесс его автоматического тестирования, тот, что выполняется под управлением программы BIOS. Если на этом этапе будет найдено неисправное оборудование, то загрузка компьютера остановится с выводом на экран соответствующего сообщения либо звуковых сигналов.
2.После завершения автоматического тестирования BIOS ищет загрузочный сектор на дискете, HDD, компакт-диске либо ином носителе, поддерживаемом системной платой. Порядок поиска загрузочного сектора задается с поддержкой настроек BIOS , описание которых можно обнаружить в инструкции к материнской плате.
3. После определения загрузочного диска с него загружается содержимое первого сектора диска, в котором находится основная загрузочная запись (Master Boot Record, MBR). В MBR также содержится таблица разделов диска, один из которых должен быть помечен как активный.

4. MBR находит активный раздел и передает управление загрузочной записи, которая должна находиться в первом секторе активного раздела. С подмогой загрузочной записи запускается менеджер загрузки Windows 7 (файл bootmgr, тот, что находится в корневой папке активного раздела).
5.Менеджер загрузки считывает данные конфигурации системы ПК, которые хранятся в файле BCD (Boot Configuration Data). При наличии нескольких записей в файле BCD будет отображено меню выбора операционной системы. Файл BCD находится в папке Boot активного раздела.
6. После выбора системы запускаются модуль загрузки операционной системы Winload. exe, компоненты ядра Ntoskrnl. exe и Hal. dll, системные службы и другие компоненты - данный этап сопровождается итогом анимированного экрана с логотипом Windows.
7. Загружается процесс winlogon. exe, тот, что управляет входом пользователей в систему. Если на компьютере имеется одна учетная запись, не защищенная паролем, вход будет исполнен автоматически. В другом случае система будет ждать выбора имени пользователя и ввода пароля.
8. В процессе входа в систему запускаются элементы автозагрузки, которые прописаны в реестре Windows 7 и папке Автозагрузка.
Исходя из изреченного выше, дозволено сделать итог, что для удачной загрузки Windows 7 нужны следующие данные.
Нынешние настройки BIOS обязаны обеспечивать загрузку с HDD, на котором установлена Windows 7. Если в BIOS установлена первоочередная загрузка со сменных носителей, следует также извлечь диски из приводов.

В первом секторе жесткого диска обязаны присутствовать верная основная загрузочная запись и таблица разделов, один из которых должен быть помечен как активный.

На активном разделе должна быть загрузочная запись Windows 7, а в его корневой папке должен находиться файл bootmgr.
В папке Boot активный раздела должен присутствовать файл BCD, содержащий верные записи об установленных операционных системах.

Примечание
При установке Windows 7 в качестве 2-й операционной системы активный традиционно является раздел, на котором установлена предыдущая версия Windows. Именно там находятся файл bootmgr и папка Boot. Если же вы исполняли разбивку жесткого диска на разделы средствами Windows 7, то активным будет назначен спрятанный раздел размером около 100 Мбайт.
Если компьютер не загружается, попытайтесь узнать, на каком именно этапе происходит остановка. Сообщение, которое выводится при прекращении загрузки системы, обычно разрешает достаточно верно определить возникшую загвоздку.
Не поленитесь при необходимости перевести его с английского языка. Если вам не удалось обнаружить место ошибки по сообщениям либо загрузка останавливается без их возникновения, испробуйте воспользоваться следующими советами.
Посмотрите, отображается ли на экране меню выбора операционной системы либо меню дополнительных вариантов загрузки. Если нет, испробуйте в процессе загрузки несколько раз нажать клавишу F8. Если меню выбора вариантов загрузки не удалось вывести на экран, причинами могут быть ошибки оборудования, неправильные параметры BIOS, поврежденные загрузочные секторы либо файлы (см. этапы 1-5 описанной выше последовательности загрузки Windows).
Если меню загрузки отображается, но сразу после выбора операционной системы запуск останавливается, допустимо, в файле BCD содержатся ложные записи.
Если запуск останавливается позже итога анимированного экрана с логотипом Windows, возможно, поводом сбоя является драйвер устройства либо системная служба.

Приветствую, друзья!

На вопрос «что происходит с компьютером сразу после включения» можно дать простой ответ.

Он начинает шуметь вентиляторами, шуршать винчестером, мигать индикаторами, выводить служебные сообщения на экран монитора.

И загружать операционную систему.

Но за этой внешней простотой скрывается кое-что еще. Давайте-ка запасемся «мелкоскопом» и глянем более внимательно, что же именно творится в недрах компьютера!

Источник дежурного напряжения в блоке питания

Сразу отметим, что, если питающий шнур системного блока вставлен в сеть, часть работает, вырабатывая так называемое дежурное напряжение +5 В. Это напряжение питает часть компонентов материнской платы.

Это позволяет включать компьютер не только нажатием кнопки включения, но и нажатием кнопки на клавиатуре, движением мыши или нажатием ее кнопки.

Можно «будить» компьютер и через локальную сеть (при соответствующих настройках Setup).

Эти экзотические функции используются редко. Но при этом часть блока питания работает все время.

Конденсаторы в источнике дежурного напряжения подсыхают и быстрее вырабатывают свой ресурс. К тому же, вероятность выхода из строя источника дежурного напряжения (и, соответственно, всего блока питания) вследствие скачков напряжения в сети повышается.

Поэтому сетевое напряжение в отсутствие работы на блок питания лучше не подавать.

Но каждый раз вынимать вилку шнура из розетки неудобно. Удобно пользоваться специальным фильтром на 5 или 6 розеток с выключателем. Выключатель чаще всего имеет подсветку, что повышает удобство пользования.

При включении компьютера источник дежурного напряжения запускает основной инвертор. Последний вырабатывает основные постоянные напряжения.

Следует отметить, что сразу после запуска основного инвертора выходные напряжения колеблются в течение нескольких десятков или сотен миллисекунд. Это так называемые переходные процессы.

Что такое сигнал «Power Good»и зачем он нужен?

Если процессор будет в это время выполнять какие-то действия, то может быть искажение данных в его регистрах и ячейках оперативной памяти. Поэтому процессор содержит в себе вывод (вход) сброса или обнуления Reset.

Если на нем будет низкий логический уровень (напряжение, близкое к нулю), то процессор будет находиться в состоянии сброса. При этом все его регистры очищаются. Как только логический уровень станет высоким (напряжение станет равным +5 В), процессор стартует, начиная выполнение программы с нулевого адреса.

Сигнал на этот вход подается со специального вывода (вывод 8) разъема блока питания, который называется «Power Good» или «Power OK». Чаще всего он серого цвета.

Напряжение +5 В появляется там с задержкой, к тому времени, как переходные процессы уже закончились.

Бывают случаи (к счастью, достаточно редко), когда блок питания вырабатывает все основные напряжения в пределах нормы, а сигнал «Power Good» отсутствует. И компьютер при вроде бы исправном блоке питания не стартует. Это может ввести в ступор неопытного ремонтника.

Решается проблема ремонтом (или заменой) блока питания.

Как работает POST и что это такое?

Если все напряжения в норме и присутствует сигнал «Power Good», начинается выполнение программы POST (Power-On Self Test).

Это программа встроена (еще говорят «прошита») в BIOS (Basic Input Output System, базовая система ввода-вывода) материнской платы.

Процессор посылает тестовые сигналы на оборудование, которое имеется на борту и определяет их наличие (или отсутствие) и исправность.

Проверяется наличие винчестера, приводов DVD, видеоподсистемы, устройств ввода (мыши, клавиатуры) и другого оборудования. Кроме того, производится быстрый тест памяти. Надо сказать, что тест памяти, заложенный в программе POST, именно быстрый.

Он может не выявить всех возможных ошибок памяти. Бывали случаи, когда этот тест проходил нормально. Но потом компьютер в процессе работы обращался к дефектной ячейке памяти и выпадал в «синий экран смерти».

Существуют специальные (расширенные) тесты памяти, позволяющие сделать однозначный вывод о работоспособности ячеек модулей памяти. Такие тесты длятся достаточно долго и записывают в каждую ячейку самые различные кодовые последовательности.

Если в ячейку записались одни данные, а считались другие – ячейка считается дефектной.

Такой модуль подлежит замене.

BIOS Setup и Hardware Monitor

Если все оборудование в норме, программа POST издает короткий звуковой сигнал и обращается дальше к программе настройки (также «зашитой» в BIOS) Setup. Программа BIOS Setup имеет систему вложенных меню, которые можно увидеть на экране монитора.

Чтобы их увидеть, надо во время процедуры POST (сразу после включения) периодически кратковременно нажимать на клавиши Del, F2, F10 или другие (зависит от производителя BIOS и компьютера).

В настройках можно устанавливать дату, время, источник загрузки системы, константы, определяющие работу процессора, памяти и множество других параметров. Можно увидеть и параметры – напряжения блока питания, обороты вентиляторов, температуру процессора.

Это чрезвычайно полезная информация, позволяющая определить причины нестабильной работы компьютера.

Отметим, что если сразу после старта компьютера температура процессора достигает 50-60 градусов Цельсия и выше, то это говорит о проблемах с его охлаждением.

Часто BIOS Setup можно настроить так, что эти параметры будут выводиться при старте компьютера (перед загрузкой операционной системы).

И не нужно будет каждый раз входит в Setup. Но эти служебная информация будет пребывать на экране недолго, не более 2 секунд. Чтобы внимательно посмотреть на все параметры, надо нажать кнопку Pause на клавиатуре.

Отметим, что все эти параметры можно посмотреть и другим способом, уже после загрузки операционной системы. Для этого можно использовать программы Aida, Everest и им подобные.

Настройки BIOS Setup – это отдельная большая (и сложная для начинающих) тема, об этом мы расскажем в следующих постах. Пока скажем только об опциях выхода из программы настройки. В большинстве случаев могут быть следующие опции:

Если вы плохо ориентируетесь в опциях BIOS Setup (или забыли, что меняли), то при выходе из нее используйте опцию «Exit without saving» (выйти без записи). И все, что вы случайно «наклацали», не запишется.

Процесс загрузки ПК можно разделить на определенные этапы.
1. Включение питания.
2. Блок питания выполняет процедуру самотестирования. Если выходные напряжения соответствуют определенным параметрам, на материнскую плату подается сигнал Power_Good. Интервал между включением и подачей сигнала составляет порядка 0,1-0,5 секунд.
3. Микросхема памяти, получив сигнал Power_Good, прекращает генерировать сигнал Reset, подаваемый на процессор.
4. Процессор запускает выполнение кода, записанного в ROM BIOS (начинает с адреса FFFF:0000). По данному адресу находится инструкция перехода на исполняемый код ROM BIOS.
5. Далее ROM BIOS запускает тестирование системы для проверки ее работоспособности. Выявив ошибку, система подает серию звуковых сигналов, поскольку видеоадаптер в этот момент не инициализирован. Если версия BIOS системы соответствует требованиям стандарта Plug and Play, проходят нижеперечисленные этапы. В противном случае производится переход к п.10.
6. Система Plug and Play BIOS сканирует каналы прямого доступа к памяти, линии прерываний, постоянные адреса ввода-вывода и другие параметры, требуемые для конфигурации устройств, поддерживающих данный стандарт.
7. Все устройства Plug and Play, обозначенные в BIOS, деактивизируются для того, чтобы избежать потенциальных конфликтов.
8. Формируется карта ресурсов (свободных и используемых).
9. Устройства Plug and Play активизируются, после предварительной конфигурации. Если в компьютере используется BIOS, не поддерживающая стандарт Plug and Play, установленные устройства Plug and Play проходят процесс инициализации с параметрами по умолчанию. Данные устройства в дальнейшем могут изменить конфигурацию при загрузке системы (диспетчер конфигурации запрашивает у BIOS данные об устройстве, а затем выясняет конфигурацию каждого устройства с поддержкой Plug and Play).
10. В поисках приложения работы с видеокартой BIOS сканирует память видео-адаптера в диапазоне адресов от C000:0000 до С780:0000. После нахождения BIOS видеокарты, сравнивается контрольная сумма ее программного кода. В случае совпадения контрольной суммы управление получает BIOS видеокарты, которая проводит инициализацию видеоадаптера и выводит на дисплей курсор; в противном случае формируется сообщение об ошибке.
11. Если не удается обнаружить BIOS видеокарты, используется видеодрайвер, сохраненный в микросхеме ROM материнской платы, который и проводит процедуру инициализации видеоадаптера.
12. BIOS материнской платы проверяет оставшийся диапазон памяти (с C800:0000 до DF80:0000) на наличие BIOS других адаптеров, подключенных к системной плате (например, SCSI).Найденные BIOS также запускаются на выполнение.
13. При выявлении несоответствий контрольной суммы одной из BIOS отображается сообщение об ошибке вида **** ROM ERROR, где **** – сегментный адрес модуля ROM с некорректными данными.
14. BIOS определяет слово, записанное по адресу 0000:0472, для определения вида загрузки (горячая или холодная). Если выполняется горячая загрузка, значение слова будет 1234h, в результате чего пропускается процедура POST. Если данный адрес хранит другое слово, запускается тест POST.
15. При холодном старте выполняется POST. В процессе тестирования на экране отображаются сообщения обо всех найденных ошибках и подается звуковой сигнал из встроенного динамика.
16. BIOS считывает 1 сектор, расположенный на стороне 0, цилиндре 0 (первый сектор) накопителя, с которого производится загрузка.
17. Если загрузка осуществляется с дискеты и первый байт, расположенный в загрузочной записи, меньше 06h или если данный байт равен или больше данного числа, но первые пять слов имеют одинаковые шаблоны данных, выводится сообщение о некорректной загрузочной записи дискеты.
18. Если загрузочной записи тома не удается загрузить или найти системные файлы, выводится оповещение о том, что накопитель не является системным.
19. Если в дисководе отсутствует системная дискета, BIOS считывает сектор MBR (главная загрузочная запись).
20. Если сигнатура данного сектора (последние два байта) не равны 55AAh, создается прерывание 18h. На монитор ПК при этом выводится соответствующее предупреждение.
21. Загрузчик производит поиск в таблице разделов активного раздела.
22. Если в таблице отсутствует активный раздел, выводится оповещение об ошибке при помощи вызова программного прерывания 18h.
23. Если какой либо из разделов содержит некорректную метку либо более одного раздела помечены как активные, выводится сообщение Invalid partition table и загрузка системы прекращается.
24. Если активный раздел найдет, его загрузочный сектор копируется в память и запускается проверка, действительно ли он является загрузочным.
25. Если загрузочный сектор загрузочного раздела не удается считать за пять попыток, выводится сообщение Error loading operating system и загрузка системы останавливается.
26. Сканируется сигнатура загрузочного сектора. Если два последних байта не равны значению 55AAh, выводится сообщение Missing operating system и загрузка системы прекращается.
27. Загрузочный сектор активного раздела хранит приложение загрузки ОС. Если системные файлы не расположены первыми в корневом каталоге, попытка чтения не удалась или загрузочный сектор поврежден, выводится сообщение о том, что диск содержит ошибку или не является системным.
Дальнейшая загрузка зависит от используемой операционной системы.

Вкратце процесс загрузки компьютера описан в статье "Включение ПК" раздела BIOS. Рассмотрим этот процесс более подробно.

Инициализация системы средствами BIOS

  1. Нажатие кнопки включения питания. При включении кнопки Power на элементы материнской платы поступают питающие напряжения; по сигналу Power Good запускается тактовый генератор; на процессор подается сигнал сброса, который устанавливает его в исходное состояние. Начинают работать программы системного BIOS.
  2. Проверка BIOS. Контрольная сумма системных программ, находящихся в ПЗУ, находится в одной из ячеек. После запуска контрольная сумма пересчитывается и сравнивается с эталонным значением.
  3. Идентификация процессора. Материнская плата предусматривает возможность установки различных моделей процессора. БИОС подает запрос на идентификацию процессора и по полученному ответу определяет тип процессора, частоту, напряжения и проч.
  4. Настройка базовых элементов. Инициализируются и тестируются базовые компоненты системной платы: блок прямого доступа к памяти, таймер, блок аппаратных прерываний.
  5. Тестирование ОЗУ. Определяется тип модулей памяти, их объем, организация; тестируются первые 64 Кб оперативной памяти.
  6. Организация рабочих структур ОЗУ. Выделяется область под БИОС, настраиваются прерывания.
  7. Проверка CMOS-памяти и батарейки. При неисправной батарейке CMOS все данные настройки БИОС, находящиеся в памяти теряются. Загрузка последней конфигурации становится невозможной, о чем сообщается на экране монитора. Есть возможность осуществить загрузку стандартных заводских значений БИОС.
  8. Инициализация устройств материнской платы. Производится поиск и настройка загрузочных устройств (жесткий диск, привод CD, FDD), средств управления процессом загрузки (клавиатура, мышь), устройств ввода-вывода (COM, LPT). Устройствам выделяются соответствующие линии прерывания .
  9. PnP. Идентифицируются устройства, подключенные через системные разъемы. Устройствам выделяются ресурсы и прерывания.
  10. Включение видеосистемы. Запускается Video BIOS, который настраивает видеоконтроллер на режим VGA или EGA, которые поддерживают все видеоконтроллеры. После этого видеоконтроллер готов к работе.
  11. Выдача сообщения на экран монитора. На экране монитора появляется первое сообщение: фирма-производитель BIOS, тип и частота процессора, тип и объем ОЗУ.
  12. Тестирование ОЗУ. Производится выборочная проверка незадействованной оперативной памяти.
  13. Инициализация контроллера дисководов.
  14. Инициализация контроллера жестких дисков.
  15. Инициализация клавиатуры. Включается контроллер клавиатуры, производится тест матрицы контактов, устанавливаются временные параметры опроса клавиш и режим NumLock. Клавиатура готова к работе. На экран выводится сообщение о возможности использования программы BIOS Setup (обычно для этого используется клавиша Del).
  16. Поиск устройств с собственным BIOS. Если таковые устройства найдены, то управление передается BIOS-программам этих устройств и происходит их инициализация.
  17. Передача управления загрузчику ОС. По программному прерыванию Int 19h на дисковых накопителях ищется загрузчик ОС (Boot Record). Он должен находиться на одном из устройств (HDD, CD, FDD, SCSI). Местоположение загрузчика везде одинаково. После того, как загрузчик ОС найден, управление передается ему.

Загрузка операционной системы

Ядро операционной системы (ОС) загружается в ОЗУ, после чего в памяти системы размещается основная часть ОС.


БИОС производит "грубую" настройку компьютерной системы. Его основная задача - "вдохнуть" жизнь в компьютерное железо, независимо от его конкретной модификации. Новые модели процессоров, материнских плат, чипсетов и прочих устройств выходят чуть ли не ежеквартально. Невозможно в БИОС сразу заложить идентификацию всего этого разнообразия. Да это и не нужно. Основная задача БИОС сделать начальную инициализацию оборудования и запустить работу операционной системы, которая сама производит "тонкую" настройку компьютерных составляющих.


На заре развития персоналок конфигурирование системы требовало от пользователей соответствующей квалификации. Наверняка, пользователи со стажем еще помнят такие файлы, как config.exe и autoexec.bat , которые надо было правильно настроить, чтобы "телега" нормально поехала.


Что поделать, - это была обратная сторона медали открытой архитектуры IBM. За удобство получения компьютера нужной конфигурации надо было платить знаниями по его правильной настройке. Такие неудобства отпугивали неподготовленных пользователей, поэтому, фирмы-производители ПК не могли долго мириться с подобным положением вещей. Производители компьютерной техники и разработчики программного обеспечения постарались максимально снять с потребителя необходимость конфигурирования своего компьютера. Впервые новая процедура настройки системы была применена в ОС Windows - операционная система сама "опрашивала" подключенные устройства и правильно настраивала их:

  • определялся перечень устройств, требующих программной настройки;
  • подыскивались соответствующие программы для правильной работы таких устройств;
  • выполнялась процедура программной инициализации устройств и настройка их на рабочие режимы.

Задача, в общем-то, довольно сложная. Для облегчения ее выполнения производители чипсетов и разработчики ПО согласовали и установили определенные правила механизма начальной загрузки. Теперь компоненты компьютерной системы, требующие инициализации и настройки комплектовались соответствующим программным обеспечением (инициализирующими программами, драйверами, INF-файлами):

  • Инициализирующие программы заносят управляющие коды по конкретным адресам (разовая процедура);
  • Драйверы - это программы, управляющие работой контроллера соответствующего устройства;
  • INF-файл - командный файл, помогающий ОС организовать процедуру настройки конкретного компьютерного блока.

Начальная загрузка Windows ведется под управлением командного файла, который содержит перечень программ и драйверов выполняемых в процессе загрузки ОС. Это, так называемая, "заготовка" командного файла, которая должна в процессе первоначальной установки Windows на компьютер, переделана в рабочую версию, соответственно установленному оборудованию на данном компьютере.


Windows имеет определенный набор универсальных драйверов (который постоянно пополняется с выходом новой версии ОС), позволяющих выполнить настройку всех компонентов системы. Справедливости ради следует сказать, что универсальные драйвера Windows далеко не всегда способны произвести оптимальную настройку того или иного устройства, что снижает производительность и стабильность работы всей компьютерной системы. Поэтому, все устройства поставляются со "своим" установочным ПО (как правило, на CD). При первоначальной установке нового устройства Windows может попросить вас установить в дисковод диск с соответствующими драйверами для правильной настройки нового устройства. Рекомендуется также следить за выходом новой версии драйверов (в которых исправлены ошибки, сделана оптимизация работы и проч.) для чипсета своей материнской платы и регулярно обновлять их.




Top