Что происходит при включении компьютера

Что происходит при включении компьютера

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

Тест памяти — это наиболее видимая часть теста аппаратуры на этапе POST. Кстати, о видимости — видеоадаптер — тоже аппаратура, и его как раз необходимо инициализировать в первую очередь — чтобы пользователь мог видеть процесс тестирования и инициализации устройств. Так же, необходимо установить еще и режим (частоту обновления, разрешение) экрана. Ведь видеокарты могут быть сделаны разными фирмами, да еще и разные модели — кому как не БИОСу самой карточки знать досконально, как ее нужно инициализировать?
На каждой видеокарте есть свой BIOS, который опрашивается на его наличие при тестировании аппаратуры. Сначала системный БИОС ищет видео по стандартным адресам ISA VGA, — если там нет адаптера, то он ищется на PCI , потом на AGP (или сначала AGP, а потом PCI — это прописывается в установках BIOS SETUP). И если, видеобиос найден в одном из слотов, то управление передается на него.

И вообще, присутствие БИОСа на различных адаптерах заставляет системный БИОС отдавать им управление — в случае с видеоадаптером — это включение режима и т.д., в случае с сетевой картой — загрузка с сети (в случае с без дисковыми машинами — удаленная загрузка с сети) — при наличие BIOS на сетевой карте и наличие жесткого диска БИОС, например, может спросить — как будем грузиться — с сети или с имеющегося HDD? При наличии SCSI адаптера — он должен проинициализировать свои устройства (диски, CD-приводы, ленточные накопители и т.п.) и если таковые найдутся из числа дисков SCSI — необходимо будет поддержать int13 для того, чтобы система могла обращаться к ним, как к обычным жестким дискам. Хотя, инициализация SCSI устройств необязательна — например, при старте, ее можно отключать — если SCSI устройство не является загрузочным, это разумно.

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

Итак, коротко можно описать следующим образом: все, кроме SCSI, IDE, USB "оживает" сразу — из адаптеров исключение составляет видеоадаптер, который инициализируется даже до проверки памяти.

Далее — если в слотах ISA находятся другие устройства, имеющие свои ПЗУ (с BIOS) — они инициализируются на этапе проверки внешних устройств, потом проходит проверка и назначение PCI (проверка устройств Plug and Play). Кстати, PnP есть и на ISA адаптерах.
Только после этого начинается проверка наличия устройств на IDE шине.

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

Ну, и в конце концов, после инициализации — считывается первый сектор первой дорожки первой головки жесткого диска и управление передается загрузочному сектору, который уже управляет дальнейшими действиями (либо выдается сообщение типа "NO SYSTEM TO BOOT"). Или подобным же образом система грузится с дискеты.

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

Читайте также:  Эндлесс спейс 2 расы

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

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

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

Включение компьютера, 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.

Нет, нет, это не статья про то, как найти системный блок компьютера, а потом еще и кнопку включения, чтобы поиграть в DOOM.

Расскажу, как работает компьютер на примере 8-разрядного процессора. Конечно, вряд ли вы или я найдете такое чудо у себя дома. Это даже не 8086, который является 16-разрядным процессором, и стал символом начала персональных компьютеров. Этот процессор 8085 появился в 1976 году с тактовой частотой 5 МГц.

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

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

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

Как это работает? Память компьютера делится на ПЗУ, ОЗУ и внешние запоминающие устройства. Вся память естественно адресована. В счетчике команд при включении хранится адрес первой выполняемой команды: 0000h (в шестнадцатеричном формате). Этот адрес указывает на ячейку памяти в ПЗУ (постоянном запоминающем устройстве), так как начальные операции всегда выполняются одни и те же и введены в микросхему на заводе-изготовителе.

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

Допустим, если надо сложить 2 числа, нам не обойтись без АЛУ – арифметическо-логического устройства – которое берет на себя всю эту ужасную работу: сложение, вычитание, сравнение, сдвиги и т.п.

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

Ну и последнее. Вот компьютер работает, работает, прямо робот какой-то, ноль внимания на пользователя. А мы то все хотим запустить супер игру DOOM, и забыть про всякие АЛУ и дешифраторы. Нет проблем!

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

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

Ссылка на основную публикацию
Что отражает двоичная матрица
Представление информации в табличной форме широко распростране­но. Чаще всего мы пользуемся прямоугольными таблицами. Простейшая таблица состоит из строк и граф...
Что если компьютер включается и сразу выключается
Одна из распространенных проблем с компьютером — он включается и сразу выключается (через секунду-другую). Обычно это выглядит следующим образом: нажатие...
Что за номер 800 555
У пользователей часто звонит неизвестный номер 88005551534 или остаются пропущенные звонки. Давайте разберемся какой организации принадлежит этот номер, а ниже...
Что означают значки в погоде на айфоне
Самые интересные новости о технике Apple и не только. Что означают значки погоды на iPhone? Сегодняшняя тема весьма заинтересует многих...
Adblock detector