Какое первое действие в последовательности загрузки происходит при включении коммутатора

Обновлено: 21.11.2024

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

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

Если компьютер неожиданно выключается, Windows регистрирует событие с кодом 41 при следующем включении компьютера. Текст события выглядит следующим образом:

Идентификатор события: 41.
Описание: Система перезагрузилась без корректного завершения работы.

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

EventData
BugcheckCode 159
BugcheckParameter1 0x3
BugcheckParameter2 0xfffffa80029c5060
BugcheckParameter3 0xffffff8000403d518
BugcheckParameter4 0xfffffa800208c010
SleepInProgress false
SleepInProgress false
BugcheckParameter3 0xfffffa8000403d518 0x9f (0x3, 0xfffffa80029c5060, 0xffffff8000403d518, 0xfffffa800208c010)

Как использовать событие с идентификатором 41 при устранении неполадок при неожиданном завершении работы или перезапуске

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

    : компьютер перезагружается из-за стоп-ошибки, а событие с кодом 41 содержит код стоп-ошибки (проверка ошибки) : компьютер перезагружается, потому что вы нажали и удерживали кнопку питания : компьютер не отвечает или перезагружается случайным образом, а событие с кодом 41 не регистрируется, или в записи Event ID 41 перечислены нулевые коды ошибок.

Сценарий 1. Компьютер перезагружается из-за стоп-ошибки, а событие с идентификатором 41 содержит код стоп-ошибки (проверка ошибки)

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

EventData
BugcheckCode 159
BugcheckParameter1 0x3
BugcheckParameter2 0xfffffa80029c5060
BugcheckParameter3 0xffffff8000403d518
BugcheckParameter4 0xfffffa800208c010

Событие с идентификатором 41 содержит код проверки ошибок в десятичном формате. Большая часть документации, описывающей коды проверки ошибок, ссылается на коды как на шестнадцатеричные значения, а не на десятичные. Чтобы преобразовать десятичное число в шестнадцатеричное, выполните следующие действия:

  1. Нажмите "Пуск", введите calc в поле поиска и выберите "Калькулятор".
  2. В окне "Калькулятор" выберите "Вид" > "Программист".
  3. Убедитесь, что в левой части калькулятора выделено поле "Декабрь".
  4. Используйте клавиатуру, чтобы ввести десятичное значение кода проверки на наличие ошибок.
  5. В левой части калькулятора выберите Hex.
    Значение, отображаемое калькулятором, теперь представляет собой шестнадцатеричный код.

При преобразовании кода проверки ошибок в шестнадцатеричный формат убедитесь, что за обозначением «0x» следуют восемь цифр (то есть часть кода после «x» содержит достаточное количество нулей для заполнения восьми цифр). Например, 0x9F обычно документируется как 0x0000009f, а 0xA — как 0x0000000A. В примере данных события в этой статье "159" преобразуется в 0x0000009f.

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

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

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

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

Для получения помощи при устранении неполадок с не отвечающим компьютером см. справку Windows. Рассмотрите возможность поиска помощи с помощью таких ключевых слов, как "зависание", "отвечает" или "пустой экран".

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

Этот сценарий включает следующие обстоятельства:

  • Вы отключаете питание не отвечающего компьютера, а затем перезагружаете его.
    Чтобы убедиться, что компьютер не отвечает, нажмите клавишу CAPS LOCK на клавиатуре. Если индикатор CAPS LOCK на клавиатуре не меняется при нажатии клавиши CAPS LOCK, возможно, компьютер полностью не отвечает (это также называется жестким зависанием).
  • Компьютер перезагружается, но не создает событие с идентификатором 41.
  • Компьютер перезагружается и генерирует событие с идентификатором 41, но значения BugcheckCode и PowerButtonTimestamp равны нулю.

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

Информация в событии с идентификатором 41 дает некоторое представление о том, с чего начать проверку на наличие проблем:

Событие с идентификатором 41 не записано или код проверки ошибки равен нулю. Такое поведение может указывать на проблему с питанием. Если питание компьютера прерывается, компьютер может выключиться без возникновения ошибки Stop. Если он генерирует ошибку Stop, он может не закончить запись кодов ошибок на диск. При следующем запуске компьютера он может не зарегистрировать событие с идентификатором 41. Или, если это произойдет, код проверки ошибки будет равен нулю. Причиной могут быть следующие условия:

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

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

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

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

  • Отключите разгон. Если на компьютере включен разгон, отключите его. Убедитесь, что проблема возникает, когда система работает с правильной скоростью.
  • Проверьте память. Используйте средство проверки памяти, чтобы определить работоспособность и конфигурацию памяти. Убедитесь, что все микросхемы памяти работают с одинаковой скоростью и что каждая микросхема правильно настроена в системе.
  • Проверьте источник питания. Убедитесь, что блок питания имеет достаточную мощность для правильной работы установленных устройств. Если вы добавили память, установили более новый процессор, установили дополнительные диски или добавили внешние устройства, такие устройства могут потреблять больше энергии, чем может постоянно обеспечивать текущий блок питания. Если компьютер зарегистрировал событие с идентификатором 41 из-за того, что питание компьютера было прервано, подумайте о приобретении источника бесперебойного питания (ИБП), например источника резервного питания от батареи.
  • Проверьте на перегрев. Проверьте внутреннюю температуру оборудования и проверьте, не перегреваются ли компоненты.

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

Если вы видите сообщение об ошибке Stop, содержащее код проверки ошибки, но код события 41 не включает этот код, измените поведение компьютера при перезагрузке. Для этого выполните следующие действия:

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

Загрузчик¶

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

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

Загрузочные устройства¶

Загрузочное устройство — это устройство, с которого загружается операционная система. Современный BIOS ПК (базовая система ввода-вывода) поддерживает загрузку с различных устройств. К ним относятся локальный жесткий диск, оптический дисковод, дисковод для гибких дисков, сетевая карта и USB-устройство. Как правило, BIOS позволяет пользователю настроить порядок загрузки. Если установлен порядок загрузки:

  1. CD-привод
  2. Жесткий диск
  3. Сеть

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

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

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

Получите полный доступ к Essential System Administration, 3-е издание и более чем 60 000 других игр с бесплатной 10-дневной пробной версией O'Reilly.

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

Самозагрузка – это полное название процесса запуска компьютерной системы и подготовки ее к использованию. Название происходит от того факта, что компьютеру нужна его операционная система, чтобы иметь возможность делать что-либо, но он также должен запускать операционную систему самостоятельно, без каких-либо служб, обычно предоставляемых операционной системой для этого. Следовательно, он должен «подтягиваться за свои собственные бутсы». Booting — это сокращение от bootstrapping, и именно этот термин я буду использовать. [1]

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

Нормальный процесс загрузки Unix состоит из следующих основных этапов:

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

Выполнение программы инициализации системы прошивки (происходит автоматически).

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

Нахождение и запуск ядра Unix (с помощью программы начальной загрузки). Файл образа ядра для выполнения может быть определен автоматически или посредством ввода в программу загрузки.

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

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

Мы рассмотрим каждый из этих пунктов в последующих разделах этой главы.

От включения до загрузки ядра

Как мы уже отмечали, процесс загрузки начинается, когда выполняются инструкции, хранящиеся в постоянной энергонезависимой памяти компьютера (в просторечии называемой BIOS, ROM, NVRAM и т. д.). Это место хранения инструкций по начальной загрузке обычно называется прошивка (в отличие от «программного обеспечения», но отражающее тот факт, что инструкции представляют собой программу [2]).

Эти инструкции выполняются автоматически при включении питания или сбросе системы, хотя точная последовательность событий может варьироваться в зависимости от значений сохраненных параметров. [3] Инструкции прошивки также могут начать выполняться в ответ на команду, введенную на системной консоли (как мы вскоре увидим). Как бы они ни были инициированы, эти инструкции используются для поиска и запуска системной загрузочной программы , которая, в свою очередь, запускает операционную систему Unix.

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

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

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

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

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

ядро — это часть операционной системы Unix, которая продолжает работать все время, когда система работает. Сам исполняемый образ ядра с условным названием unix (системы на основе System V), vmunix (системы на основе BSD) или что-то подобное. Обычно он хранится в корневом каталоге или связан с ним. Вот типичные имена ядер и расположение каталогов для различных операционных систем, которые мы рассматриваем:

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

Последовательность загрузки маршрутизатора Cisco состоит из следующих шагов:

<р>1. Маршрутизатор выполняет POST (самотестирование при включении питания). POST (самотестирование при включении питания) проверяет оборудование, чтобы убедиться, что все компоненты устройства работают и присутствуют. Например, POST проверяет наличие различных интерфейсов на маршрутизаторе. POST хранится и запускается из ПЗУ (постоянной памяти).

<р>2. Программа начальной загрузки (начальная загрузка — это программа в ПЗУ, которая используется для выполнения программ) проверяет значение регистра конфигурации, чтобы найти место для загрузки IOS. Значение регистра конфигурации по умолчанию — 0x2102 (шестнадцатеричное значение). Значение регистра конфигурации 0x2102 указывает, что маршрутизатор должен загрузить образ программного обеспечения операционной системы Cisco IOS из флэш-памяти и загрузить начальную конфигурацию со скоростью консоли 9600 бод. Начальная загрузка ищет и загружает программное обеспечение Cisco IOS из флэш-памяти, если значение регистра конфигурации равно 0x2102.

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

Если программе Bootstrap не удается найти действительный образ IOS, она будет действовать как монитор ПЗУ. ROM Monitor может предоставить среду командной строки, которую можно использовать для выполнения определенных задач настройки, таких как загрузка образа IOS с использованием TFTP, восстановление утерянного пароля, изменение значения регистра конфигурации и т. д.

<р>3. Программное обеспечение IOS ищет действительный файл конфигурации, хранящийся в NVRAM. Этот файл называется startup-config.

<р>4. Если в NVRAM присутствует файл конфигурации запуска (startup-config), маршрутизатор загрузит и применит команды конфигурации из файла конфигурации запуска (startup-config). Если действительный файл конфигурации запуска (startup-config) отсутствует в NVRAM, IOS отобразит настройку конфигурации системы.

<р>5. После загрузки конфигурации конфигурации запуска IOS представит интерфейс CLI в пользовательском режиме.

Читайте также: