Процесс загрузки персонального компьютера — База полезных знаний

Процесс загрузки персонального компьютера - База полезных знаний Компьютер

Вступление

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

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

Для кого-то это может быть новостью, но в действительности Windows не отвечает за загрузку компьютера «от и до», она лишь продолжает ее на определенном этапе и заканчивает. Ключевым же игроком здесь выступает совершенно другая микропрограмма – BIOS, о назначении и основных функциях которой мы поговорим в этом материале.

Что такое bios и зачем она нужна

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

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

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


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

Слово BIOS (БАйОС) является аббревиатурой от четырех английских слов Basic Input/Output System, что в переводе на русский означает: «Базовая система ввода/вывода». Такое название получил набор микропрограмм, отвечающих за работу базовых функций видеоадаптеров, дисплеев, дисковых накопителей, дисководов, клавиатур, мышей и других основных устройств ввода/вывода информации.

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

Где хранится bios и что такое cmos

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

В самых первых компьютерах для хранения BIOS использовались микросхемы постоянной памяти (ПЗУ или ROM), запись на которые самого кода программы единожды осуществлялась на заводе. Несколько позже стали использовать микросхемы EPROM и EEROM, в которых имелась возможность в случае необходимости осуществлять перезапись BIOS, но только с помощью специального оборудования.

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

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

Флэш-память для хранения BIOS может иметь различную емкость. В прежние времена этот объем был совсем небольшим и составлял не более 512 Кбайт. Современные же версии программы стали несколько больше и имеют объем в несколько мегабайт. Но в любом случае на фоне современных приложений и мультимедийных файлов это просто мизер.


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

Помимо флэш-памяти, в которой хранится сама BIOS, на системной плате существует и еще один вид памяти, который предусмотрен для хранения настроек конфигурации этой программы. Изготавливается он с применением комплементарного метало-оксидного полупроводника или CMOS (Complementary Metal Oxide Semiconductor).

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

Процедура post и первоначальная загрузка пк


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

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

В самом начале процессор получает команду на проведение самотестирования компонентов компьютера (POST — Power-On Self-Test). Процедура POST включает в себя несколько этапов, прохождение большинства которых вы можете наблюдать на экране ПК сразу после его включения. Последовательность происходящего перед началом загрузки операционной системы такова:

1.   Сначала происходит определение основных системных устройств.

2.   Далее осуществляется инициализация установленной оперативной памяти, запись в нее BIOS и проверка микропрограммы на целостность данных.

3.   Третий шаг — настройка набора системной логики, или проще говоря, чипсета.

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

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

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

7.   Следом начинается тестирование оперативной памяти. Если все проходит удачно, то на экран выводится общий установленный объем ОЗУ с надписью ОК.

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

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

Экран определения контроллера Serial ATA, имеющего собственный BIOS, с выводом всех подключенных к нему устройств.

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

11.   Наконец, если процедура POST прошла успешно, BIOS начинает поиск в подключенных накопителях Главной Загрузочной Области (MBR), где содержатся данные о запуске операционной системы и загрузочном устройстве, которому необходимо передать дальнейшее управление.


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

Что такое uefi bios

Базовые принципы работы системной BIOS для настольных компьютеров были сформированы в далеких 80-ых годах прошлого века. За прошедшие десятилетия компьютерная индустрия бурно развивалась  и за это время постоянно случались ситуации, когда новые модели устройств оказывались несовместимыми с определенными версиями BIOS.

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

В 2022 году, с запуском в производство материнских плат для процессоров Intel поколения Sandy Bridge, устанавливающихся в разъем LGA1155, началось массовое внедрение нового программного интерфейса для начальной загрузки компьютера — UEFI.

На самом деле первая версия данной альтернативы обычной BIOS была разработана и успешно использована компанией Intel в серверных системах еще в конце 90-ых годов. Тогда, новый интерфейс для начальной загрузки ПК назывался EFI (Extensible Firmware Interface)

Как видите, производители системных плат не особо спешили переходить к новому стандарту, до последнего пытаясь совершенствовать традиционные вариации BIOS. Но очевидная отсталость этой системы, включая ее 16-битный интерфейс, не возможность использовать более 1 Мб адресного пространства памяти, отсутствие поддержки накопителей объемом более 2 Тб и другие постоянные неразрешимые проблемы совместимости с новым оборудованием все же стали серьезным аргументом для перехода на новое программное решение.

Какие же изменения принес с собой новый загрузочный интерфейс, предложенный Intel и в чем его отличия от BIOS? Как и в случае с BIOS, основной задачей UEFI является корректное определение оборудования сразу после включения ПК и передача управления компьютером операционной системе. Но при этом, перемены в UEFI настолько глубоки, что сравнивать ее с BIOS было бы просто некорректно.

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

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

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

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

Еще одной ключевой особенностью UEFI является возможность работы с жесткими дисками огромных объемов, размеченных по стандарту GPT (Guid Partition Table). Последний не поддерживается ни одной модификацией BIOS, так как имеет 64-битные адреса секторов.

Загрузка ПК на базе UEFI, как и в случае с BIOS, начинается с инициализации устройств. Но при этом, данная процедура происходит гораздо быстрее, так как UEFIможет определять сразу несколько компонентов одновременно в параллельном режиме (BIOSинициализирует все устройства по очереди).

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

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

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

На сегодняшний день в полной мере использовать возможности UEFI позволяет только Windows 8. Ограниченную поддержку нового интерфейса имеют 64-разрядные версии Windows 7, Vista и Linux на ядре 3.2 и выше. Так же возможности UEFI используются в загрузочном менеджере BootCamp компанией Apple в собственных системах Mac OS X.

Ну а как же происходит загрузка компьютера с UEFI, если на нем используются неподдерживаемая операционная система (WindowsXP,  32-битная Windows 7) или файловая разметка (MBR)? Для таких случаев в новый загрузочный интерфейс встроен модуль поддержки совместимости (Compatibility Support Module), по сути, представляющий из себя традиционную BIOS.

Именно поэтому, можно видеть, как многие современные компьютеры, оснащенные системными платами с UEFI, загружается традиционным способом в режиме эмуляции BIOS. Чаше всего это происходит потому, что их владельцы продолжают использовать разделы HDD с традиционной MBR и не хотят переходить к разметке GPT.

Аппаратные устройства, взаимодействующие с компьютером

После загрузки операционной системы на компьютер аппаратное обеспечение, подключенное к компьютеру, должно иметь возможность взаимодействовать с процессором. Аппаратная связь осуществляется с помощью запроса на прерывание (IRQ). Контроллер прерываний отправляет запрос (INTR) в центральный процессор, чтобы остановить то, что он делает для обработки нового аппаратного запроса.

Включение питания компьютера

При первом нажатии кнопки питания компьютер посылает сигнал на источник питания компьютера, который преобразует переменный ток (AC (alternating current)) в постоянный (DC (direct current)). Это питание обеспечивает компьютер и его компоненты необходимым питающим напряжением и электрической мощностью.

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

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

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

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

BIOS сначала передает управление первичному загрузчику (bootstrap loader), который просматривает загрузочный сектор первого загрузочного устройства (жесткого диска, SDD, DVD, флэш-накопителя).  Если очерёдность загрузки в настройках CMOS не изменена.

В этом примере Microsoft Windows 10 Bootmgr (диспетчер загрузки Windows) находится в загрузочном секторе. Он сообщает компьютеру, где найти оставшийся код на жестком диске или SDD. Затем загружается Windows, начиная с заставки Windows и загрузки реестра Windows.

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

загрузка Windows 10
Заставка запуска Windows 10

После загрузки реестра, начальных базовых аппаратных устройств, загрузчик Windows подхватывает устройства plug and play, устройства PCI. После загрузки всех этих устройств, Windows устанавливает полную поддержку жесткого диска, разделов и любых других дисков и переходит ко всем другим установленным драйверам.

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

Программа настройки bios

BIOS является конфигурируемой системой и имеет собственную программу настройки некоторых параметров оборудования ПК, называемую BIOS Setup Utility или CMOS Setup Utility. Вызывается она нажатием специальной клавиши во время проведения процедуры самотестирования POST. В настольных компьютерах чаще всего для этой цели используется клавиша Del, а в ноутбуках F2.

Графический интерфейс утилиты конфигурирования оборудования очень аскетичен и практически не изменился с 80-ых годов. Все настройки здесь осуществляются только с помощью клавиатуры — работа мыши не предусмотрена.

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

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

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

Разработка bios и обновление


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

Разработку BIOS можно разделить на два этапа. Сначала создается базовая версия микропрограммы, в которой реализовываются все функции, вне зависимости от модели чипсета. На сегодняшний день, разработкой подобных версий занимаются в основном компании American Megatrends (AMIBIOS)

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

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

Заключение

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

Но при этом говорить о полном отказе в ближайшее время от базовой системы ввода/вывода пока преждевременно. В первую очередь нужно вспомнить, что до сих пор большинство компьютеров находятся под управлением WindowsXP и 32-битной Windows 7, которые не поддерживаются UEFI.

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

Оцените статью
OverComp.ru