При включении питания компьютера информация считывается из

Обновлено: 03.07.2024

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

Основой компьютера является материнская плата , к которой подключаются все остальные устройства.

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

BIOS — Basic Input/Output System — (Базовая Система Ввода/Вывода) — первичный программный код, который записан в постоянное запоминающее устройство, находящееся на материнской плате. По своей сути BIOS это первичный язык (азбука) компьютера, который позволяет ему обнаруживать все внутренние подключенные к материнской плате устройства, работать с ними, а также содержит первичные базовые команды, которые позволяют компьютеру осуществлять загрузку более серьезного программного обеспечения.

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

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

Оперативная память сохраняет информацию только при поддержке питания. При обесточивании, вся информация из оперативной памяти безвозвратно исчезает. Оперативная память работает в паре с процессором и от её объема зависит продуктивность процессора. К примеру, если требуется обработать файл, который может быть целиком загружен в оперативную память, он будет обработан в ней процессором, а потом сохранен на жесткий диск.

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

Жесткий диск в обиходе имеет несколько названий. Иногда его называют HDD — сокращение от Hard Disk Drive, а также можно услышать: Винчестер, Винт, Хард или Хард-диск . Жесткий диск является постоянным запоминающим устройством, которое способно хранить информацию даже при полном отключении электроэнергии.

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

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

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

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

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

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

CD/DVD-ROM это устройство чтения компакт-дисков формата CD или DVD. Устройство используется для воспроизведения (чтения) аудио или видеофайлов, просмотра фотоальбомов, а также — установки операционной системы с загрузочного компакт диска на жесткий диск компьютера. Помимо чтения дисков, такое устройство может производить запись на CD или DVD диск.

Порты USB универсальные порты, которые были разработаны для подключения к компьютеру различных внешних устройств: смартфон, цифровая камера, флеш-накопители, мышь, клавиатура, съемные жесткие диски, устройства беспроводной связи и многое другое. При подключении устройства к порту USB, устройство сообщает компьютеру свою модель и другие исходные данные, которые позволяют компьютеру "найти общий язык" и работать с подключенным устройством.

Использование стандарта USB широко применяется в ноутбуках. Как правило, ноутбук может иметь два и более внешних порта USB, доступных пользователю. На самом же деле, таких портов гораздо больше, они находятся внутри ноутбука, не имеют стандартного внешнего разъема, поскольку, к ним постоянно подключены второстепенные внутренние устройства ноутбука: веб-камера, тачпад, встроенный микрофон, встроенные модули Wi-Fi и Bluetooth, а также устройства чтения карт памяти. Использование стандарта USB широко применяется в ноутбуках. Как правило, ноутбук может иметь два и более внешних порта USB, доступных пользователю. На самом же деле, таких портов гораздо больше, они находятся внутри ноутбука, не имеют стандартного внешнего разъема, поскольку, к ним постоянно подключены второстепенные внутренние устройства ноутбука: веб-камера, тачпад, встроенный микрофон, встроенные модули Wi-Fi и Bluetooth, а также устройства чтения карт памяти.

Принцип работы

При включении питания компьютера, в первую очередь, блок питания подаёт напряжение на материнскую плату, а через неё уже на все прочие устройства компьютера. Следующим этапом происходит чтение информации из постоянного запоминающего устройства BIOS, что позволяет компьютеру обнаружить все внутренние устройства, которые к нему подключены. В соответствии с настройками BIOS производится загрузка с дискеты, компакт-диска, запоминающего устройства подключенного к USB-порту или HDD.

В классической настройке BIOS приоритеты были расставлены следующим образом: В первую очередь производится загрузка с диска "A" или "B" - эти буквы всегда отводились под дискету (флоппи-диск). Если указанные дисководы пусты, осуществить загрузку с диска "C" - Жесткий диск компьютера. Позже, когда дискеты практически вышли из обихода, настройку BIOS изменили. Приоритет загрузки отдали устройству чтения компакт-дисков CD-ROM. Если в этом устройстве нет диска, произвести загрузку, опять же, с диска "C". Подобная настройка BIOS позволяла без лишних хлопот установить операционную систему с загрузочного диска. Достаточно было вставить компакт-диск с установочными файлами операционной системы в дисковод, и компьютер начинал загружаться с компакт-диска, выходил в режим установки операционной системы. Позже, когда компьютеры стали продаваться с уже заранее установленной операционной системой, настройку BIOS поменяли и принудили компьютер в любом случае загружаться с диска "C", игнорируя другие устройства. Итак, загрузив BIOS, определив подключенные устройства, компьютер начинает загрузку операционной системы. В большинстве случаев это происходит с жесткого диска "C" или из раздела "C" находящегося на жестком диске. Помимо загрузки самой операционной системы, производится загрузка всех необходимых драйверов для обнаруженных устройств, подключенных в данный момент к компьютеру. В процессе работы, компьютер четко следует заданному алгоритму.

Говоря простым языком, компьютер четко выполняет инструкции, которые написаны для него человеком (программистом). Компьютер не может ошибаться, это было исключено ещё на заре развития кибернетики. Частично поврежденные элементы исключаются из работы. Либо, если повреждения значительны, компьютер отказывается работать совсем. Таким образом, все ошибки, возникающие в работе компьютера, полностью лежат на совести программиста. Если программа была написана с нарушением компьютерной грамматики, компьютер, обнаружив ошибку, откажется выполнять программу. Однако, чаще бывает, что программа написана безукоризненно, но содержит логическую ошибку, которую компьютер обнаружить не способен. Говоря простым языком, все команды написаны верно, но среди них отсутствует необходимая, либо присутствует команда, которая противоречит другой команде. Тогда компьютер берется выполнять программу, пока не дойдет до ошибки, где и происходит сбой в работе или зависание. Чаще всего, ошибки возникают по той причине, что программы были написаны разными программистами, которые не могли учесть всех тонкостей, не зная заранее — что написано другим.

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

Двоичный код

Двоичный код, как система сохранения данных, появился очень давно. Известно, что ещё во времена древних инков использовался данный принцип передачи информации. На верёвке завязывались узелки, которые означали единицу, а отсутствие узелка означало ноль. Позже система была забыта, но с появлением электроники, снова возродилась. Чтобы найти золотую середину, необходимо познать обе крайности. Это правило актуально и для электроники.

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

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

Инженеры пошли более простым и безошибочным путем. Наличие сигнала, в определенный промежуток времени, стали рассматривать — как единицу, отсутствие сигнала, за такой же промежуток времени, взяли за ноль. Таким образом, сформировалась основа двоичного кода, которой присвоили обобщенное название бит . Для этого случая вполне справедлива поговорка: Отсутствие результата — тоже результат . И действительно, в двоичном коде, единица это один бит информации. Ноль (отсутствие сигнала) также является одним битом информации.

Один бит (ноль или единица) занимает одну ячейку памяти. Правда, из одного бита информации, даже из двух — много пользы не выжмешь. Можно поиграть с их чередованием. Скажем, выражение 00 имеет одно значение, выражению 01 можно присвоить — другое, следовательно, появляется возможность записать ещё два значения: 10 и 11. Всего четыре комбинации из двух битов.

Этого явно недостаточно для передачи и сохранения сложной информации. Если же использовать не два, а три бита, то возможных вариантов становится уже не четыре, а восемь: 000, 001, 010, 100, 101, 110, 011, 111. Увеличение количества бит всего на один — увеличивает количество возможных вариантов вдвое. Использование восьми бит даёт уже 256 вариантов комбинаций и этого вполне достаточно для того, чтобы присвоить каждому варианту свой собственный символ или определенную команду. Получается, что восемь бит уже могут иметь определенное значение и смысл. По этой причине, запись, состоящая из восьми бит, получила название байт .

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

Для конкретизации изложения рассмотрим процесс загрузки компьютера, оснащенного материнской платой, на которой установлен BIOS AWARD и Intel-совместимый микропроцессор, а в качестве ОС - Windows 98.

После нажатия кнопки Power источник питания выполняет самотестирование. Если все напряжения соответствуют номинальным, источник питания спустя 0,1. 0,5 с выдает на материнскую плату сигнал PowerGood, а специальный триггер, вырабатывающий сигнал RESET, получив его, снимает сигнал сброса с соответствующего входа микропроцессора. Следует помнить, что сигнал RESET устанавливает сегментные регистры и указатель команд в следующие состояния (неиспользуемые в реальном режиме биты не указываются): CS = FFFFh; IP = 0; DS = SS = ES = 0 и сбрасывает все биты управляющих регистров, а также обнуляет регистры арифметическо-логического устройства. Во время действия сигнала RESET все тристабильные буферные схемы переходят в высокоимпендансное состояние. С момента снятия этого сигнала микропроцессор начинает работу в реальном режиме и в течение примерно 7 циклов синхронизации приступает к выполнению инструкции, считываемой из ROM BIOS по адресу FFFF:0000. Размер области ROM BIOS от этого адреса до конца равен 16 байт, и в ней по указанному адресу записана команда перехода на реально исполняемый код BIOS. В этот момент процессор не может выполнять никакую другую последовательность команд, поскольку нигде в любой из областей памяти, кроме BIOS, ее просто не существует. Последовательно выполняя команды этого кода, процессор реализует функцию начального самотестирования POST (Power-On Self Test). На данном этапе тестируются процессор, память и системные средства ввода/вывода, а также производится конфигурирование программно-управляемых аппаратных средств материнской платы. Часть конфигурирования выполняется однозначно, другая часть может определяться положением джамперов (перемычек или переключателей) системной платы, но ряд параметров возможно (а иногда и необходимо) устанавливать пользователю. Для этих целей служит утилита Setup, встроенная в код BIOS. Параметры конфигурирования, установленные с помощью этой утилиты, запоминаются в энергонезависимой памяти, питаемой от миниатюрной батарейки, размещенной на материнской плате. Часть из них всегда хранится в традиционной CMOS Memory, объединенной с часами и календарем RTC (Real Time Clock). Другая часть (в зависимости от фирмы-производителя) может помещаться и в энергонезависимую (например, флэш) память (NVRAM). Кроме этой части статически определяемых параметров, имеется область энергонезависимой памяти ESCD для поддержки динамического конфигурирования системы Plug and Play, которая может автоматически обновляться при каждой перезагрузке компьютера.

Утилита BIOS Setup имеет интерфейс в виде меню или отдельных окон, иногда даже с поддержкой мыши. Для входа в Setup во время выполнения POST появляется предложение нажать клавишу DEL. В других типах BIOS (в отличие от указанного выше) для этого может использоваться сочетание клавиш Ctrl+Alt+Esc, Ctrl+Esc, клавиша Esc, бывают и другие варианты (например, нажать клавишу F12 в те секунды, когда в правом верхнем углу экрана виден прямоугольник). В последнее время появились версии BIOS, в которых вход в Setup осуществляется нажатием клавиши F2, однако чаще клавиши F1 или F2 используются для вызова меню Setup, если POST обнаружит ошибку оборудования, которая может быть устранена сменой начальных установок. Для некоторых BIOS удержание клавиши INS во время POST позволяет установить настройки по умолчанию, отменяя все "ускорители". Это бывает удобно для восстановления работоспособности компьютера после попыток его неудачного "разгона". Выбранные установки сохраняются при выходе из Setup (по желанию пользователя) и начинают действовать с момента следующего выполнения POST.

При выполнении каждой подпрограммы POST записывает ее сигнатуру (код) в диагностический регистр. Этот регистр физически должен располагаться на специальной плате диагностики (сигнатурном анализаторе, или так называемой POST-карте), устанавливаемой в слот системной шины при анализе неисправности. Такие POST-карты бывают в двух исполнениях: для шин ISA и PCI. На данной плате обязательно устанавливается двухразрядный семисегментный индикатор, высвечивающий содержимое регистра диагностики. Возможно также наличие двоичного индикатора адреса. В пространстве ввода/вывода регистр занимает один адрес, зависящий от архитектуры РС (версии BIOS). Например, для ISA, EISA - 80h; ISA Compaq - 84h; ISA-PS/2 - 90h; для некоторых моделей EISA - 300h; MCA-PS/2 - 680h. Имея в наличии подобный сигнатурный анализатор по индицируемым кодам, можно определить, на каком этапе остановился POST. Зная специфическую таблицу сигнатур для каждой версии BIOS, легко определить неисправность системной платы.

Перечислим в порядке выполнения основные тесты POST для BIOS AWARD V4.51 и их сигнатуры, высвечиваемые POST-картой на индикаторе регистра диагностики. Следует отметить, что далеко не все перечисленные ниже коды видны на индикаторе в процессе нормальной загрузки компьютера: некоторые высвечиваются лишь в том случае, если POST останавливается. Происходит это потому, что многие подпрограммы POST исполняются настолько быстро, что человеческий глаз не в состоянии уследить за индицируемым состоянием регистра диагностики, а некоторые коды появляются только при обнаружении неисправности. Для указанной версии BIOS первой исполняемой сигнатурой в последовательности POST является C0:

C0 - осуществляется программирование регистров микросхемы Host Bridge для установки следующих режимов:

запрещается Internal и External Cache, а также операции с кэш-памятью;

перед запретом Internal Cache очищается;

Shadow RAM запрещается, вследствие чего происходит направление непосредственно к ROM циклов обращения к адресам расположения System BIOS. Эта процедура должна соответствовать конкретному чипсету;

далее программируются РIIХ ресурсы: контроллер DMA, контроллер прерываний, таймер, блок RTC. При этом контроллер DMA переводится в пассивный режим.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

B0 - это состояние записывается в регистр сигнатурного анализатора только в случае наличия ошибок, например, при тесте Extended Memory. Если при работе в Protected Mode сбои отсутствуют, то POST не включает эту ветвь. При наличии страничных нарушений и других исключительных ситуаций управление будет передано на эту процедуру, она выведет код B0 в порт 80(84)h и остановится.

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

Порядок поиска загрузочного диска на компьютерах x86 (FDD, жесткие диски IDE и SCSI, устройства CD-ROM) задает BIOS. Современные BIOS позволяют переконфигурировать этот порядок, называемый последовательностью загрузки (boot sequence). Если при этом дисковод A: включен в последовательность загрузки первым и в нем находится дискета, BIOS попытается использовать эту дискету в качестве загрузочной. Если дискеты в дисководе нет, BIOS проверяет первый жесткий диск, который к этому времени уже инициализировался, и выполняет команду INT19h. Процедура обработки прерывания INT19h для загрузки BOOT-сектора должна прочитать сектор с координатами Cylinder:0 Head:0 Sector:1 и поместить его по адресу 0000:7С00h, после чего осуществляется проверка, является ли диск загрузочным. Сектор MBR (Master Boot Record - главная загрузочная запись) на жестком диске находится по тому же физическому адресу, что и BOOT-сектор на дискете (цилиндр 0, сторона 0, сектор 1).

На следующем этапе IO.SYS считывает информацию из системного реестра, а также исполняет файлы CONFIG.SYS и AUTOEXEC.BAT (при их наличии в корневом каталоге). При этом загружаются драйверы устройств, работающих в реальном режиме работы процессора, выполняются некоторые системные установки. Ниже приводится неполный список возможных драйверов и программ, загружаемых на данном этапе.

DBLSPACE.BIN или DRVSPACE.BIN. Драйвер сжатия дисков.

HIMEM.SYS. Администратор верхней памяти в реальном режиме работы процессора.

IFSHLP.SYS. Оказывает содействие при загрузке VFAT и прочих файловых систем, поддерживающих Windows 98.

SETVER.EXE. Утилита, подменяющая номер версии операционной системы. Существуют программы, ориентированные на более ранние версии операционных систем и отказывающиеся функционировать под Windows 98. Благодаря SETVER.EXE подобной программе возвращается именно тот номер версии DOS, который ее устраивает.

DOS=HIGH. Загружает DOS в область памяти HMA. Если в файле конфигурации CONFIG. SYS содержится инструкция для загрузки администратора отображаемой памяти EMM386.EXE, в эту строку добавляется параметр UMB, позволяющий EMM386.EXE использовать верхнюю память.

Нужно помнить, что IO.SYS не загружает администратор EMM386.EXE автоматически. Поэтому, если планируется его использование, в файл CONFIG.SYS необходимо вставлять строку DEVICE=EMM386.EXE.

FILES=30. В этой строке определяется число создаваемых дескрипторов файла. Windows 98 не использует это параметр; он включен для совместимости с предыдущими версиями программ.

LASTDRIVE=Z. Здесь определяется последняя буква для логических дисков. Эта опция также введена для обратной совместимости и не используется Windows 98.

BUFFER=30. Определяет число создаваемых файловых буферов. Буферы файлов используются приложениями при вызовах подпрограмм ввода/вывода из файла IO.SYS.

STACKS=9,256. Этой записью определяется число кадров стека и размер каждого кадра.

FCBS=4. Данная команда задает число блоков управления файлом. Оба последних параметра применяются только для обратной совместимости.

На последнем этапе загружается и запускается файл WIN.COM. Он обращается к файлу VMM32.VXD. Если в компьютере установлен достаточный объем ОЗУ, то этот файл загружается в память, в противном случае организуется доступ к этому файлу на жестком диске, что, естественно, увеличивает время загрузки. Загрузчик драйверов реального режима сравнивает копии виртуальных драйверов устройств (VxD) в папке Windows/System/VMM32 и файле VMM32.VXD. Если виртуальный драйвер устройства существует и в папке, и в файле, копия виртуального драйвера "помечается" в файле VMM32.VXD как незагружаемая. Виртуальные драйверы устройств, не загруженные с помощью файла VMM32.VXD, загружаются из раздела [386 Enh] файла SYSTEM.INI папки Windows. Во время описанного процесса загрузчик драйверов виртуальных устройств реального режима постоянно проверяет правильность загрузки всех необходимых виртуальных драйверов устройств, а при появлении ошибки при загрузке нужного драйвера он пытается выполнить эту операцию еще раз. После загрузки виртуальные драйверы устройств реального режима инициализируются, затем файл VMM32.VXD переключает процессор в защищенный режим, и начинается процесс инициализации виртуальных драйверов устройств согласно их параметру InitDevice. Процедура загрузки ОС заканчивается загрузкой файлов KRNL32.DLL, GDI.EXE, USER.EXE и EXPLORER.EXE. Если компьютер подключен к сети, то загружается сетевое окружение. Пользователю предлагается ввести имя и пароль для входа в сеть. Затем из системного реестра загружается конфигурация с параметрами, установленными по умолчанию. На последней фазе загрузки операционной системы производится обработка содержимого папки Startup (Автозагрузка) и запускаются указанные в ней программы. После этого ОС готова к работе.

Существует несколько стандартных способов, позволяющих видоизменить описанную выше процедуру запуска:

- при исполнении POST на этапе проверки памяти и инициализации загрузочных устройств нажать кнопку клавиатуры DEL для входа в программу Setup;

- вставить перед окончанием теста оборудования загрузочный диск (например, аварийный диск Windows 98);

- внести исправления в файл CONFIG.SYS;

- отредактировать файл AUTOEXEC.BAT.

Помимо них, Windows 98 предоставляет ряд менее очевидных методов для выполнения этой же задачи:

- после завершения теста оборудования клавишей F8 вызвать меню Startup;

- отредактировать инструкции запуска системы в файле MSDOS.SYS;

- использовать один из перечисленных методов для "остановки" в режиме DOS, после чего запустить Windows из командной строки с набором необходимых ключей;

Компьютерная газета. Статья была опубликована в номере 44 за 2000 год в рубрике hard :: pc

Вы включили компьютер, появляется текстовый экран загрузки на котором быстро мелькают цифры и буквы. Обычно, компьютер работает нормально, и Вы не обращаете внимание на них. Но это важная часть работы компьютера в процессе которой работают микропрограммы встроенные в 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-устройство, сетевая карта (при загрузке по сети)

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

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

Последовательность загрузки стандартного IBM-совместимого персонального компьютера

После включения персонального компьютера его процессор еще не начинает работу.

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

После этого чипсет формирует сигнал сброса центрального процессора, по которому очищаются регистры процессора, и он запускается.

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

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

Таким образом, его работа — последовательно читать и выполнять команды из памяти.

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

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

Процедура самотестирования POST состоит из нескольких этапов.

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

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

Что такое POST-коды?

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

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

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

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

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

Award BIOS 6.0: вариант полной загрузки

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

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

POST - коды других производителей можно найти на сайтах производителя Вашей системной платы или производителя DIOS или в Internet .

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

Примером может быть Post карта PCI BM9222 .

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

Примером может быть системная плата ECS H67H2-M , или модели X58 Extreme3, P55 Deluxe3 и 890GX Extreme3 .

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

Но для этого необходимо, чтобы в корпусе ПК имел системный динамик и он был подключен к системной платы.

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

Процедура Setup

Для этого необходимо нажать определенную клавишу или сочетание клавиш.

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

Delete
Esc
Ctrl + Shift + S или Ctrl + Alt + S
Ctrl + Alt + Esc
Ctrl + Alt + Delete

Безопасная работа с BIOS Setup

Работа с 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 .

    Собственный BIOS имеется и на других платах устанавливаемых в компьютер, например:

    • видеоадаптерах;
    • SCSI адаптеры;
    • сетевые адаптеры и других.

    Сборка А. Сорокин

    2. Модернизация и ремонт ПК, 15-е издание, Пер. с англ, М, изд. дом "Вильямс" 2005

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

    Дело в том, что бумажная ленточка постепенно изнашивалась, начинала плохо читаться, и ЭВМ могла с первого раза «не завестись». В этом случае процесс нужно было повторять, порой несколько раз, до победного конца. Когда ленточка окончательно выходила из строя и машина никак не хотела «оживать», приходилось временно вводить программу начальной загрузки вручную при помощи расположенных на передней панели переключателей. Тут, главное, было не торопиться и не делать ошибок.

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

    Основные определения и этапы загрузки операционной системы

    boot-os

    Включение компьютера, POST, BootMonitor

    Загрузчик 1-го уровня. Master Boot Record

    Главной задачей программы, записанной в MBR, является поиск активного системного раздела диска и передача управления его загрузочному сектору. Таким образом, эту стадию можно назвать подготовительной, в силу того, что непосредственно загрузки самой ОС еще не происходит.

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

    Загрузчик 2-го уровня. Partition Boot Sector

    Начальный этап загрузки операционной системы. Менеджер загрузки ОС

    Первоначально в Linux загрузчиком являлся LILO (Linux Loader). В силу имевшихся в нем недостатков, главным из которых была неспособность понимать используемые в Linux файловые системы, позднее начал использоваться загрузчик GRUB (GRand Unified Bootloader) в котором недостатки LILO были исправлены.

    Если речь идет о версиях Windows до Vista, например, Windows XP, то будет загружен Ntldr. Он, в свою очередь, считывает информацию из текстового файла Boot.ini, в котором записана информация об установленных операционных системах.

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

    Завершающим этапом загрузки операционной системы является загрузка ядра ОС и передача ему управления.

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

    Особенности загрузки операционных систем Windows Vista / 7 / 8

    В Windows Vista или Windows 7 / 8 диспетчер загрузки называется Bootmgr. Он читает список установленных операционных систем не из простого текстового файла, коим является boot.ini, а из системного хранилища BCD (Boot Configuration Data), доступ к которому осуществляется посредством специальной утилиты bcdedit.exe .

    Но это еще не все. Откроем “Управление компьютером” –> “Управление дисками” >

    w7-partition

    Процесс стандартной инсталляции операционной системы Windows Vista / 7 / 8 создает в начале диска дополнительный раздел «Зарезервировано системой». Ему не присваивается буква диска, благодаря чему, если не сделать дополнительных шагов, и сам раздел и его содержимое будут скрыты от пользователя. Этот основной раздел имеет статус «Системный» и «Активный» и, следовательно, удалить его тоже нельзя.

    В Windows 7 размер такого раздела составляет 100 МБ, из которых занято около 30 МБ, в Windows 8 – уже 350 МБ, причем занято из них 105 МБ. Такая разница объясняется тем, что в Windows 8 на этот раздел перенесена папка “Recovery”.

    Посмотрим содержимое раздела «Зарезервировано системой». Для этого назначим ему букву диска, например, «W» в “Управление дисками”. Дополнительно откроем «Панель управления» –> «Параметры папок» и на вкладке «Вид» снимем галку с «Скрывать защищенные системные файлы» и поставим отметку на «Показывать скрытые файлы, папки и диски».

    w7-hf

    Если в системе установлен файловый менеджер FAR Manager, то для просмотра можно воспользоваться им и не заниматься настройкой видимости скрытых файлов.

    Так выглядит содержимое раздела «Зарезервировано системой» в Windows 8 >

    Как и ожидалось, в корне раздела мы видим загрузчик Bootmgr.

    А так выглядит часть содержимого папки «Boot» >

    В папке мы находим базу хранилища данных конфигурации загрузки BCD и сопутствующие ей папки с языковыми файлами и файлами шрифтов.

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

    Главной задачей загрузчика 3-го уровня, в роли которого выступает, в зависимости от типа ОС, Bootmgr, Ntldr или GRUB, является чтение с загрузочного диска и загрузка ядра операционной системы. Кроме того, в случае множественной загрузки, когда на компьютере установлено несколько операционных систем, загрузчик 3-го уровня позволяет выбирать нужную при каждом запуске компьютера.

    Добавить к этому практически нечего и можно переходить непосредственно к редактированию загрузочного меню. Начнем с загрузочного меню Windows.

    Читайте также: