В вычислительной технике перезагрузка — это процесс, при котором работающая компьютерная система перезагружается намеренно или непреднамеренно. Перезагрузка может представлять собой холодную перезагрузку (также известную как полная перезагрузка ), при которой питание системы физически отключается и снова включается (вызывает начальную загрузку компьютера); или «теплая» перезагрузка (или «мягкая перезагрузка »), при которой система перезагружается, не отключаясь от питания. Термин «перезагрузка» (как системная команда) используется для обозначения перезагрузки, когда операционная система закрывает все программы и завершает все ожидающие операции ввода и вывода перед началом программной перезагрузки.
Ранние электронные компьютеры (например, IBM 1401 ) не имели операционной системы и имели мало внутренней памяти. Ввод часто представлял собой стопку перфокарт или через регистр переключения . В системах с картами компьютер запускался нажатием кнопки запуска, выполнявшей единственную команду — «прочитать карту». Эта первая карта затем давала машине команду прочитать другие карты, которые в конечном итоге загрузили пользовательскую программу. Этот процесс можно сравнить со старой поговоркой « поднимание себя за ремни », относящейся к всаднику, который отрывается от земли, натягивая ремни своих ботинок. Этот набор инициирующих перфокарт назывался «начальными картами». Таким образом, холодный старт назывался загрузкой компьютера. Если компьютер падал , его перезагружали. Ссылка на загрузку перенесена на все последующие типы компьютеров.
Для компьютеров, совместимых с IBM PC , холодная перезагрузка — это процесс загрузки, при котором компьютер запускается из обесточенного состояния, при котором система выполняет полную самопроверку при включении (POST). [1] [2] [3] [4] И операционная система, и стороннее программное обеспечение могут инициировать холодную перезагрузку; команда перезапуска в Windows 9x инициирует холодную перезагрузку, если не удерживать клавишу Shift. [1] : 509
«Горячая» перезагрузка инициируется BIOS либо в результате сочетания клавиш Control-Alt-Delete [1] [2] [3] [4] либо непосредственно через прерывание BIOS INT 19h. [5] Он может не выполнить полный POST (например, пропустить тест памяти) или вообще не выполнить POST. [1] [2] [4] Вредоносное ПО может помешать или нарушить теплую перезагрузку, перехватив комбинацию клавиш Ctrl + Alt + Delete и не давая ей достичь BIOS. [6] Семейство операционных систем Windows NT также делает то же самое и резервирует комбинацию клавиш для собственного использования. [7] [8]
Семейство операционных систем Linux поддерживает альтернативу «горячей» загрузке; Ядро Linux имеет дополнительную поддержку kexec — системного вызова , который передает выполнение новому ядру и пропускает сброс оборудования или прошивки. Весь процесс происходит независимо от прошивки системы. Выполняемое ядро не обязательно должно быть ядром Linux. [ нужна цитата ]
За пределами компьютеров, совместимых с IBM PC, типы загрузки могут быть не такими ясными. По словам Сью Ло из базовой группы Windows CE , устройства Windows CE поддерживают три типа загрузки: теплую, холодную и чистую. При «теплой» загрузке программная память сбрасывается. Холодная загрузка дополнительно удаляет память (также известную как «хранилище объектов»), а чистая загрузка стирает все формы памяти с устройства. Однако, поскольку эти области существуют не на всех устройствах Windows CE, пользователей интересуют только две формы перезагрузки: одна сбрасывает энергозависимую память, а другая очищает устройство и восстанавливает заводские настройки. Например, для устройства Windows Mobile 5.0 первое — это холодная загрузка, а второе — чистая загрузка. [9]
Принудительная перезагрузка означает, что система не выключается должным образом, пропуская синхронизацию файловой системы и другие действия, которые могут произойти при штатном завершении работы. Этого можно добиться, применив сброс , выключив и выключив питание , введя команду в большинстве Unix-подобных систем или вызвав панику ядра .halt -q
При атаке с холодной загрузкой используются жесткие перезагрузки .
Термин «перезагрузка» используется в семействах операционных систем Microsoft Windows и Linux для обозначения перезагрузки с помощью операционной системы. При перезапуске операционная система обеспечивает корректное завершение всех ожидающих операций ввода-вывода перед началом перезагрузки.
Пользователи могут намеренно инициировать перезагрузку. Обоснованием таких действий может быть:
Способы выполнения преднамеренной перезагрузки также различаются и могут включать в себя:
Неожиданная потеря электропитания по любой причине (включая отключение электропитания , сбой электропитания или разрядку аккумулятора мобильного устройства) вынуждает пользователя системы выполнить холодную перезагрузку после восстановления электропитания. Некоторые BIOS имеют возможность автоматически загружать систему после сбоя питания. [14] [15] Источник бесперебойного питания (ИБП), резервная батарея или резервный источник питания могут предотвратить подобные ситуации.
«Случайная перезагрузка» — это нетехнический термин, обозначающий непреднамеренную (и часто нежелательную) перезагрузку после сбоя системы , основная причина которого может не сразу быть очевидна пользователю. Такие сбои могут возникать из-за множества программных и аппаратных проблем, например, тройных сбоев . Обычно они являются симптомами ошибки в кольце 0 , которая не перехватывается обработчиком ошибок в операционной системе или аппаратно инициируемым немаскируемым прерыванием .
Системы можно настроить на автоматическую перезагрузку после сбоя питания, фатальной системной ошибки или паники ядра . Способ, с помощью которого это делается, зависит от того, можно ли выполнить перезагрузку с помощью программного обеспечения или ее необходимо выполнить на уровне встроенного ПО или оборудования. Операционные системы семейства Windows NT (от Windows NT 3.1 до Windows 7 ) имеют возможность изменить поведение обработчика ошибок, чтобы компьютер немедленно перезагружался, а не отображал сообщение об ошибке «Синий экран смерти» (BSOD). В некоторых выпусках эта опция включена по умолчанию.
Внедрение расширенного управления питанием позволило операционным системам лучше контролировать функции управления питанием оборудования. Благодаря расширенному интерфейсу конфигурации и питания (ACPI) новые операционные системы могут управлять различными состояниями питания и, таким образом, переходить в режим сна и/или гибернации . Хотя спящий режим также предполагает выключение системы и последующее ее повторное включение, операционная система не запускается с нуля, что отличает этот процесс от перезагрузки.
Перезагрузку можно имитировать с помощью программного обеспечения, работающего в операционной системе. Например: утилита Sysinternals BlueScreen, которая используется для розыгрышей; или некоторые режимы «взлома» bsod XScreenSaver для развлечения (хотя, возможно, на первый взгляд вызывающие беспокойство). Вредоносное ПО также может имитировать перезагрузку и тем самым обмануть пользователя компьютера в каких-то гнусных целях. [6]
Инструмент виртуализации Microsoft App-V фиксирует все операции установщика с файловой системой, чтобы создать виртуализированный пакет программного обеспечения для пользователей. В рамках процесса определения последовательности он определяет, когда установщику требуется перезагрузка, прерывает инициированную перезагрузку и вместо этого моделирует требуемую перезагрузку путем перезапуска служб и загрузки/выгрузки библиотек. [16]
Windows 8 и 10 включают (по умолчанию) режим гибернации , подобный «Быстрому запуску» (также известному как «Быстрая загрузка»), который может вызвать проблемы (включая путаницу) у пользователей, привыкших выключать компьютеры для (холодной) перезагрузки. [17] [18] [19]