Программы начальной загрузки компьютера это

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

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

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

КАК УДАЛИТЬ при загрузке выбор операционной системы

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

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

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

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

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

ЛАЙФХАК: Как активировать таймер выключения ПК #Shorts

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

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

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

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

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

Читайте также:
Программа как узнать песню по мелодии

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

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

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

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

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

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

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

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

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

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

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

Читайте также:
Как пользоваться программой Телеграмм

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

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

Источник: intuit.ru

Начальная загрузка компьютера

При включении компьютера он тестирует свои устройства и пытается выполнить загрузку операционной системы (ОС) – программы, осуществляющей управление компьютером. Этот процесс называется начальной загрузкой. Процесс начальной загрузки может быть инициирован и без включения электропитания, в этом случае он обычно называется перезагрузкой.
Когда выполняется начальная загрузка
Начальная загрузка компьютера осуществляется автоматически:
— в начале работы с компьютером, то есть при включении электропитания компьютера;
— при нажатии на клавишу «Reset» на корпусе компьютера (такая клавиша есть практически у всех моделей компьютеров).
Кроме того, начальная загрузка может быть осуществлена по требованию пользователя или программы. Например, при работе в ОС MS DOS для этого требуется одновременно нажать клавиши Ctrl , Alt и Del на клавиатуре. В ОС Windows 95, OS/2 и Windows NT для перезагрузки требуется выбрать соответствующий пункт в меню ОС.
Проверка оборудования
При начальной загрузке содержимое оперативной памяти компьютера очищается, после чего автоматически запускаются находящиеся в постоянной памяти компьютера (BIOS) программы проверки оборудования. Если эти программы находят ошибку, то выводят код ошибки или иное сообщение на экран. Если ошибка не критическая (т.е. дающая возможность продолжения работы), то пользователю обычно предоставляется возможность продолжить процесс загрузки, нажав клавишу F1 на клавиатуре. Если же неисправность критическая, то процесс загрузки прекращается.
Для ошибок, выявленных еще до проверки видеоподсистемы компьютера, сообщение на экран не выводится. В этих случаях об ошибке и ее типе сообщается посредством звуковых сигналов. О том, что означает каждый звуковой сигнал (скажем, пять коротких гудков или два коротких и один длинный), Вы можете узнать в документации по системной плате Вашего компьютера.
При серьезных ошибках о возникшей ситуации и о выданном сообщении (коде ошибки, звуковом сигнале) следует сообщить специалистам по техническому обслуживанию компьютеров.
Запрос пароля
Компьютеры с некоторыми типами BIOS (например, BIOS фирм AMI и Award) могут при начальной загрузке запрашивать пароль, выводя сообщение типа «Enter password» (введите пароль). Вводимый пароль для секретности на экран не выводится. Если пароль неправилен, то компьютер загружаться не будет. Установка и смена пароля осуществляется с помощью программы настройки конфигурации, входящей в состав BIOS.
Замечание . Если Вы забыли установленный пароль компьютера, то Вам придется отсоединить от системной платы компьютера аккумулятор, питающий CMOS, и разрядить его, закоротив его контакты. Однако после этого Вам придется заново установить все параметры конфигурации компьютера, хранящиеся в CMOS.
Программа конфигурирования
Все современные BIOS содержат программу, позволяющую установить параметры конфигурации компьютера (эти параметры хранятся в CMOS-памяти). Как правило, в нее Вы можете попасть только в процессе начальной загрузки компьютера.

Обычно после проверки базовых устройств компьютера, его оперативной памяти и видеоподсистемы на экран выводится сообщение о комбинации клавиш, которую надо нажать для входа в программу конфигурирования компьютера (например: Hit , If you want to run SETUP). При нажатии данной клавиши или комбинации клавиш Вы попадаете в экран программы конфигурирования, в котором можете задать текущие дату и время, типы дисководов для дискет и жесткого диска, другие параметры компьютера. Обычно управление программой конфигурирования достаточно простое – с помощью меню и клавиш, причем назначение клавиш отображается на экране. Пояснения по поводу параметров конфигурации обычно (хотя далеко не всегда) можно найти в документации на системную плату. Вход в программу конфигурирования (у некоторых типов BIOS) может быть защищен паролем.
Замечание . Некоторые устройства компьютера могут содержать расширения BIOS, включающие собственные программы конфигурирования данных устройств. Например, программы конфигурирования «интеллектуальных» SCSI-контроллеров позволяют настраивать параметры этих контроллеров, производить проверку и низкоуровневое форматирование подключенных к этому контроллеру дисков. Для вызова программы конфигурирования данных устройств надо нажать клавишу или комбинацию клавиш в соответствии с сообщением, выводимом на экран. Например, для программы конфигурирования SCSI-контроллеров фирмы Adaptec необходимо нажать комбинацию клавиш Cntrl A .

Читайте также:
Почему в Сбербанке не работает программа

Размещено в Без категории

Просмотров 5214 Комментарии 0

Сообщение форума
Отменить изменения

Источник: pchelpforum.ru

Начальный этап загрузки компьютера BIOS

  • Cервисы программы Вебмастерам
  • Вывод Webmoney на карту
  • Обмен Webmoney
  • Раскрутка и продвижение сайта
  • Реклама через социальные сети
  • Словарь Интернет терминов
  • Бонусы Webmoney
  • Анекдоты

Добавить в социальную сеть:

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

Процесс загрузки ПК можно разделить на определенные этапы.
1. Включение питания.
2. Блок питания выполняет процедуру самотестирования. Если выходные напряжения соответствуют определенным параметрам, на материнскую плату подается сигнал Power_Good. Интервал между включением и подачей сигнала составляет порядка 0,1-0,5 секунд.
3. Микросхема памяти, получив сигнал Power_Good, прекращает генерировать сигнал Reset, подаваемый на процессор.
4. Процессор запускает выполнение кода, записанного в ROM BIOS (начинает с адреса FFFF:0000). По данному адресу находится инструкция перехода на исполняемый код ROM BIOS.
5. Далее ROM BIOS запускает тестирование системы для проверки ее работоспособности. Выявив ошибку, система подает серию звуковых сигналов, поскольку видеоадаптер в этот момент не инициализирован. Если версия BIOS системы соответствует требованиям стандарта Plug and Play, проходят нижеперечисленные этапы. В противном случае производится переход к п.10.
6. Система Plug and Play BIOS сканирует каналы прямого доступа к памяти, линии прерываний, постоянные адреса ввода-вывода и другие параметры, требуемые для конфигурации устройств, поддерживающих данный стандарт.
7. Все устройства Plug and Play, обозначенные в BIOS, деактивизируются для того, чтобы избежать потенциальных конфликтов.
8. Формируется карта ресурсов (свободных и используемых).
9. Устройства Plug and Play активизируются, после предварительной конфигурации. Если в компьютере используется BIOS, не поддерживающая стандарт Plug and Play, установленные устройства Plug and Play проходят процесс инициализации с параметрами по умолчанию. Данные устройства в дальнейшем могут изменить конфигурацию при загрузке системы (диспетчер конфигурации запрашивает у BIOS данные об устройстве, а затем выясняет конфигурацию каждого устройства с поддержкой Plug and Play).
10. В поисках приложения работы с видеокартой BIOS сканирует память видео-адаптера в диапазоне адресов от C000:0000 до С780:0000. После нахождения BIOS видеокарты, сравнивается контрольная сумма ее программного кода. В случае совпадения контрольной суммы управление получает BIOS видеокарты, которая проводит инициализацию видеоадаптера и выводит на дисплей курсор; в противном случае формируется сообщение об ошибке.
11. Если не удается обнаружить BIOS видеокарты, используется видеодрайвер, сохраненный в микросхеме ROM материнской платы, который и проводит процедуру инициализации видеоадаптера.
12. BIOS материнской платы проверяет оставшийся диапазон памяти (с C800:0000 до DF80:0000) на наличие BIOS других адаптеров, подключенных к системной плате (например, SCSI).Найденные BIOS также запускаются на выполнение.
13. При выявлении несоответствий контрольной суммы одной из BIOS отображается сообщение об ошибке вида **** ROM ERROR, где **** – сегментный адрес модуля ROM с некорректными данными.
14. BIOS определяет слово, записанное по адресу 0000:0472, для определения вида загрузки (горячая или холодная). Если выполняется горячая загрузка, значение слова будет 1234h, в результате чего пропускается процедура POST. Если данный адрес хранит другое слово, запускается тест POST.
15. При холодном старте выполняется POST. В процессе тестирования на экране отображаются сообщения обо всех найденных ошибках и подается звуковой сигнал из встроенного динамика.
16. BIOS считывает 1 сектор, расположенный на стороне 0, цилиндре 0 (первый сектор) накопителя, с которого производится загрузка.
17. Если загрузка осуществляется с дискеты и первый байт, расположенный в загрузочной записи, меньше 06h или если данный байт равен или больше данного числа, но первые пять слов имеют одинаковые шаблоны данных, выводится сообщение о некорректной загрузочной записи дискеты.
18. Если загрузочной записи тома не удается загрузить или найти системные файлы, выводится оповещение о том, что накопитель не является системным.
19. Если в дисководе отсутствует системная дискета, BIOS считывает сектор MBR (главная загрузочная запись).
20. Если сигнатура данного сектора (последние два байта) не равны 55AAh, создается прерывание 18h. На монитор ПК при этом выводится соответствующее предупреждение.
21. Загрузчик производит поиск в таблице разделов активного раздела.
22. Если в таблице отсутствует активный раздел, выводится оповещение об ошибке при помощи вызова программного прерывания 18h.
23. Если какой либо из разделов содержит некорректную метку либо более одного раздела помечены как активные, выводится сообщение Invalid partition table и загрузка системы прекращается.
24. Если активный раздел найдет, его загрузочный сектор копируется в память и запускается проверка, действительно ли он является загрузочным.
25. Если загрузочный сектор загрузочного раздела не удается считать за пять попыток, выводится сообщение Error loading operating system и загрузка системы останавливается.
26. Сканируется сигнатура загрузочного сектора. Если два последних байта не равны значению 55AAh, выводится сообщение Missing operating system и загрузка системы прекращается.
27. Загрузочный сектор активного раздела хранит приложение загрузки ОС. Если системные файлы не расположены первыми в корневом каталоге, попытка чтения не удалась или загрузочный сектор поврежден, выводится сообщение о том, что диск содержит ошибку или не является системным.
Дальнейшая загрузка зависит от используемой операционной системы.

Запрещено копировать без ссылки на сайт

Источник: wmr1000.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru