Этапы загрузки компьютера: Этапы загрузки компьютера | IThabits.Ru

Содержание

Этапы загрузки компьютера | IThabits.Ru

Давным-давно, когда я был маленьким работал в институтской лаборатории на большом компьютере СМ-3 (что-то вроде знаменитой PDP-11), bootstrapping (загрузка) ЭВМ выглядела так. В фотосчитыватель заправлялась коротенькая бумажная перфолента с пробитой на ней программой начальной загрузки, запускался процесс считывания, а дальше … как повезет.

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

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

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

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

Начальный этап загрузки операционной системы после включения компьютера начинается в BIOS (Basic Input/Output System — базовая система ввода-вывода). В настройках BIOS мы указываем загрузочное устройство, или ряд загрузочных устройств в порядке их приоритета. Возможны различные варианты загрузки и их комбинации: с жесткого диска, CD/DVD – диска, USB-flash и другие.

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

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

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

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

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

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

Следующим этапом загрузки компьютера является передача управления исполняемому коду, записанному в PBS (Partition Boot Sector — загрузочный сектор активного раздела). PBS расположен в первом секторе (секторах) соответствующего раздела диска. В коде PBS прописано имя файла загрузчика операционной системы, которому и передается управление на этом этапе.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Ну что же, запомнить названия разделов диска очень легко по принципу «всё наоборот» — на системном нет системы (операционной), но расположен загрузчик третьего уровня, на загрузочном как раз отсутствует загрузчик, но находится сама система. Естественно, эта «запоминалка» работает только тогда, когда есть несколько разделов. Если раздел один, то он может быть сразу системным, активным и загрузочным.

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

Классической ошибкой, которой Microsoft посвятила отдельную статью, является установка Windows XP после Windows Vista / 7 /8. Установщик Windows XP помечает свой раздел как активный, после чего, во время загрузки, MBR передает управление PBS этого раздела а он, в свою очередь, — Ntldr. Загрузчик Windows XP ничего не знает о более поздних версиях операционных систем Windows и их загрузка становится невозможной. Лечится достаточно легко, но неискушенного пользователя такая ситуация может поставить в тупик.

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

Опубликовано  —  31 января, 2013  в рубрике  —  Microsoft Windows, Семейство ОС Linux  Теги: Bcdedit, BIOS, Bootmgr, GRUB, Linux, Ntldr, Windows 7, Windows 8, Windows Vista, Windows XP, Активный раздел, Загрузочный раздел, Системный раздел

Этапы загрузки компьютера

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

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

Решением проблемы является постоянная память ПЗУ или ROM установленная на материнской плате и записанная в ней программа BIOS, которая запускает установку операционной системы.

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

Этапы загрузки компьютера

1. Нажимаем кнопку Reset
2. Компьютер проверяет работу блока питания (0.5-1сек)
3. POST (Power-On Self-Test) — самотестирование после включения
— проверка целостности BIOS и ПЗУ по контрольным суммам;
— обнаружение и инициализация оборудования;
— определение объёма оперативной памяти и тестирование его первого сегмента 64кБ
4. BIOS по порядку, указанном в CMOS SETUP, проверяет загрузочные устройства и ищет на них MBR (Master Boot Record) — главную загрузочную запись. Это нулевой сектор диска размером 512 кБ
5. MBR содержит таблицу разделов (Partition Table) и исполняемый код.
Главной задачей программы, записанной в MBR, является поиск PBS (Partition Boot Sector — загрузочный сектор активного раздела)
6. PBS передаёт управление файлу загрузчика операционной системы.
— для Linux это GRUB (GRand Unified Bootloader) раньше был LILO (LInux LOader),
— для Windows ХР — Ntldr (NT loader))
— для Windows 7 и старше Windows Boot Manager (Bootmgr, winload.exe)
7. Главной задачей загрузчика 3-го уровня, в роли которого выступает, в зависимости от типа ОС, Bootmgr, Ntldr или GRUB, является чтение с загрузочного диска и загрузка ядра операционной системы.
Кроме того, в случае множественной загрузки, когда на компьютере установлено несколько операционных систем, загрузчик 3-го уровня позволяет выбирать нужную при каждом запуске компьютера.
Сейчас на смену BIOS приходит UEFI — новый унифицированный стандарт.

https://ru.wikipedia.org/wiki/Начальная_загрузка_компьютера
Краткий обзор загрузки Windows, Linux, Mac OS X, QNX
Этапы загрузки операционных систем

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

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

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

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

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

Код из MBR запускает файл NTLDR — загрузчик операционных систем семейства Windows NT до Windows Vista. Он запускает программу ntdetect.com, которая собирает сведения об оборудовании. Затем компьютер переводится в 32-х битный режим, после чего в память загружается ntoskrnl.exe — ядро операционной системы, которому и передаются собранные параметры. Затем запускаются сервисы и окружение рабочего стола, после чего пользователь может приступать к работе. Файл boot.ini, расположенный в корне диска C:\, содержит параметры загрузки и список операционных систем для выбора, если их на компьютере установлено несколько.

Если на компьютере вместо BIOS стоит UEFI, то вместо NTLDR загрузку операционной системы будет производить Windows Boot Manager. Для успешной загрузки компьютера с UEFI его диск должен быть отформатирован в GPT и иметь раздел с идентификатором EF00 и файловой системой FAT32. На данном разделе должна располагаться микропрограмма, которая и произведет загрузку операционной системы. В отличие от BIOS UEFI позволяет работать с архитектурами x86 и x86_64, способен работать с дисками, объем которых превышает 2 Тб, организует интерфейс взаимодействия с оборудованием без необходимости задействовать драйвера на начальном этапе загрузки.

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

Как включается компьютер. Этапы включения ПК

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

Первый этап 

На первом этапе запуском управляет человек. Предварительно он должен убедиться в том, что клавиатура — основное устройство управления — имеется в наличии и подключена, а электропитание подано. Для инициализации запуска достаточно нажать кнопку на лицевой панели — далее процесс развивается автоматически.

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

Второй этап

На втором этапе запуском компьютера управляют устройства. Точнее — материнская плата. Еще точнее — микросхема постоянного запоминающего устройства (ПЗУ), находящаяся на ней. Совсем точно — пакет встроенных программ, который называется BIOS. Как настроить Boot menu в BOIS Вы можете прочитать в другой инструкции.

 

Третий этап 

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

Как и на втором этапе, управляющее стороной третьего этапа запуска является программа. Только теперь она не «зашита» в ПЗУ материнской платы, а берется с того диска, который назначен системным. Эта программа — первоначальный загрузчик операционной системы.

 

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

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

НОУ ИНТУИТ | Лекция | Этапы загрузки системы

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

Досистемная загрузка

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

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

Загрузчик в ПЗУ

Сразу после включения оперативная память компьютера классической архитектуры девственно чиста. Для того чтобы начать работать, процессору необходима хоть какая-то программа. Эта программа автоматически загружается в память из постоянного запоминающего устройства, ПЗУ (или ROM, read-only memory), в которое она вписана раз и навсегда в неизменном виде1. В специализированных компьютерах (например, в дешевых игровых приставках) все, что нужно пользователю, записывается именно на ПЗУ (часто сменное), и запуском программы оттуда загрузка заканчивается.

Обычно в компьютерах общего назначения программа из ПЗУ пользователю ничем полезна не бывает: она невелика, да и делает всегда одно и то же. Слегка изменить поведение программы из ПЗУ можно, оперируя данными, записанными в энергонезависимую память (иногда ее называют CMOS, иногда — NVRAM). Объем энергонезависимой памяти очень невелик, а данные из нее сохраняются после выключения компьютера за счет автономного электропитания (как правило, от батарейки вроде часовой).

Что должна уметь эта начальная программа? Распознавать основные устройства, на которых может быть записана другая — нужная пользователю — программа, уметь загружать эту программу в память и передавать ей выполнение, а также поддерживать интерфейс, позволяющий менять настройки в NVRAM. Собственно, это даже не одна программа, а множество подпрограмм, занимающихся взаимодействием с разнообразными устройствами ввода-вывода — как с теми, на которых могут храниться программы (жесткие и гибкие диски, магнитные ленты и даже сетевые карты), так и теми, посредством которых можно общаться с пользователем (последовательные порты передачи данных — если есть возможность подключить консольный терминал, системная клавиатура и видеокарта — для простых персональных рабочих станций). Этот набор подпрограмм в ПЗУ обычно называется BIOS (basic input-output system).

BIOS. Сокращение от «Basic Input-Output System», набор подпрограмм в ПЗУ, предназначенных для простейшего низкоуровневого доступа к внешним устройствам компьютера. В современных ОС используется только в процессе начальной загрузки.

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

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

Чаще всего размер первичного дискового загрузчика — программы, которой передается управление после нулевого этапа, — весьма невелик. Это связано с требованиями универсальности подобного рода программ. Считывать данные с диска можно секторами, размер которых различается для разных типов дисковых устройств (от половины килобайта до восьми или даже больше). Кроме того, если считать один, первый, сектор диска можно всегда одним и тем же способом, то команды чтения нескольких секторов на разных устройствах могут выглядеть по-разному. Поэтому-то первичный загрузчик занимает обычно не более одного сектора в самом начале диска, в его загрузочном секторе.

Если бы первичный загрузчик был побольше, он, наверное, и сам мог бы разобраться, где находится ядро операционной системы, и смог бы самостоятельно считать его, разместить в памяти, настроить и передать ему управление. Однако ядро операционной системы имеет довольно сложную структуру — а значит, и непростой способ загрузки; оно может быть довольно большим, и, что неприятнее всего, может располагаться неизвестно где на диске, подчиняясь законам файловой системы (например, состоять из нескольких частей, разбросанных по диску). Учесть все это первичный загрузчик не в силах. Его задача скромнее: определить, где на диске находится «большой» вторичный загрузчик, загрузить и запустить его. Вторичный загрузчик прост, и его можно положить в заранее определенное место диска, или, на худой конец, положить в заранее определенное место карту размещения, описывающую, где именно искать его части (размер вторичного загрузчика ограничен, поэтому построить такую карту возможно).

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

В случае IBM-совместимого компьютера размер загрузочного сектора составляет всего 512 байтов, из которых далеко не все приходятся на программную область. Загрузочный сектор IBM PC, называемый MBR (master boot record), содержит также таблицу разбиения диска , структура которой описана в лекции 11. Понятно, что программа такого размера не может похвастаться разнообразием функций. Стандартный для многих систем загрузочный сектор может только считать таблицу разбиения диска, определить так называемый загрузочный раздел (active partition) и загрузить программу, расположенную в начале этого раздела. Для каждого типа диска может быть своя программная часть MBR, что позволяет считывать данные из любого места диска, сообразуясь с его типом и геометрией. Однако считывать можно все же не более одного сектора: неизвестно, для чего используются установленной на этом разделе операционной системой второй и последующие сектора. Выходит, что стандартная программная часть MBR — это некий предзагрузчик, который считывает и запускает настоящий первичный загрузчик из первого сектора загрузочного раздела.

Существуют версии предзагрузчика, предоставляющие пользователю возможность самостоятельно выбрать, с какого из разделов выполнять загрузку2. Это позволяет для каждой из установленных операционных систем хранить собственный первичный загрузчик в начале раздела и свободно выбирать среди них. В стандартной схеме загрузки Linux используется иной подход: простой первичный загрузчик записывается прямо в MBR, а функция выбора передается вторичному загрузчику.

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

Загрузчик ядра

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

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

Во-вторых, можно воспользоваться описанной выше картой размещения: представить ядро в виде набора секторов на диске, записать этот набор в заранее определенное место, а загрузчик заставить собирать ядро из кусков по карте. Использование карты размещения имеет два существенных недостатка: ее создание возможно только под управлением уже загруженной системы, а изменение ядра должно обязательно сопровождаться изменением карты. Если по какой-то причине система не загружается ни в одной из заранее спланированных конфигураций, единственная возможность поправить дело — загрузиться с внешнего носителя (например, с лазерного диска). А система может не загружаться именно потому, что администратор забыл после изменения ядра пересобрать карту: в карте указан список секторов, соответствовавших старому файлу с ядром, и после удаления старого файла в этих секторах может содержаться какой угодно «мусор».

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

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

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

Особенная ситуация возникает в случае, когда на компьютере установлено несколько операционных систем (например, если персональный компьютер используется также и для компьютерных игр, строго привязанных к определенной системе). В этом случае не стоит надеяться на «универсальность» вторичного загрузчика: даже если он способен различать множество файловых систем и несколько форматов загрузки ядер, невозможно знать их все. Однако если в загрузочном секторе раздела операционной системы записан первичный загрузчик, можно просто загрузить его, как если бы это произошло непосредственно после работы MBR. Таким образом, вторичный загрузчик может выступать в роли предзагрузчика, передавая управление «по цепочке» (chainloading). К сожалению, чем длиннее цепочка, тем выше вероятность ее порвать: можно, например, загрузить по цепочке MS-DOS, удалить с его помощью раздел Linux, содержавший вторичный загрузчик, а затем переразметить этот раздел, чем и привести компьютер в неработоспособное состояние.

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

Этапы загрузки операционной системы | Павел Зверев: компьютеры и игры

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

В процессе загрузки ПК и ОС происходит множество процессов

В процессе загрузки ПК и ОС происходит множество процессов

После того, как вы нажали кнопку запуска на системном блоке, процессор незамедлительно начинает считывать и выполнять микропрограммы, которые хранятся в микросхеме BIOS (Basic Input/Output System) – базовая система ввода/вывода.
BIOS располагается в постоянной памяти компьютера (ПЗУ). Его назначение состоит в выполнении наиболее простых и универсальных действий ОС, связанных с осуществлением ввода и вывода, а именно проверяет функционирование компьютера, тестирует память и устройства ПК на наличие ошибок, а также запускает программу вызова загрузчика.
Важной составляющей запуска ОС выступает программа тестирования POST(Power-ON Self Test). Именно она отвечает за работоспособность основных устройств: видеоадаптера, процессора, оперативной памяти, контроллеров жёстких дисков и клавиатуры, дисководов, последовательных и параллельного портов.
Если вдруг обнаружилась неисправность, то могут быть слышны короткие или длинные звуковые сигналы и появляются сообщения об ошибке на мониторе. Если вдруг по какой-либо причине системные диски в персональном компьютере неисправны или не могут быть найдены, а то и вовсе отсутствуют, то на мониторе появится сообщение «Non System Disk«. Загрузка ОС, естественно, прекратиться и компьютер «зависнет».
При тестировании BIOS сравнивает полученные данные о конфигурации ПК с информацией, хранящейся в CMOS– это специальная микросхема памяти, которая располагается на системной (материнской) плате. Если данные не совпадают, то мониторе появится сообщение «CMOS System Option Not Set». Если такое произошло, то необходимо с помощью утилиты BIOS Setup установить новые конфигурационные параметры.
После того как POST-тестирование проходит успешно, BIOS начинает искать загрузчик Master Boot ОС. Данный этап загрузки осуществляет поочередное обращение к имеющимся на ПК дискам: гибким, жестким, CD-ROM, а также проводит поиск специальной программы-загрузчика для запуска операционной системы.
Когда программа-загрузчик найдена, она автоматически помещается в оперативную память ПК и начинает процесс загрузки файлов ОС, а если быть точнее двух модулей операционной системы IO.SYS и MSDOS.SYS, что и завершает процесс загрузки. Дисковые файлы IO.SYS и MSDOS.SYS загружаются в оперативную память загрузчиком и остаются там постоянно до полного выключения компьютера. Первый файл IO.SYS представляет собой дополнение к базовой системе ввода/вывода. Второй файл MSDOS.SYS реализует основные высоко уровневые услуги DOS.
И вот теперь, после загрузки операционной системы и проверки работоспособности компонентов ПК, управление берёт на себя командный процессор. Командный процессор осуществляет обработку команд которые вводит пользователь. Интересно то, что командный процессор находится в дисковом файле COMMAND.COM, который в свою очередь расположен на загрузочном диске операционной системы.

Вот такую вот важную тему мы сегодня с вами рассмотрели. Если статья была полезной для вас, то ставьте лайк и подписывайтесь на канал. Также предлагаю подписаться на наш Ютуб-канал ПиМ [ZveKa].
Если вам понравилась статья, ознакомьтесь с другими моими работами на канале.

Как правильно чистить системный блок от пыли

10-ть полезных комбинаций клавиш при работе с Windows, которые облегчат вам жизнь

Сколько времени можно играть в день в компьютерные игры?

История развития мониторов

Как правильно установить язык программирования Python на персональный компьютер

Каковы основные этапы загрузки компьютера?

помогите решить это задание срочно!!!

Срочно,помогите пожалуйста!! 1) дан массив из 20 элементов. Вывести только те элементы, которые меньше 10 2) С помощью цикла while найти количество чи … сел от А до Б, которые делятся нацело на С (А,В,С — вводит пользователь) 3) В массиве из 15 элементов найти сумму элементов, которые больше 20 Все в паскале

Выберите все носители информации .Название носителей, и ответить в формате цифр 1,2,3Благодарю;)​

1,3,4 номер , с блок схемой

помогите пожалуйста сделать 1,2 задание СРОЧНО!!!

на питоне пж за 51бМастям игральных карт присвоены порядковые номера: 1 — пики, 2 — трефы, 3 — бубны, 4 — червы. Достоинству карт, старших десятки, пр … исвоены номера: 11 — валет, 12 — дама, 13 — король, 14 — туз.Даны два целых числа: N — достоинство и M — масть карты. Требуется вывести название соответствующей карты вида «шестёрка бубен», «дама червей», «туз треф» и т. п.Формат выходных данныхТребуется вывести название карты в формате аналогичному указанному в примере.ПримечанияАнглийские названия мастей:трефы –— «clubs»;бубны –— «diamonds»;червы –— «hearts»;пики –— «spades».Английские названия достоинств карт:валет –— «jack»;дама –— «queen»;король –— «king»;туз –— «ace».Карты младше десятки именуются по численному обозначению: «six» (шесть), «seven» (семь), «eight» (восемь), «nine» (девять), «ten» (десять).входные данные 14 1 выходные данные The ace of spadesвходные данные 10 4 выходные данные The ten of hearts

на питоне пжДаны три числа. Требуется подсчитать количество четных из них.входные данные 42 13 67 выходные данные 1входные данные 2 4 6 выходные данны … е 3Формат выходных данныхВыведите количество четных чисел.

лол найдите ошибку в кодеa = int(input())b = int(input())for i in range (a, (b + 1)): if i % 3 == 0 and i % 5 == 0: print(«FizzBuzz») elif i % 5 == 0: … print(«Buzz») elif i % 3 == 0: print(«Fizz») else: print(i)блин пробелы удалились

Чи ти зможеш пояснити, що означають усі способи вирівнюванняй розподілу об’єктів? Наприклад, «Розподілити по вертикалі» означаєперемістити об’єкти по … вертикалі так, щоб відстані між їхніми краямибули однакові.• Як ти вважаєш, для якої найменшої кількості об’єктів має сенс опера-ція вирівнювання? А операція розподілення?Допоможіть Будь-ласка даю 12балів.​

пж можно срочно надо​

Пять этапов процесса загрузки компьютера

Пять шагов процесса загрузки компьютера

Кредит изображения: jacoblund / iStock / GettyImages

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

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

Tip

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

Прерывание процесса загрузки компьютера

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

ПЗУ и ЦП расположены на материнской плате компьютера. Материнская плата выступает в качестве прямого интерфейса между внешним источником питания (обычно настенной розеткой) и внутренним оборудованием компьютера. Без материнской платы ЦП не мог бы получать электричество, необходимое для правильной работы. В дополнение к процессору материнская плата выступает в качестве хоста практически для всех устройств и соединений, необходимых компьютеру для выполнения доступных задач. Материнская плата не только обеспечивает питание жесткого диска, вентиляторов и видеокарт внутри компьютера, но также позволяет данным свободно перемещаться между ними по мере необходимости во время выполнения определенного приложения.

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

Изучение POST и загрузки

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

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

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

POST и различные компьютерные системы

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

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

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

Понимание процесса BIOS

Термин BIOS является аббревиатурой от Basic Input / Output System. Во время процедуры POST каждое устройство, включенное в список загрузки, загружает свой собственный уникальный BIOS. Во время этого процесса загружаемое оборудование напрямую связывается с материнской платой и предоставляет всю информацию, необходимую для обеспечения возможности приема и передачи сообщений другому подключенному оборудованию и самой материнской плате.

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

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

Движение вперед с операционной системой

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

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

Основы операционной системы

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

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

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

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

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

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

Передача управления и заключительные шаги

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

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

Решение проблем с компьютером

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

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

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

Неизвестно Ссылка: Процесс загрузки ПК

Электропитание включено.

Блок питания выполняет самотестирование. Когда все напряжения и токи приемлемы, источник питания указывает на то, что питание стабильно, и посылает на процессор сигнал Power Good. Время от включения до Power Good обычно составляет от 0,1 до 0,5 секунды.

Микропроцессорный таймер получает сигнал Power Good.

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

ЦП начинает выполнение кода BIOS ПЗУ.

ЦП загружает ПЗУ BIOS, начиная с Адрес памяти ПЗУ FFFF: 0000, который находится всего в 16 байтах от верха ПЗУ объем памяти.Таким образом, он содержит только инструкцию JMP (прыжок), которая указывает на фактический адрес кода BIOS ПЗУ.

ROM BIOS выполняет базовый тест центрального оборудования для проверки его основных функций.

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

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

Видеоадаптеры обеспечивают наиболее распространенные источник ПЗУ адаптера BIOS. Подпрограммы BIOS при запуске сканируют память. адреса от C000: 0000 до C780: 0000 для поиска видеопЗУ. Ошибка загрузка любого ПЗУ адаптера вызывает ошибку, например:

XXXX Ошибка ПЗУ

, где XXXX представляет собой адрес сегмента отказавшего модуля.

ROM BIOS проверяет, является ли это «холодным» или «теплым» запуском.

Чтобы определить, является ли это теплый старт или холодный старт процедуры запуска ROM BIOS проверяют значение двух байтов, расположенных в ячейке памяти 0000: 0472. Любое значение кроме 1234h означает, что это холодный пуск.

Если это холодный пуск ROM BIOS выполняет полный POST (самотестирование при включении).Если это теплый старт, часть теста памяти POST выключена.

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

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

BIOS находит и считывает информацию о конфигурации, хранящуюся в CMOS.

CMOS (что означает дополнительный Metal-Oxide Semiconductor) — это небольшая область памяти (64 байта), которая поддерживается током небольшой батареи, прикрепленной к материнская плата.Самое главное для ROM BIOS подпрограммы запуска CMOS указывает порядок, в котором приводы должны проверяться на работоспособность. системы — сначала дискета, сначала CD-Rom или сначала фиксированный диск.

Фиксированный диск

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

На фиксированном диске основная загрузочная запись занимает самый первый сектор в цилиндре 0, головке 0, секторе 1. Это Размер 512 байт. Если этот сектор найден, он загружается в память по адресу адрес 0000: 7C00 и проверено на действительную подпись. Действительная подпись будет значением 55AAh в последних двух байтах. Отсутствие MBR или действительная подпись процесс загрузки останавливается с сообщением об ошибке, которое может читать:

NO ROM BASIC — SYSTEM HALTED

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

MBR

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

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

Таблица разделов

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

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

Операционная система

Загрузочная запись

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

Загрузка Windows XP управляется файлом NTLDR, который является скрытым системным файлом, который находится в корневом каталоге системного раздела. NTLDR загрузит XP в четыре этапа:

1) Этап начального загрузчика
2) Выбор операционной системы
3) Обнаружение оборудования
4) Выбор конфигурации

NTLDR

Начальная фаза

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

Windows XP поддерживает разделы, отформатированные в файловой системе FAT-16, FAT-32 или NTFS.

NTLDR

Выбор ОС
BOOT.INI

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

Если файл BOOT.INI не найден в корневом каталоге NTLDR продолжит загрузку последовательность и попытаться загрузить XP с первого раздела первого диск, обычно C: \.

F8

Предполагая, что загружаемая операционная система — Windows NT, 2000 или XP, нажав F8 в этот этап последовательности загрузки для отображения различных вариантов загрузки включая «Безопасный режим» и «Последняя удачная конфигурация»

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

NTLDR

Обнаружение оборудования

Если выбрана операционная система XP, NTLDR продолжит процесс загрузки, обнаружив и загрузив программу NTDETECT.COM, основанную на DOS, для обнаружения оборудования.

NTDETECT.COM собирает список установленные в настоящее время аппаратные компоненты и возвращает этот список для дальнейшего использования включение в реестр под ключом HKEY_LOCAL_MACHINE \
HARDWARE.

NTLDR

Выбор конфигурации

Если на этом компьютере более одного определенного профиля оборудования, на котором программа NTLDR остановится этот момент и отобразить профили оборудования / восстановление конфигурации меню.

Отсутствие более одного профиля оборудования NTLDR пропустит этот шаг и не отобразит это меню.

Загрузка ядра

После выбора конфигурации оборудования (при необходимости) NTLDR начинает загрузку ядра XP (NTOSKRNL.EXE).

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

NTLDR

Boot
Драйверы устройств

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

У каждого драйвера есть запись в подразделе реестра в разделе HKEY_LOCAL_MACHINE
\ SYSTEM \ Services. Любой драйвер с начальным значением
SERVICE_BOOT_START считается устройством, которое запускается при загрузке. Точка печатается до экран для каждого загруженного файла (если не используется переключатель / SOS, в котором печатаются имена файлов дела.

Инициализация ядра

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

XP отключает прерывания во время фазы 0 и включает их перед этапом 1. HAL вызывается для подготовки контроллер прерываний; диспетчер памяти, диспетчер объектов, безопасность Монитор ссылок и диспетчер процессов инициализируются.

Фаза 1 начинается, когда вызывается HAL для подготовки системы к приему прерывания от устройств. Если присутствует более одного процессора, на этом этапе инициализируются дополнительные процессоры. Все исполнительные подсистемы повторно инициализируются в следующем порядке:

1) Диспетчер объектов
2) Исполнительный
3) Микроядро
4) Контрольный монитор безопасности
5) Диспетчер памяти
6) Диспетчер кэша
7) LPCS
8) Диспетчер ввода-вывода
9) Менеджер процессов

Менеджер ввода / вывода

Инициализация I / O Manager начинает процесс загрузки всех файлов системных драйверов.Продолжая с того места, где остановился NTLDR, сначала завершается загрузка boot устройств. Затем он собирает приоритетный список драйверов и попыток. загружать каждый по очереди.

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

СМС

Последней задачей для фазы 1 инициализации ядра является запуск подсистемы диспетчера сеансов (SMSS).SMSS отвечает за создание среды пользовательского режима, которая обеспечивает видимый интерфейс для NT.

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

win32k.sys

SMSS загружает драйвер устройства win32k.sys, который реализует графическую подсистему Win32.

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

Вход в систему

Процесс загрузки XP не считается завершенным, пока пользователь не войдет в систему система.Процесс запускается файлом WINLOGON.EXE, который загружается ядром как служба и продолжается локальным администратором безопасности (LSASS.EXE), который отображает диалоговое окно входа в систему.

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

Проект FreeBSD | Глава 13. Процесс загрузки FreeBSD

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

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

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

FreeBSD обеспечивает загрузку как со старым стандартом MBR, так и с новой таблицей разделов GUID (GPT). Разделение GPT часто встречается на компьютерах с Unified Extensible Firmware Interface (UEFI). Однако FreeBSD может загружаться с разделов GPT даже на машинах с устаревшей версией BIOS с gptboot (8). Ведется работа по обеспечению прямой загрузки UEFI.

Код в MBR обычно называется менеджером загрузки , особенно когда он взаимодействует с пользователем.Менеджер загрузки обычно имеет больше кода на первой дорожке диска или в файловой системе. Примеры менеджеров загрузки включают стандартный менеджер загрузки FreeBSD boot0, также называемый Boot Easy, и Grub, который используется во многих дистрибутивах Linux®.

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

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

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

Этот раздел описывает эти этапы более подробно и демонстрирует, как взаимодействовать с процессом загрузки FreeBSD.

13.2.1. Диспетчер загрузки

Код диспетчера загрузки в MBR иногда называют нулевым этапом процесса загрузки. По умолчанию FreeBSD использует диспетчер загрузки boot0.

MBR, устанавливаемая установщиком FreeBSD, основана на / boot / boot0. Размер и возможности boot0 ограничены 446 байтами из-за таблицы срезов и идентификатора 0x55AA в конце MBR. Если установлены boot0 и несколько операционных систем, во время загрузки будет отображаться сообщение, подобное этому примеру:

Пример 1.boot0 Скриншот

  F1 Win
F2 FreeBSD

По умолчанию: F2  

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

  # fdisk -B -b / boot / boot0 device  

, где device — это загрузочный диск, например ad0 для первый диск IDE, ad2 для первого диска IDE на втором контроллере IDE или da0 для первого диска SCSI.Чтобы создать собственную конфигурацию MBR, обратитесь к boot0cfg (8).

13.2.2. Первый и второй этапы

Концептуально первый и второй этапы являются частью одной и той же программы на одной и той же области диска. Из-за нехватки места они были разделены на две части, но всегда устанавливаются вместе. Они копируются из комбинированного / boot / boot установщиком FreeBSD или bsdlabel .

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

Первый этап, boot1, очень прост, так как он может иметь размер только 512 байт. Он знает достаточно о FreeBSD bsdlabel , в которой хранится информация о слайсе, чтобы найти и выполнить boot2.

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

Пример 2. boot2 Снимок экрана

  >> FreeBSD / i386 BOOT
По умолчанию: 0: ad (0, a) / boot / loader
boot:  

Чтобы заменить установленные boot1 и boot2, используйте bsdlabel , где disklice — это диск и фрагмент, с которого выполняется загрузка, например ad0s1 для первого фрагмента на первом диске IDE:

Если используется только имя диска, например ad0, bsdlabel создаст диск в «опасно выделенном режиме», без разделов.Вероятно, это не желаемое действие, поэтому дважды проверьте срез диска , прежде чем нажимать Return .

13.2.3. Третий этап

Загрузчик — это заключительный этап трехэтапного процесса начальной загрузки. Он расположен в файловой системе, обычно как / boot / loader.

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

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

Загрузчик затем прочитает /boot/loader.rc, который по умолчанию читает в /boot/defaults/loader.conf, который устанавливает разумные значения по умолчанию для переменных и читает /boot/loader.conf для локальных изменений этих переменных. Затем loader.rc воздействует на эти переменные, загружая выбранные модули и ядро.

Наконец, по умолчанию загрузчик выдает 10-секундное ожидание нажатия клавиш и загружает ядро, если оно не прерывается. В случае прерывания пользователю предоставляется подсказка, которая понимает набор команд, где пользователь может настроить переменные, выгрузить все модули, загрузить модули, а затем, наконец, выполнить загрузку или перезагрузку. Встроенные команды загрузчика перечисляет наиболее часто используемые команды загрузчика. Для полного обсуждения всех доступных команд обратитесь к loader (8).

Таблица 1. Встроенные команды загрузчика
Переменная Описание

автозагрузка секунд

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

boot [ -options ] [ имя ядра ]

Немедленно приступает к загрузке ядра с любыми указанными параметрами или именем ядра. Указание имени ядра в командной строке возможно только после выдачи unload . В противном случае будет использоваться ранее загруженное ядро. Если имя ядра не определено, поиск будет выполняться в / boot / kernel и / boot / modules .

boot-conf

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

help [ тема ]

Показывает справочные сообщения, прочитанные из /boot/loader.help. Если задана тема , индекс , отображается список доступных тем.

включить имя_файла

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

load [-t type ] filename

Загружает ядро, модуль ядра или файл указанного типа с указанным именем файла. В файл передаются любые аргументы после filename .Если filename не определен, он будет найден в / boot / kernel и / boot / modules .

ls [-l] [ путь ]

Отображает список файлов по заданному пути или корневому каталогу, если путь не указан. Если указан -l , также будут показаны размеры файлов.

lsdev [ -v ]

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

lsmod [ -v ]

Отображает загруженные модули. Если указан -v , отображаются дополнительные сведения.

еще имя_файла

Отображает указанные файлы с паузой на каждой отображаемой ЛИНИИ .

перезагрузка

Немедленная перезагрузка системы.

установить переменную , установить переменную = значение

Устанавливает указанные переменные среды.

выгрузить

Удаляет все загруженные модули.

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

Чтобы выгрузить обычное ядро ​​и модули, а затем загрузить предыдущее или другое указанное ядро:

  выгрузить
 load / path / to / kernelfile  

Используйте квалифицированное / boot / GENERIC / kernel для ссылки на ядро ​​по умолчанию, которое поставляется с установкой, или / boot / kernel.old / kernel, чтобы ссылаться на ранее установленное ядро ​​перед обновлением системы или перед настройкой собственного ядра.

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

  unload
установить ядро ​​= "mykernel"
boot-conf  

Чтобы загрузить сценарий автоматической конфигурации ядра:

  load -t userconfig_script /boot/kernel.conf  

13.2.4. Последний этап

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

Таблица 2. Взаимодействие с ядром во время загрузки
Опция Описание

-a

Во время инициализации ядра запросите файловую систему для монтирования в качестве .

-C

Загрузите корневую файловую систему с компакт-диска.

-s

Загрузка в однопользовательском режиме.

-v

Будьте более подробными при запуске ядра.

После завершения загрузки ядра оно передает управление пользовательскому процессу init (8), который находится в / sbin / init, или программному пути, указанному в переменной init_path в загрузчике . Это последний этап процесса загрузки.

Последовательность загрузки обеспечивает согласованность файловых систем, доступных в системе. Если файловой системы UFS нет и fsck не может исправить несоответствия, init переводит систему в однопользовательский режим, чтобы системный администратор мог решить проблему напрямую. В противном случае система загружается в многопользовательский режим.

13.2.4.1. Однопользовательский режим

Пользователь может указать этот режим, загрузившись с -s или установив переменную boot_single в загрузчике.Этого также можно достичь, запустив shutdown now из многопользовательского режима. Однопользовательский режим начинается с этого сообщения:

 Введите полный путь к оболочке или RETURN для / bin / sh: 

Если пользователь нажимает Enter , система войдет в оболочку Bourne по умолчанию. Чтобы указать другую оболочку, введите полный путь к оболочке.

Однопользовательский режим обычно используется для восстановления системы, которая не загружается из-за несовместимости файловой системы или ошибки в файле конфигурации загрузки.Его также можно использовать для сброса пароля root , если он неизвестен. Эти действия возможны, поскольку приглашение однопользовательского режима дает полный локальный доступ к системе и ее файлам конфигурации. В этом режиме нет сети.

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

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

Пример 3. Настройка небезопасной консоли в / etc / ttys

 # name getty type status comments
#
# Если консоль помечена как "небезопасная", то init запросит пароль root
# при переходе в однопользовательский режим.console none unknown off insecure 

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

13.2.4.2. Многопользовательский режим

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

Система конфигурации ресурсов считывает значения конфигурации по умолчанию из /etc/defaults/rc.conf и подробные сведения о системе из /etc/rc.conf. Затем он приступает к монтированию системных файловых систем, перечисленных в / etc / fstab. Он запускает сетевые службы, различные системные демоны, а затем сценарии запуска локально установленных пакетов.

Чтобы узнать больше о системе конфигурации ресурсов, обратитесь к rc (8) и изучите сценарии, расположенные в /etc/rc.d.

Каков процесс загрузки Windows 7?

На этапе инициализации BIOS микропрограмма платформы идентифицирует и инициализирует аппаратные устройства, а затем запускает самотестирование при включении (POST).Процесс POST завершается, когда BIOS обнаруживает допустимый системный диск, считывает основную загрузочную запись (MBR) и запускает Bootmgr.exe.

Что такое процесс загрузки Windows?

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

Каковы шаги в процессе загрузки?

Загрузка — это процесс включения компьютера и запуска операционной системы.Шесть этапов процесса загрузки: BIOS и программа установки, самотестирование при включении (POST), загрузка операционной системы, конфигурация системы, загрузка системных утилит и проверка подлинности пользователей.

Какова последовательность загрузки Windows 7?

Обычная последовательность запуска для Windows 7: Фаза самотестирования при включении (POST). Начальный этап запуска. Фаза диспетчера загрузки Windows.

Что такое процесс загрузки BIOS?

В вычислениях BIOS (/ ˈbaɪɒs, -oʊs /, BY-oss, -⁠ohss; аббревиатура от Basic Input / Output System, также известная как System BIOS, ROM BIOS или PC BIOS) — это микропрограммное обеспечение, используемое для работы оборудования. инициализация во время процесса загрузки (запуск при включении) и предоставление служб времени выполнения для операционных систем и программ.

Какие файлы нужны Windows для загрузки?

Загрузочные файлы Windows

Более новым версиям Windows требуется BOOTMGR, Winload.exe и другие. Когда один или несколько из этих загрузочных файлов отсутствуют, часто возникает сбой во время запуска, когда вы обычно видите какую-то ошибку, связанную с отсутствующим файлом, например «BOOTMGR is missing».

Какова правильная последовательность загрузки ПК?

Какова правильная последовательность загрузки ПК? D. Вот правильная последовательность загрузки: хорошее питание, ЦП, POST, загрузчик, операционная система.

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

Процесс загрузки

  • Инициировать доступ к файловой системе. …
  • Загрузить и прочитать файл (ы) конфигурации…
  • Загрузить и запустить вспомогательные модули. …
  • Отображение меню загрузки. …
  • Загрузить ядро ​​ОС.

Что такое последовательность загрузки?

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

Какие бывают типы загрузки?

Загрузка бывает двух типов: 1. Холодная загрузка: когда компьютер запускается после выключения. 2. Горячая загрузка: когда операционная система перезагружается после сбоя или зависания системы.

Как войти в BIOS в Windows 7?

Как открыть BIOS в Windows 7

  1. Выключите компьютер.Вы можете открыть BIOS только перед тем, как увидите логотип Microsoft Windows 7 при запуске компьютера.
  2. Включите компьютер. Нажмите комбинацию клавиш BIOS, чтобы открыть BIOS на компьютере. Общие клавиши для открытия BIOS — это F2, F12, Delete или Esc.

Как выбрать параметры загрузки в Windows 7?

Экран «Дополнительные параметры загрузки» позволяет запускать Windows в расширенных режимах устранения неполадок. Вы можете получить доступ к меню, включив компьютер и нажав клавишу F8 перед запуском Windows.Некоторые параметры, такие как безопасный режим, позволяют запускать Windows в ограниченном состоянии, когда запускаются только самые необходимые компоненты.

Как изменить порядок загрузки в Windows 7?

Изменение порядка загрузки ваших дисков

  1. Нажмите F1, F2, Delete или соответствующую клавишу для вашей конкретной системы на экране POST (или экране, на котором отображается логотип производителя компьютера), чтобы войти в экран настройки BIOS.
  2. Найдите там, где написано Boot, и войдите в подменю.
  3. Выберите Boot Sequence (Последовательность загрузки) и нажмите Enter.

Может ли ваш компьютер загружаться без BIOS Почему?

ПОЯСНЕНИЕ: Потому что без BIOS компьютер не запускается. BIOS похож на «базовую ОС», которая соединяет основные компоненты компьютера и позволяет ему загружаться. Даже после того, как основная ОС загружена, она все еще может использовать BIOS для связи с основными компонентами.

Каковы четыре основные функции BIOS?

4 функции BIOS

  • Самотестирование при включении (POST).Это проверяет оборудование компьютера перед загрузкой ОС.
  • Загрузчик начальной загрузки. Это находит ОС.
  • Программное обеспечение / драйверы. Это обнаруживает программное обеспечение и драйверы, которые взаимодействуют с запущенной ОС.
  • Установка комплементарного металлооксидного полупроводника (КМОП).

Как мне загрузиться в BIOS?

Чтобы получить доступ к BIOS на ПК с Windows, вы должны нажать клавишу BIOS, установленную вашим производителем, которая может быть F10, F2, F12, F1 или DEL. Если ваш компьютер выходит из строя при запуске самотестирования слишком быстро, вы также можете войти в BIOS через расширенные настройки восстановления меню запуска Windows 10.

Процедура загрузки

Процедура загрузки

Начальная загрузка — это процесс запуска компьютера из остановленного или отключенное состояние. Когда компьютер включен, он активируется резидентный в памяти код, который находится на плате ЦП. Обычные возможности операционной системы здесь недоступны. стадии, и компьютер должен «подтянуться за свои собственные стропы», чтобы говорить. Поэтому эту процедуру часто называют самозагрузка , также известная как холодная загрузка .Хотя процедура начальной загрузки сильно зависит от оборудования, обычно она состоит из следующих этапов:

  • Резидентный код памяти
    • Запускает самотестирование.
    • Шина датчиков для загрузочного устройства
    • Считывает программу загрузки с загрузочного устройства.
  • Программа загрузки считывает ядро ​​и передает ему управление.
  • Ядро идентифицирует и настраивает устройства.
  • Инициализирует систему и запускает системные процессы.
  • Вызывает систему в однопользовательском режиме (при необходимости).
  • Выполняет соответствующие сценарии запуска.
  • Поднимает систему для многопользовательской работы.

Ядро

Большинство систем Unix реализуют двухэтапный процесс загрузки. Во время первого этап, небольшая программа загрузки считывается в память из значения по умолчанию или указанного устройство. Именно эта программа читает ядро ​​и отказывается от контроль к нему. Путь к ядру зависит от производителя.Например, это / vmunix в SunOS 4.x, Digital Unix и Ultrix, / kernel / unix в SunOS 5.x, / hp-ux в HP-UX и / unix в системах IRIX и AIX.

Одна из самых первых, наверное, самых сложных задач системы. Администратор должен выполнить настройку ядра. Вы прочтете подробности далее в разделах, посвященных ‘Операционная система Установка’. Как только ядро ​​загружено, оно остается в памяти во время работы системы и обычно запускается в фиксированный объем памяти.Когда ядро ​​запускается, оно обычно отображает свое размер и объем физической памяти, оставшейся после загрузки ядра. Ядро исследует шину, чтобы найти устройства, указанные во время конфигурации и инициализирует обнаруженные устройства (игнорируя те что он не может связаться). Любое устройство, не обнаруженное и не инициализированное во время загрузка не будет доступна для системы, пока она не будет правильно подключена и система перезагружается.

Системные процессы

Ядро определяет устройства root, swap и dump, а затем запускает программы. для планирования процессов, управления физической и виртуальной памятью, а также процесс init .Системы BSD запускают три процесса инициализации; swapper , init и pagedaemon . В системах SVR4 процессы инициализации включают sched , init и различные обработчики памяти (кроме Solaris).

план

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

своппер

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

Демон страницы

Различные обработчики памяти запускаются как процесс 2. Когда страница виртуальной памяти обращаются к таблице страниц в ядре и, если необходимо, pagedaemon (SunOS 4.x) или pageout (SunOS 5.x) используется для перемещения страниц в и из физической памяти, а также для обновления таблиц страниц. Подобные обработчики памяти существуют в других системах SVR5.

инициализация

На последнем этапе начальной загрузки ядра запускается процесс / etc / init . В процесс init работает как процесс 1 и всегда остается в фоновом режиме, когда система работает. Если система запущена в однопользовательском режиме, init просто создает оболочку на системной консоли ( / dev / console ) и ждет для его завершения перед запуском других сценариев запуска.

Однопользовательский режим

Однопользовательская оболочка всегда является оболочкой Борна (sh) и работает как корень .Это позволяет системному администратору выполнять различные административные функции, такие как установка даты, проверка согласованности файловой системы, перенастройка списка онлайн-терминалов и т. д. На этом этапе обычно монтируется только корневой раздел. Другие файловые системы необходимо будет смонтировать вручную, чтобы использовать программы, которые не находятся на корневой объем. Проверка целостности файловой системы может выполняться команда fsck, обычно находится в каталоге / etc .

Сценарии запуска

Сценарии запуска — это просто сценарии оболочки, поэтому init порождает копию sh интерпретировать их.Скрипты запуска определены и организованы по-разному. в разных системах. В системах BSD сценарии запуска можно найти в каталог / etc и их имена начинаются с rc, например, /etc/rc.boot , /etc/rc.single , /etc/rc.local и так далее. Системы SVR5 определяют различные уровни выполнения, в которых конкретный набор процессов разрешено бежать. Этот набор процессов определен в / etc / inittab файл. Каждая строка в файле inittab описывает действие принять.Синтаксис записей inittab:

идентификатор: уровень выполнения: действие: процесс

  • id однозначно идентифицирует запись. Это может быть один или символы нить.
  • уровень выполнения определяет уровень выполнения, на котором может быть обработана запись. Если это поле пусто, предполагаются все уровни выполнения.
  • действие определяет, какие действия следует предпринять для этой записи. Эти действия может включать:
    • sysinit — выполнить инициализацию системы,
    • wait — дождитесь завершения процесса,
    • один раз — запустить процесс только один раз,
    • респаун — перезапускать процесс всякий раз, когда он умирает.
  • процесс указывает команду оболочки, которая будет запущена, если запись уровень выполнения соответствует уровню выполнения, и / или поле действия указывает на такое действие.

Обычно в сценариях запуска выполняются следующие задачи.

  • Задайте имя хоста.
  • Установите часовой пояс.
  • Запустить проверку целостности файловой системы.
  • Смонтируйте разделы диска системы.
  • Запуск демонов и сетевых служб.
  • Настройте сетевой интерфейс.
  • Включите учет и квоты.

Используемые термины: boot , bootstrapping ядро ​​, инициализация , своп , виртуальная память , уровень запуска .


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

Загрузка процесса загрузки компьютера

(1) Обзор процесса загрузки

(B) Подробное описание

1, блок питания процессора

Нажмите кнопку питания, главный компьютер запустится, и подача питания на материнскую плату микросхемы и ЦП.После включения материнская плата начинает инициализировать свою прошивку. Некоторая прошивка вылечена программой чипсета, она попытается запустить CPU. В случае сбоя при запуске (например, ЦП сломан или не подключен) компьютер выйдет из строя и выдаст сообщение об ошибке (например, некоторые версии прошивки материнской платы будут издавать звуковой сигнал). Это состояние называется «зумби с веерами».

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

До 2000 года использовались BIOS материнских плат компьютеров, а теперь подавляющее большинство компьютеров использует EFI (использование Mac — EFI) или UEFI. BIOS постепенно выводится из употребления. Основанный на EFI, процесс загрузки UEFI с традиционным BIOS отличается, в этой статье будет традиционный BIOS, пример процессора Intel, чтобы представить процесс загрузки.

И режим работы ЦП — реальный режим, этот режим — адресная шина 20, диапазон адресов 1М диапазон 0x00000 ~ 0xFFFFF.Это также объясняет, почему емкость BIOS составляет всего 1 МБ.

Процессор Intel

работает в трех режимах: реальный режим, защищенный режим 32-битный, 64-битный защищенный режим. Реальный режим: схема адресации Intel 8086 для обеспечения непрерывности бизнеса, совместимая со старой программой; Защищенный режим: использование актуальной программы трансляции адресов.

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

2, вектор сброса

После того, как большая часть его начальных регистров ЦП инициализирована до предопределенных значений, включая регистр команд (регистр команд, IR), который содержит адрес памяти ЦП для команды, которая должна быть выполнена.И у ЦП есть особое поведение, которое будет включать начальное значение IR плюс значение базового регистра, чтобы сгенерировать 32-битный адрес 0xFFFFFFF0. Это называется особым поведением, потому что ЦП может адресовать 1 МБ адресного пространства в реальном режиме, а этот 32-разрядный адрес превышает ограничения памяти на 1 МБ. Таким образом, 0xFFFFFFF0 также называется вектором сброса (вектором сброса), идентифицированным по ссылке 0xFFFFFFF0 Фиг.

Затем ЦП начинает выполнение с адреса инструкции 0xFFFFFFF0, адресом является инструкция JUMP, которая очищает значение базового регистра, и поэтому начало инструкции для перехода обратно в BIOS (физический адрес 0xf0000, верхняя ссылка на фиг. 0xf0000 identity) для выполнения BIOS.

BIOS

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

3, инициализация BIOS

Адрес 0xF0000 фактически является началом загрузочного блока BIOS. На этом этапе он инициализирует некоторое оборудование. Системный процессор, USB инициализирован только частично.

4, BIOS POST (самотестирование при включении)

После инициализации CPU 0xA0000 переходит к адресу (см. Фиг. 640 КБ) для BIOS POST (самотестирование при включении, POST). В ходе этого процесса исследуются компоненты компьютера, такие как ЦП, карта VGA, память, мышь, клавиатура и т. Д. Если памяти нет или вы можете позволить клавиатуре BIOS перестать работать и распечатать некоторые связанные сообщения об ошибках, если не удается найти предупреждение о звуковом сигнале BIOS

Когда ЦП выполняет адрес 0xC0000 (см. Фиг. 768 КБ), ПЗУ начало поиск других устройств, если BIOS найдет какие-либо другие устройства, они будут выполнены.

Затем графическая карта отобразит интерфейс BIOS и более подробный анализ.

5, уставка системы записи BIOS

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

Затем BIOS, следуя расширенному интерфейсу питания конфигурации (Advanced Configuration Power Interface, ACPI), устанавливает ряд данных в памяти для описания информации об оборудовании для использования ядром операционной системы.

7 、 MBR

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

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

а) загрузочная программа (Boot Loader)

б) таблица разделов жесткого диска (Partition Table)

c) обозначает конец слова

После чтения MBR-диска BIOS 0x7C00 скопирует его в адрес памяти, затем ЦП перейдет к адресу памяти выполнения инструкции MBR.Фактически, содержимое физической памяти копируется именно в загрузчике. В Common Boot Loader есть grub, lilo, spfdisk.

8, жесткий диск

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

Случай A: загрузочная запись тома

Загрузочная запись тома (загрузочная запись тома, сокращенно VBR).

Основная роль «Volume Boot Record», которая сообщает компьютеру, что раздел операционной системы находится в этой позиции.Затем компьютер загрузит операционную систему.

Вариант B: расширенные и логические разделы

С увеличением количества жестких дисков четырех основных разделов уже недостаточно, нам нужно больше разделов. Однако только четыре таблицы разделов, поэтому существует одна и только одна заранее заданная зона может быть определена как «расширенный раздел» (Extended partition).

Так называемый «расширенный раздел», который относится к этой области, разделен на несколько зон. Это разбиение внутренней части раздела, называемое «логическим разделом» (логическим разделом).

Компьютер сначала считывает первый сектор расширенного раздела, который называется «Extended Boot Record» (Расширенная загрузочная запись, сокращенно EBR). Внутри он также содержит таблицу разделов размером 64 байта, но не более двух (т. Е. Двух логических разделов).

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

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

Вариант C: Менеджер запуска

После этого случая компьютер считывает переднюю часть байтов машинного кода 446 «Master Boot Record», больше не управляет разделом, установленным заранее, а выполняет операцию «менеджер загрузки» (загрузчик), выбранную пользователем, который работает система запускается.

8, операционная система

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

Linux

Система Linux, например, для загрузки / загрузки каталога ядра. После загрузки ядра программа сначала запускается / sbin / init. Он (система Debian — это / etc / initab) процесс init генерирует файл конфигурации. Это первый процесс после запуска Linux, процесс pid имеет номер 1, остальные процессы являются его потомками.

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

На данный момент весь процесс запуска завершен.

Окна

В примере Windows7 при передаче управления операционной системе компьютер выполняет следующие операции:

  1. Загрузить ядро ​​(Ntoskrnl.exe), уровень абстракции оборудования (hal.dl), запись реестра SYSTEM (system32 \ configlsystem), драйверы устройств, а затем передает управление Ntoskrnl.exe

  2. Подсистемы выполнения инициализации Ntoskmnl, и начало программы драйвера устройства загрузки и управления системой для собственных приложений «и т. Д. Инициализация операционной среды SMSS), управление в SMSS.exe

  3. SMSS инициализирует реестр, создает переменные системной среды, загружает подсистему Win32 (Win32k.sys), промоутерские системные процессы (CSRSS, Wininlt, Winlogon) и элемент управления Winlogon.exe в Wininit.exe

  4. Wininit запускает диспетчер управления службами (SCM), локальную подсистему безопасности (LSASS «, локальный диспетчер сеансов (LSM))

  5. Winlogon plus программа интерфейса сухого входа в систему (Logonur), отображается диалоговое окно интерактивного входа в систему. Дождавшись входа пользователя в систему, запустите Userinit.exe в соответствии с конфигурацией реестра Explorer.exe

  6. Userinit запускает всех пользователей с момента запуска процесса, сетевое подключение Li Jin, запуск групповой политики в силе

  7. Explorer предоставляет интерактивный графический интерфейс, включая рабочий стол и управление документами.

На этом этапе компьютер начинает его завершать

Процесс загрузки Linux: руководство по началу работы

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

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

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

Как вам может помочь знание процесса загрузки Linux?

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

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

Вот несколько сценариев, в которых вам может помочь знание процесса загрузки Linux:

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

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

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

Процесс загрузки Linux

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

  1. BIOS
  2. MBR
  3. ГРУБ
  4. Ядро
  5. Начинается
  6. Программы уровня выполнения

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

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

№1. BIOS

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

После этого BIOS выполнит поиск программы загрузчика, загрузит ее в память и затем выполнит. Программа загрузчика находится внутри MBR — Master Boot Record.

Теперь MBR не обязательно загружать на жесткий или твердотельный диск. Иногда это может быть USB-накопитель или CD-ROM, который используется во время живой установки Linux. После загрузки программы загрузчика в память BIOS передает ей управление, и мы переходим к следующему этапу процесса загрузки.

№2. MBR

Как мы только что обсуждали выше, MBR — это сокращение от Master Boot Record. Он содержит информацию о GRUB или LILO в случае очень старых систем.

Функция MBR — загрузить и запустить загрузчик GRUB для продолжения процесса загрузки.

MBR находится в 1-м секторе загрузочного диска. Обычно вы можете найти это в / dev / hda или / dev / sda . Это расположение в основном зависит от оборудования — загружаетесь ли вы с жесткого диска, твердотельного накопителя, флеш-накопителя или компакт-диска.

№ 3. GRUB

GRUB, часто называемый GNU GRUB (GNU Grand Unified Bootloader), является основным загрузчиком для большинства современных систем Linux.

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

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

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

В зависимости от того, какой дистрибутив Linux вы используете и сколько ему лет, расположение файла GRUB может различаться. Скорее всего, вы найдете его в каталоге /boot/grub/grub.conf или /etc/grub.conf .

Вот беглый взгляд на пример содержимого файла grub.conf .

 по умолчанию = 0
тайм-аут = 10
splashimage = (hd0,0) /grub/splash.xpm.gz

# раздел для загрузки Linux
название Red Hat Enterprise Linux (2.4.21-1.ent)
корень (hd0,0)
ядро /vmlinuz-2.4.21-1 ro root = / dev / sda2
initrd /initrd-2.4.21-1.img

# раздел для загрузки Windows
заголовок Windows
rootnoverify (hd0,0)
цепной погрузчик +1 

Примечание : Если вы не можете найти расположение файла grub.conf в своей системе, вы можете выполнить поиск в документации вашего дистрибутива Linux или запустить поиск в Google, и он должен предоставить вам файл место нахождения.

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

После выбора ядра, с которым вы хотите загрузить свою систему, мы переходим к следующему этапу.

№4. Ядро

Короче говоря, ядро ​​- это ядро ​​операционной системы Linux (а также других операционных систем), которое полностью контролирует все в системе.

После того, как GRUB выберет ядро, он смонтирует корневую файловую систему, указанную в файле grub.conf файл. После монтирования ядро ​​выполнит программу / sbin / init .

Это всегда первая программа, которая выполняется во время загрузки системы. Вы можете подтвердить это, проверив идентификатор процесса (PID) для этой программы, который всегда будет иметь значение 1.

Затем, пока не будет смонтирована реальная файловая система, ядро ​​создаст временную корневую файловую систему, используя начальный RAM-диск — initrd . Это не займет секунды или двух.

№ 5.Init

Теперь система готова начать выполнение программ уровня выполнения. Сначала ему потребуется доступ к файлу инициализации, обычно расположенному по этому пути — / etc / inittab . Этот файл необходим для определения уровней запуска Linux.

При этом большинство современных систем Linux перешли на «systemd», чтобы вместо этого выбирать уровень запуска. Вот подробная статья, которая поможет вам понять «systemd».

№ 6. Программы уровня выполнения

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

У каждого уровня выполнения есть свои каталоги, а программы, относящиеся к уровням выполнения, находятся в соответствующем каталоге. Таким образом, программы уровня выполнения, соответствующие более раннему каталогу, будут выполняться первыми, а затем остальные в порядке возрастания.

Ниже приводится обычный список каталогов, соответствующих шести различным уровням выполнения:

  1. Уровень выполнения 0 — / etc / rc0.d /
  2. Уровень выполнения 1 — /etc/rc1.d/
  3. Уровень выполнения 2 — /etc/rc2.d/
  4. Уровень выполнения 3 — /etc/rc3.d/
  5. Уровень выполнения 4 — /etc/rc4.d/
  6. Уровень выполнения 5 — /etc/rc5.d/
  7. Уровень выполнения 6 — /etc/rc6.d/

Примечание : точное расположение каталогов зависит от вашего дистрибутива Linux. Если вы не можете найти каталоги уровня выполнения, обратитесь к документации ОС или выполните быстрый поиск в Google.

Вы можете просмотреть различные программы, расположенные в каталогах уровня выполнения, и обнаружить, что некоторые программы начинаются с буквы «K» или «S.Здесь K означает «Убить», а S означает «Старт». Программы «Пуск» выполняются во время процесса запуска системы, а программы «Убить» — во время выключения системы.

Заключение

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *