Как поставить загрузку с диска | remontka.pro

Как поставить загрузку с диска | remontka.pro Компьютер

Что такое 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.

Немного истории

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

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

Данный пример основан на начальном загрузчике одного из миниов, выпущенного в 1970-х годах фирмой Nicolet Instrument Corporation.

Длина загрузчика второго уровня была такой, что последний байт загрузчика изменял команду, расположенную по адресу 6. Таким образом, после выполнения пункта 5 стартовал загрузчик второго уровня. Загрузчик второго уровня ожидал заправки в устройство считывания перфолент длинной перфоленты, содержащей операционную систему.

Некоторые операционные системы, наиболее характерными из которых являются старые (до 1995 года) операционные системы компьютеров Macintosh производимых Apple Computer, настолько тесно связаны с аппаратным обеспечением компьютеров, что на данных компьютерах невозможно загрузить какую-либо другую операционную систему.

В данных случаях обычно разрабатывается начальный загрузчик, который работает как загрузчик стандартной ОС, а затем передает управление альтернативной операционной системе. Apple использовала данный способ для запуска A/UX версию Unix, а затем он использовался различными бесплатными операционными системами.

Источник

Bootmgr

BOOTMGR – это более новая версия загрузчика, используемая Microsoft Windows, и она впервые была представлена ​​в бета-версиях Windows Vista (кодовое имя Windows Longhorn). В настоящее время он используется в Windows 7 и Windows 10, а также в Windows Server 2008 и Windows Server 2022.

BOOTMGR ознаменовал значительный отход от NTLDR. Это автономный загрузчик с множеством дополнительных возможностей, специально разработанный для совместимости с новыми функциями в современных операционных системах и разработанный с учетом EFI и GPT (хотя только определенные версии BOOTMGR поддерживают загрузку Windows с GPT-диска или в UEFI/EFI конфигурацию).

В отличие от NTLDR, BOOTMGR хранит свою конфигурацию в файле, называемом BCD – сокращение от Boot Configuration Database. В отличие от BOOT.INI, BCD-файл представляет собой двоичную базу данных, которую нельзя открыть и отредактировать вручную. Вместо этого его можно открыть для чтения и изменить список операционных систем.

GRUB был преимущественно используемым загрузчиком для Linux в 1990-х и начале 2000-х годов, предназначенным для загрузки не только Linux, но и любой операционной системы, реализующей спецификацию открытой мультизагрузки для своего ядра. Файл конфигурации GRUB, содержащий список операционных систем в формате пробелов, часто назывался menu.lst или grub.lst и находился в каталоге / boot / или / boot / grub /.

Загрузился bios

BIOS — это аббревиатура от Basic Input/Output System, базовая система ввода-вывода. Она отвечает за первоначальную загрузку компьютера. Все данные BIOS хранятся в отдельной микросхеме на материнской плате, а чтобы настройки не пропали после отключения от розетки, ставят батарейку. Если питания от сети не будет, батарейка будет поддерживать память в микросхеме около 10 лет.

Как происходит загрузка компьютера
Микросхема BIOS рядом с батарейкой

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

  • короткий и длинный — ошибка с оперативной памятью;
  • длинный и 2 коротких — проблемы с видеокартой;
  • постоянно длинный и короткий гудки — что-то с процессором;
  • всё время пищит — ошибки с блоком питания.

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

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

Как только загрузчик найден, BIOS считывает его код и передаёт ему всё дальнейшее управление компьютером.

Немного про uefi

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

Основное отличие от BIOS в том, что UEFI требуется больше памяти для первоначальных программ загрузки компьютера. Для этого UEFI забирает себе первые 100 мегабайт на диске и берёт эти данные оттуда, а сам раздел делает скрытым. 

Как происходит загрузка компьютера

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

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

Несколько лет назад в моей практике был такой забавный случай.

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

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

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

К слову сказать, для того, чтобы получить проблемы с загрузкой Windows XP, можно было и ничего не стирать, а слегка «подправить», например, boot.ini.

Загрузочный сектор раздела

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

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

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

Загрузочный код в разделе – это не конец пути, это всего лишь ещё один шаг на этом пути. Из-за того, как мало места выделяется для кода начальной загрузки в загрузочном секторе раздела, код, который он содержит, обычно заканчивается другой командой JMP, инструктирующей ЦП перейти к следующему сектору в разделе, который часто выделяется для оставшейся части раздела.

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

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

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

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

Поскольку каждый отдельный компонент получает живительную электроэнергию, он включается и переводится в первоначальное состояние. Процедуры запуска и общая функциональность более простых компонентов, таких как ОЗУ и БП, встроены в них в виде последовательности логических схем (вентили AND/NAND и OR/NOR), в то время как более сложные компоненты, такие как видеокарта, имеют свои собственные микроконтроллеры, которые могут выступать в качестве мини-процессоров, управляя оборудованием и взаимодействуя с остальным ПК, чтобы делегировать и контролировать работу.

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

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

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

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

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

Шаг 3 – изменяем порядок загрузки в bios

Затем, пользуясь клавишами «стрелочки» (вправо, влево, вверх, вниз) на клавиатуре, переходим в раздел «Boot» и выбираем настройку «Hard Disk Drives». Мышку в БИОСе использовать не получится.

После входа в эти настройки Вы увидите перечень устройств (жесткие диски и USB накопители), которые определились в БИОСе. На первом месте будет Ваш основной жесткий диск, с которого вы загружаетесь по умолчанию. Вам необходимо найти флешку, с которой Вам нужно загрузиться, затем, используя клавиши « » (плюс) и «-» (минус) на клавиатуре, переместить ее на первое место.

В случае с Phoenix-Award BIOS настройки загрузки «Boot» необходимо искать в пункте «Advanced BIOS Features». После того как Вы зайдете в данный пункт, Вам необходимо изменить параметр «Hard Disk Boot Priority», указав в нем загрузку с флешки в качестве приоритета.

Вывод

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

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

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

Источник

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