Проблемы с загрузкой ПК

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

Как это работает

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

Решением данного парадокса является использование нескольких микропрограмм размещаемых в одной или нескольких микросхемах, BIOS (Basic Input/Output System). Процесс загрузки начинается с автоматического выполнения процессором команд, расположенных в постоянной (или перезаписываемой) памяти (EEPROM или Flash ROM), начиная с заданного адреса. Эти микропрограммы не обладает всей функциональностью операционной системы, но её (функциональности) достаточно для того, чтобычтобы выполнить последовательную загрузку других программ, которые выполняются друг за другом до тех пор, пока последняя из них не загрузит операционную систему.

Последовательность основных блоков функций BIOS в PC-совместимых компьютерах:

1. — POST — самотестирование при включении питания процессора, памяти, набора микросхем системной логики, видеоадаптера, контроллера дисков, клавиатуры, мыши и других контроллеров и устройств;

2.  — Setup BIOS (программа установки параметров BIOS) — конфигурирование параметров системы. Она может быть запущена во время выполнения процедуры POST при нажатии определенной комбинации клавиш. Если она не была вызвана пользователем, загружаются параметры установленные и сохраненные в постоянной памяти во время последнего конфигурирования Setup BIOS.

3. — Загрузчик операционной системы — подпрограмма, выполняющая поиск действующего основного загрузочного сектора на дисковом устройстве.

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

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

Зачем это нужно?

Это нужно для:

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

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

К ним относятся:

  • устройства ввода (клавиатура, мышь),
  • базовое устройство вывода (дисплей),
  • устройство, с которого будет произведена загрузка ОС — дисковод, жесткий диск, CD-ROM, флэш-диск, SCSI-устройство, сетевая карта (при загрузке по сети)

Затем BIOS опрашивает устройства, перечисляемые в заранее созданном списке, пока не найдёт загрузочное устройство. Если такое устройство найдено не будет, будет выведено сообщение об ошибке, а процесс загрузки будет остановлен. Если BIOS обнаружит загрузочное устройство, он считает с него начальный загрузчик и передаст ему управление.

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

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

Первое устройство, которое запускается после нажатия кнопки включения компьютера, — блок питания. Если все питающие напряжения окажутся в наличии и будут соответствовать норме, на системную плату будет подан специальный сигнал Power Good, свидетельствующий об успешном тестировании блока питания и разрешающий запуск компонентов системной платы.

Первая выполняемая команда расположена по адресу FFFF0h и принадлежит пространству адресов BIOS. Данная команда просто передает управление программе инициализации BIOS и выполняет следующую команду (микропрограмму BIOS).

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

  • Первоначальная инициализация основных системных компонентов;
  • Детектирование оперативной памяти, копирование кода BIOS в оперативную память и проверка контрольных сумм BIOS;
  • Первоначальная настройка чипсета;
  • Поиск и инициализация видеоадаптера. Современные видеоадаптеры имеют собственную BIOS, которую системная BIOS пытается обнаружить в специально отведенном сегменте адресов. В ходе инициализации видеоадаптера на экране появляется первое изображение, сформированное с помощью BIOS видео адаптера;
  • Проверка контрольной суммы CMOS и состояния батарейки. Если контрольная сумма CMOS ошибочна, будут загружены значения по умолчанию;
  • Тестирование процессора и оперативной памяти. Результаты тестирования обычно выводятся на экран;
  • Подключение клавиатуры, тестирование портов ввода/вывода и других устройств.
  • Инициализация дисковых накопителей. Сведения об обнаруженных устройствах обычно выводятся на экран;
  • Распределение ресурсов между устройствами и вывод таблицы с обнаруженными устройствами и назначенными для них ресурсами;
  • Поиск и инициализация устройств, имеющих собственную BIOS;
  • Вызов программного прерывания BIOS INT 19h, который ищет загрузочный сектор на устройствах, указанных в списке загрузки.

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

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

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

Основная задача BIOS на данном этапе — проверка исправности и инициализация основных аппаратных компонентов компьютера. Вначале конфигурируются внутренние регистры чипсета и процессора, проверяется целостность кода BIOS. Затем происходит определение типа и размера оперативной памяти, поиск и инициализация видеокарты (интегрированной в чипсет или внешней). Следом конфигурируются порты ввода-вывода, контроллер дисковода, IDE/SATA-контроллер и подключенные к нему накопители. И, наконец, осуществляется поиск и инициализация интегрированных на материнскую плату дополнительных контроллеров и установленных карт расширения. Всего получается около ста промежуточных шагов, после чего управление передается загрузчику BOOTStrap, отвечающему за старт операционной системы.

Каждый из шагов POST-тестов имеет свой уникальный номер, называемый POST-кодом. Перед началом выполнения очередной процедуры ее POST-код записывается в специальный порт, именуемый Manufacturing Test Port. При успешной инициализации устройства в Manufacturing Test Port записывается POST-код следующей процедуры и так далее, до полного прохождения всех тестов. Если сконфигурировать устройство не удалось, дальнейшее выполнение POST-тестов прекращается, а в Manufacturing Test Port остается POST-код процедуры, вызывавшей сбой. Прочитав его можно однозначно идентифицировать проблемное устройство.

Имейте в виду, после перезагрузки компьютера средствами операционной системы («мягкая» или «горячая» перезагрузка) или при выходе из энергосберегающего режима обычно выполняются не все шаги по тестированию и конфигурированию аппаратных компонентов, а только необходимый минимум — так быстрее. При поиске неисправности необходимо всегда выполнять «жесткую» («холодную») перезагрузку — клавишей RESET или отключением питания компьютера. Только так гарантируется, что все этапы инициализации будут выполнены в полном объеме.

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

POST-код Описание процедуры
CF Определяется тип процессора и тестируется чтение/запись CMOS
C0 Предварительно инициализируется чипсет и L1-, L2-кэш, программируется контроллер прерываний, DMA, таймер
C1 Детектируется тип и объем оперативной памяти
C3 Код BIOS распаковывается во временную область оперативной памяти
Проверяются контрольные суммы BIOS
C5 Код BIOS копируется в теневую память и управление передается модулю Boot Block
01 Модуль XGROUP распаковывается по физическому адресу 1000:0000h
02 Инициализация процессора. Устанавливаются регистры CR и MSR
03 Определяются ресурсы ввода/вывода (Super I/O)
05 Очищается экран и флаг состояния CMOS
06 Проверяется сопроцессор
07 Определяется и тестируется контроллер клавиатуры
08 Определяется интерфейс клавиатуры
09 Инициализация контроллера Serial ATA
0A Определяется клавиатура и мышь, которые подключены к портам PS/2
0B Устанавливаются ресурсы звукового контроллера AC97
OE Тестируется сегмент памяти F000h
10 Определяется тип flash-памяти
12 Тестируется CMOS
14 Устанавливаются значения для регистров чипсета
16 Первично инициализируется тактовый генератор
18 Определяется тип процессора, его параметры и объемы кэша L1 и L2
1B Инициализируется таблица векторов прерываний
Проверяются контрольные суммы CMOS и напряжение питания аккумулятора
1D Определяется система управления питанием Power Management
1F Загружается матрица клавиатуры (для ноутбуков)
21 Инициализируется система Hardware Power Management (для ноутбуков)
23 Тестируется математический сопроцессор, дисковод, инициализация чипсета
24 Обновляется микрокод процессора. Создается карта распределения ресурсов устройств Plug and Play
25  Начальная инициализация PCI: перечисляются устройства, поиск адаптера VGA, запись VGA BIOS по адресу C000:0
26 Устанавливается тактовая частота по CMOS Setup. Отключается синхронизация неиспользуемых слотов DIMM и PCI. Инициализируется система мониторинга (H/W Monitor)
27 Разрешается прерывание INT 09h. Снова инициализируется контроллер клавиатуры
29 Программируются регистры MTRR, инициализируется APIC. Программируется контроллер IDE. Измеряется частота процессора. Вызывается расширение BIOS видеосистемы
2B Поиск BIOS видеоадаптера
2D Отображается заставка Award, информация о типе процессора и его скорости
33 Сбрасывается клавиатура
35 Тестируется первый канал DMA
37 Тестируется второй канал DMA
39 Тестируются страничные регистры DMA
3C Настраивается контроллер 8254 (таймер)
3E Проверка контроллера прерываний 8259
43 Проверяется контроллер прерываний
47 Тестируются шины ISA/EISA
49 Вычисляется объем оперативной памяти. Настраиваются регистры для процессора AMD K5
4E Программируются регистры MTRR для процессоров Syrix. Инициализируются кэш L2 и APIC
50 Определяется шина USB
52 Тестируется ОЗУ с отображением результатов. Очищается расширенная память
53 Если выполнена очистка CMOS, то сбрасывается пароль на вход в систему
55 Отображается количество процессоров (для многопроцессорных платформ)
57 Отображается логотип EPA. Начальная инициализация устройств ISA PnP
59 Определяется система защиты от вирусов
5B Вывод подсказки для запуска обновления BIOS с дискеты
5D Запускается контроллер Super I/O и интегрированный аудиоконтроллер
60 Вход в CMOS Setup, если была нажата клавиша Delete
65 Инициализируется мышь PS/2
69 Включается кэш L2
6B Настраиваются регистры чипсета согласно BIOS Setup
6D Назначаются ресурсы для устройств ISA PnP и COM-порты для интегрированных устройств
6F Инициализируется и настраивается контроллер гибких дисков
75 Детектируются и устанавливаются IDE-устройства: жесткие диски, CD/DVD, LS-120, ZIP и др
76 Выводится информация об обнаруженных IDE-устройствах
77 Инициализируются последовательные и параллельные порты
7A Сбрасывается и готовится к работе математический сопроцессор
7C Определяется защита от несанкционированной записи на жесткие диски
7F При наличии ошибок выводится сообщение и ожидается нажатие клавиш Delete и F1
82  Выделяется память для управления питанием и заносятся изменения в таблицу ESCD. Убирается заставка с логотипом EPA. Запрашивается пароль, если нужен
83 Все данные сохраняются из временного стека в CMOS
84 Вывод на экран сообщения Initializing Plug and Play Cards
85 Завершается инициализация USB
87 Создаются таблицы SYSID в области DMI
89 Устанавливаются таблицы ACPI. Назначаются прерывания для PCI-устройств
8B Вызывается BIOS дополнительных ISA- или PCI-контроллеров, за исключением видеоадаптера
8D Устанавливаются параметры контроля четности ОЗУ по CMOS Setup. Инициализируется APM
8F IRQ 12 разрешается для «горячего» подключения мыши PS/2
94 Завершение инициализации чипсета. Отображение таблицы распределения ресурсов. Включение кэша L2. Установка режима перехода на летнее/зимнее время
95 Устанавливается частота автоповтора клавиатуры и состояния Num Lock
96 Для многопроцессорных систем настраиваются регистры (для процессоров Cyrix). Создается таблица ESCD. Устанавливается таймер DOS Time по показаниям часов RTC CMOS. Сохраняются разделы загрузочных устройств для использования встроенным антивирусом. Динамик оповещает об окончании POST. Создается таблица MSIRQ FF Выполняется прерывание BIOS INT 19h. Поиск загрузчика в первом секторе загрузочного устройства

Невыполнение или сбой выполнения любого шага в последовательности тестов приводит к остановке тестирования и выдаче POST — кода соответствующего данному шагу  сбоя.

В мастерских или у занимающихся ремонтом специалистов контроль выполнения микропрограмм BIOS осуществляется с помощью специальной карты расширения. Она вставляется в свободный слот (большинство современных моделей рассчитано на шину PCI) и по мере загрузки отображает на своем индикаторе код выполняемой в текущий момент процедуры.

Однако POST-карта это не широко распространенное средство. Скорее, это инструмент профессионального ремонтника компьютеров. Осознавая данный факт, производители материнских плат стали оснащать модели, рассчитанные на энтузиастов экспериментирующих с настройками и разгоном компьютера, встроенными индикаторами POST-кодов.

Встречается и более дешевое решение — во время начальной инициализации компонентов POST-коды могут отображаться на экране наряду с другой служебной информацией. Правда у этого решения есть существенный недостаток: если проблема связана с видеокартой, вы, скорее всего, ничего не увидите.

Несмотря на то, что POST-коды являются самым мощным инструментом по выявлению аппаратных проблем при старте компьютера, BIOS предоставляет и другие средства диагностики. Если в вашем распоряжении нет POST-карты, а материнская плата не умеет индицировать POST-коды, можно ориентироваться на звуковые сигналы и сообщения об ошибках.

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

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

Надо заметить, что звуковые сигналы и сообщения об ошибках фактически являются более наглядным вариантом отображения определенных POST-кодов, а отнюдь не дополнительным средством диагностики. Если в вашем распоряжении есть POST-карта, либо материнская плата способна отображать POST-коды, ориентироваться надо именно на коды — они дают гораздо более точную и детальную картину. Сравните хотя бы количество POST-кодов (около ста) и количество различных сообщений об ошибках или звуковых сигналов (несколько десятков).

Последовательность звуковых сигналов Описание ошибки
1 короткий Успешный POST
2 коротких Обнаружены незначительные ошибки. На экране монитора появляется предложение войти в программу CMOS Setup Utility и исправить ситуацию. Проверьте надежность крепления шлейфов в разъемах жесткого диска и материнской платы.
3 длинных Ошибка контроллера клавиатуры
1 короткий, 1 длинный Ошибка оперативной памяти (RAM)
1 длинный, 2 коротких Ошибка видеокарты
1 длинный, 3 коротких Ошибка при инициализации клавиатуры или Ошибка видеокарты
1 длинный, 9 коротких Ошибка при чтении из ПЗУ
Повторяющийся короткий Проблемы с блоком питания
Повторяющийся длинный Проблемы с ОЗУ
Повторяющаяся высокая-низкая частота Проблемы с CPU
Непрерывный Проблемы с блоком питания

Вход в BIOS Setup

Вход в BIOS Setup возможен только при включении компьютера и при успешном выполнении первоначального тестировании POST (слышен один короткий сигнал из системного динамика).

Обычно на экранной заставке при тестировании отображается надпись типа «Press DEL to enter Setup» — это означает, что для входа в BIOS Setup необходимо нажать клавишу DEL. Узнать, за которой клавишей закреплен вход в BIOS, можно из инструкции к материнской плате. Если инструкции нет, а экранная заставка не отображает подсказки, можно опробовать наиболее известные варианты комбинаций:

Работа с BIOS Setup связана с определенным риском, поскольку при неправильном или неосторожном изменении параметра система может функционировать нестабильно либо не функционировать вообще. Есть несколько простых советов, которые позволяют свести возможный риск к минимуму:

  • Экспериментировать с настройками BIOS Setup лучше всего на новом не заполненном информацией компьютере;
  • Старайтесь вообще не экспериментировать с BIOS на компьютерах, обрабатывающих или хранящих важную или объемную информацию. Перед настройкой системы с помощью BIOS позаботьтесь о резервном копировании важных данных. Главное в таких компьютерах — стабильность. Подвисший разогнанный компьютер через несколько часов обработки видео — это потеря времени, электроэнергии и результата работы. Неразогнанный справится с данной задачей гораздо эффективнее и сохранит ваши нервы;
  • Прежде, чем изменить важные параметры, всегда фиксируйте выставленное и измененное значение. Это позволит вам в случае нестабильной работы системы вернуть ее в рабочее состояние;
  • Не изменяйте значения параметров, которые вам неизвестны. Уточните их значение либо в инструкции к материнской плате, либо в сети Internet на ресурсе разработчика платы;
  • Не редактируйте за раз несколько важных не связанных между собой параметров. При нестабильной работе системы гораздо сложнее определить, какой параметр вызвал нестабильную работу;
  • Не разгоняйте компьютер без соответствующей изучения работы разгоняемой системы и подготовки;
  • Не используйте раздел Hard Disk Utility, который предназначен для низкоуровневого форматирования устаревших моделей жестких дисков и встречается в старых версиях BIOS, т.к. может вывести из строя современный жесткий диск;
  • Если после выставления параметров и выхода из BIOS компьютер перестает запускаться вообще, вернуть систему в рабочее состояние можно несколькими способами:
    • Если после перезагрузки компьютера возможно войти в BIOS Setup, нужно установить прежние значения отредактированных параметров. Некоторые версии BIOS сами осуществляют откат изменений за последнюю сессию.
    • Если сделанные изменения неизвестны, то лучше воспользоваться параметрами по умолчанию, использовав команду Load Fail-Safe Defaults. После этого придется настраивать систему на оптимальную работу.
    • Если компьютер вовсе не запускается из-за неправильных настроек BIOS, то в таком случае необходимо обнулить содержимое CMOS. При этом все значения включая дату/время будут изменены. Для этого сбросить неправильные установки, для этого просто переместить перемычку Flash Recovery (IBM)или джампер Clearing CMOS в положение «очистка CMOS«. В последнем случае нужно просто замкнуть перемычкой на несколько минут контакты соответствующего джампера.
    • В случае неудачных результатов настройки Setup BIOS, необходимо после сброса неудачной конфигурации с помощью джампера в процедуре Setup BIOS продублировать возвращение загрузку значений BIOS по умолчанию с помощью команды «Load Fail-Safe Defaults«. Ваша система вернется в исходное состояние.

В Award BIOS 6.0 это строка меню Setup BIOS — «Load Optimized Defaults«или «Load Fail-Safe Defaults» в этом случае загружается исходная настройки Setup BIOS.

При полном или частичном использованииматериалов ссылка на «www.electrosad.ru» обязательна.
Ваши замечания, предложения, вопросы можно отправить автору через
гостевую книгу или
почтой.