Jump to content

Загрузка

Блок-схема загрузки компьютера

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

Перезапуск компьютера также называется перезагрузкой , которая может быть «жесткой», например, после переключения питания ЦП с выключенного на включенное состояние, или «мягкой», когда питание не отключается. В некоторых системах программная загрузка может дополнительно очистить ОЗУ до нуля. Как аппаратная, так и программная загрузка может быть инициирована аппаратным обеспечением, например нажатием кнопки или командой программного обеспечения. Загрузка считается завершенной, когда действующая система выполнения (обычно операционная система и некоторые приложения) [ номер 1 ] достигается.

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

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

Boot — это сокращение от bootstrap [ 1 ] [ 2 ] или бутстрап-загрузка и происходит от фразы «подтянуть себя за бутстрепы» . [ 3 ] [ 4 ] Использование обращает внимание на требование, что, если большая часть программного обеспечения загружается на компьютер другим программным обеспечением, уже работающим на компьютере, должен существовать некоторый механизм для загрузки исходного программного обеспечения на компьютер. [ 5 ] Ранние компьютеры использовали множество специальных методов для помещения в память небольшой программы и решения этой проблемы. Изобретение постоянного запоминающего устройства (ПЗУ) различных типов разрешило этот парадокс, позволив поставлять компьютеры с программой запуска, которую нельзя было стереть. Рост емкости ПЗУ позволил реализовать еще более сложные процедуры запуска.

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

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

Примеры предварительно интегрированных ПЗУ

[ редактировать ]

Ранние компьютеры

[ редактировать ]

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

Система EDSAC , второй построенный компьютер с хранимой программой, использовала пошаговые переключатели для передачи фиксированной программы в память при нажатии кнопки запуска. Программа, хранящаяся на этом устройстве, которую Дэвид Уилер завершил в конце 1948 года, загружала дальнейшие инструкции с перфоленты и затем выполняла их. [ 6 ] [ 7 ]

Первые коммерческие компьютеры

[ редактировать ]

Первые программируемые компьютеры, поступившие в коммерческую продажу, такие как UNIVAC I и IBM 701. [ 8 ] включены функции, упрощающие их работу. Обычно они включали инструкции, выполняющие полную операцию ввода или вывода. Та же самая аппаратная логика могла использоваться для загрузки содержимого перфокарты ( наиболее типичных) или другого носителя ввода, такого как магнитный барабан или магнитная лента , содержащего программу начальной загрузки, нажатием одной кнопки. Эта концепция загрузки называлась по-разному для компьютеров IBM 1950-х и начала 1960-х годов, но IBM использовала термин «начальная загрузка программы» с IBM 7030 Stretch. [ 9 ] и позже использовали его для своих линеек мэйнфреймов, начиная с System/360 в 1964 году.

Перфокарта начальной загрузки программы для IBM 1130 (1965 г.)

Компьютер IBM 701 (1952–1956) имел кнопку «Загрузить», которая инициировала чтение первого 36-битного слова в основную память с перфокарты в устройстве для чтения карт , магнитной ленты в лентопротяжном устройстве или магнитного барабана. , в зависимости от положения переключателя нагрузки. Левое 18-битное полуслово затем выполнялось как инструкция, которая обычно считывает в память дополнительные слова. [ 10 ] [ 11 ] Затем была выполнена загруженная загрузочная программа, которая, в свою очередь, загрузила более крупную программу с этого носителя в память без дополнительной помощи со стороны человека-оператора. IBM 704 , [ 12 ] ИБМ 7090 , [ 13 ] и IBM 7094 [ 14 ] имели схожие механизмы, но с разными кнопками загрузки для разных устройств. Термин «ботинок» используется в этом смысле как минимум с 1958 года. [ 15 ]

Консоль IBM System/3 1970-х годов. Переключатель загрузки программы находится внизу слева; Переключатель загрузки программы находится внизу справа.

Другие компьютеры IBM той эпохи имели аналогичные функции. Например, система IBM 1401 (ок. 1958 г.) использовала устройство чтения карт для загрузки программы с перфокарты. 80 символов, хранящихся на перфокарте, были считаны в ячейки памяти с 001 по 080, затем компьютер перешел к ячейке памяти 001, чтобы прочитать свою первую сохраненную инструкцию. Эта инструкция всегда была одной и той же: переместите информацию из этих первых 80 ячеек памяти в область сборки, где информация на перфокартах 2, 3, 4 и т. д. могла быть объединена для формирования сохраненной программы. Как только эта информация будет перемещена в зону сборки, машина перейдет к инструкции в ячейке 080 (считывание карты), и следующая карта будет прочитана, а ее информация обработана.

Другим примером была IBM 650 (1953), десятичная машина, имевшая на панели оператора группу из десяти 10-позиционных переключателей, которые адресулись как слово памяти (адрес 8000) и могли выполняться как инструкция. Таким образом, установка переключателей на 7004000400 и нажатие соответствующей кнопки приведет к считыванию первой карты из устройства чтения карт в память (код операции 70), начиная с адреса 400, а затем к адресу 400, чтобы начать выполнение программы на этой карте. [ 16 ] IBM 7040 и 7044 имеют аналогичный механизм, в котором кнопка «Загрузить» вызывает выполнение инструкции, установленной в клавишах ввода на передней панели, а каналу, который устанавливает инструкция, дается команда для передачи данных в память, начиная с адреса. 00100; когда эта передача завершается, ЦП переходит на адрес 00101. [ 17 ]

Конкуренты IBM также предлагали загрузку программ одной кнопкой.

  • CDC 6600 (около 1964 г.) имел панель запуска со 144 тумблерами; переключатель мертвого старта ввел 12 12-битных слов из тумблеров в память периферийного процессора ( ПП ) 0 и инициировал последовательность загрузки, заставив ПП 0 выполнить код, загруженный в память. [ 18 ] PP 0 загрузил необходимый код в свою память, а затем инициализировал остальные PP.
  • GE 645 (ок. 1965 г.) имел кнопку «SYSTEM BOOTLOAD», при нажатии которой один из контроллеров ввода-вывода загружал программу из 64 слов в память из диодной постоянной памяти и выдавал прерывание, вызывающее эта программа начнет работать. [ 19 ]
  • Первая модель PDP -10 имела кнопку «ЧИТАТЬ», которая при нажатии перезагружала процессор и запускала операцию ввода-вывода на устройстве, указанном переключателями на панели управления, считывая 36-битное слово, дающее целевой адрес и счетчик последующих чтений слов; когда чтение завершилось, процессор начал выполнение прочитанного кода, перейдя к последнему прочитанному слову. [ 20 ]

Примечательный вариант этого можно найти на Burroughs B1700 , где нет ни загрузочного ПЗУ, ни проводной операции IPL. Вместо этого после перезагрузки системы она последовательно считывает и выполняет микрокоманды с кассетного стримера, установленного на передней панели; это устанавливает загрузчик в оперативной памяти, который затем запускается. [ 21 ] Однако, поскольку при этом делается мало предположений о системе, его с таким же успехом можно использовать для загрузки диагностических лент (программы технического обслуживания), на которых на передней панели отображается понятный код даже в случае серьезного отказа ЦП. [ 21 ]

IBM System/360 и его преемники

[ редактировать ]

В IBM System/360 и его преемниках, включая современные машины z/Architecture , процесс загрузки известен как начальная загрузка программы (IPL).

IBM придумала этот термин для 7030 (Stretch) . [ 9 ] возродил его для разработки System/360 и продолжает использовать его в этих средах сегодня. [ 22 ] В процессорах System/360 IPL инициируется оператором компьютера путем выбора трехшестнадцатеричного адреса устройства (CUU; C = адрес канала ввода-вывода, UU = блок управления и адрес устройства). [ номер 2 ] ) с последующим нажатием кнопки ЗАГРУЗИТЬ . В моделях высшего класса System/360 большинство [ номер 3 ] В System/370 и некоторых более поздних системах функции переключателей и кнопки ЗАГРУЗИТЬ моделируются с использованием выбираемых областей на экране графической консоли, часто [ номер 4 ] устройство типа IBM 2250 или устройство типа IBM 3270 . Например, в System/370 Model 158 последовательность клавиатуры 0-7-X (ноль, семь и X в указанном порядке) приводит к IPL из адреса устройства, который был введен в область ввода. Amdahl 470V/6 и связанные с ним ЦП поддерживали четыре шестнадцатеричные цифры на тех ЦП , на которых был установлен дополнительный модуль второго канала, всего 32 канала. Позже IBM также будет поддерживать более 16 каналов.

Функция IPL в System/360 и его преемниках до IBM Z и совместимых с ним устройствах, таких как Amdahl, считывает 24 байта из указанного оператором устройства в основную память, начиная с нулевого реального адреса. Вторая и третья группы по восемь байтов рассматриваются как командные слова канала (CCW) для продолжения загрузки программы запуска (первая CCW всегда моделируется ЦП и состоит из команды чтения IPL, 02h , с принудительной цепочкой команд и подавлением неверной индикации длины). Когда команды канала ввода-вывода завершены, первая группа из восьми байтов загружается в слово состояния программы (PSW) процессора, и программа запуска начинает выполнение в месте, указанном этим PSW. [ 22 ] Устройством IPL обычно является дисковод, поэтому особое значение имеет 02h , но точно такая же процедура используется и для IPL с других устройств ввода, таких как ленточные накопители или даже устройства считывания карт, независимо от устройства, что позволяет, например, установить операционную систему. систему на новеньком компьютере с магнитной ленты первоначального дистрибутива ОС. Для дисковых контроллеров Команда 02h также заставляет выбранное устройство искать цилиндр. 00:00 , голова 0000h , имитируя команду поиска цилиндра и головки, 07h и для поиска записи 01h , имитируя команду Search ID Equal, 31 час ; поиск и поиск не моделируются контроллерами лент и карт, поскольку для этих классов устройств команда чтения IPL представляет собой просто команду последовательного чтения.

Диск, лента или колода карт должны содержать специальную программу для загрузки реальной операционной системы или автономной утилиты в основное хранилище, и для этой конкретной цели «IPL Text» помещается на диск с помощью автономного DASDI (устройства хранения данных с прямым доступом). Программа инициализации) или эквивалентная программа, работающая под управлением операционной системы, например, ICKDSF, но ленты и колоды карт с поддержкой IPL обычно распространяются с уже присутствующим этим «IPL Text».

IBM внесла некоторые эволюционные изменения в процесс IPL, изменив некоторые детали для расширенной архитектуры System/370 (S/370-XA) и более поздних версий, а также добавив новый тип IPL для z/Architecture.

Миникомпьютеры

[ редактировать ]
На передней панели PDP-8/E показаны переключатели, используемые для загрузки программы начальной загрузки.

Миникомпьютеры , начиная с (1965) компании Digital Equipment Corporation (DEC), PDP-5 и PDP-8 упрощали конструкцию за счет использования ЦП для облегчения операций ввода и вывода. Это позволило сэкономить средства, но усложнило загрузку, требующую нажатия одной кнопки. Миникомпьютеры обычно имели какой-то способ переключения коротких программ с помощью набора переключателей на передней панели . Поскольку первые миникомпьютеры использовали память на магнитных сердечниках , которая не теряла свою информацию при отключении питания, эти загрузчики оставались на месте, пока они не были стерты. Стирание иногда происходило случайно, когда ошибка программы вызывала цикл, в результате которого перезаписывалась вся память.

Другие миникомпьютеры с такой простой формой загрузки включают серию HP 2100 от Hewlett-Packard (середина 1960-х), оригинальный Data General Nova от DEC (1969), а также PDP-4 (1962) и PDP-11 (1970).

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

Позже, в 1971 году, DEC добавила дополнительную с диодной матрицей постоянную память для PDP-11, в которой хранилась программа начальной загрузки длиной до 32 слов (64 байта). Он состоял из печатной платы M792, которая подключалась к Unibus и содержала массив полупроводниковых диодов размером 32 на 16. При наличии всех 512 диодов память содержала все «единичные» биты; карта была запрограммирована путем отключения каждого диода, бит которого должен был быть «нулем». DEC также продавала версии карты серии BM792-Yx, предварительно запрограммированные для многих стандартных устройств ввода, просто убрав ненужные диоды. [ 23 ] [ 24 ]

Следуя старому подходу, более ранний PDP-1 имеет аппаратный загрузчик, так что оператору нужно только нажать переключатель «загрузки», чтобы дать указание считывателю бумажной ленты загрузить программу непосредственно в основную память. ПДП -7 , [ 25 ] ПДП-9 , [ 26 ] и ПДП-15 [ 27 ] В преемниках PDP-4 была добавлена ​​кнопка Read-In для чтения программы с бумажной ленты и перехода к ней. Data General Supernova использовала переключатели на передней панели, чтобы компьютер автоматически загружал инструкции в память с устройства, указанного переключателями данных на передней панели, а затем переходил к загруженному коду. [ 28 ]

Ранние примеры загрузчика мини-компьютера
[ редактировать ]

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

  1. Установите регистр P на 9.
  2. Проверьте готовность устройства чтения бумажной ленты
  3. Если не готовы, перейдите к 2
  4. Прочитайте байт из устройства чтения бумажной ленты в аккумулятор.
  5. Сохранение аккумулятора по адресу в регистре P
  6. Если лента закончилась, перейдите к 9.
  7. Увеличение регистра P
  8. Перейти на 2

Похожий пример основан на загрузчике миникомпьютера Nicolet Instrument Corporation 1970-х годов с использованием устройства считывания-перфорации бумажной ленты на Teletype Model 33 ASR телетайпе . Байты его загрузчика второй ступени считываются с бумажной ленты в обратном порядке.

  1. Установите регистр P на 106.
  2. Проверьте готовность устройства чтения бумажной ленты
  3. Если не готовы, перейдите к 2
  4. Прочитайте байт из устройства чтения бумажной ленты в аккумулятор.
  5. Сохранение аккумулятора по адресу в регистре P
  6. Уменьшить регистр P
  7. Перейти на 2

Длина загрузчика второго этапа такова, что последний байт перезаписывает ячейку 7. После выполнения инструкции в ячейке 6 ячейка 7 начинает выполнение загрузчика второй стадии. Затем загрузчик второго этапа ожидает, пока гораздо более длинная лента, содержащая операционную систему, будет помещена в устройство чтения ленты. Разница между загрузчиком и загрузчиком второго этапа заключается в добавлении проверочного кода для обнаружения ошибок чтения с бумажной ленты, что часто случается с относительно недорогим оборудованием, работающим неполный рабочий день, таким как Teletype Model 33 ASR. (Флексорайтеры Friden были гораздо более надежными, но и сравнительно дорогими.)

Загрузка первых микрокомпьютеров

[ редактировать ]

Самые ранние микрокомпьютеры, такие как Altair 8800 (впервые выпущенный в 1975 году) и еще более ранняя подобная машина (на базе процессора Intel 8008), не имели аппаратного обеспечения начальной загрузки как такового. [ 29 ] При включении процессор увидит память, содержащую случайные данные. На передних панелях этих машин были тумблеры для ввода адресов и данных, по одному переключателю на бит слова памяти компьютера и адресной шины. Простые дополнения к аппаратному обеспечению позволяли загружать с этих переключателей по одной ячейке памяти за раз для хранения кода начальной загрузки. При этом ЦП не мог попытаться выполнить содержимое памяти. После правильной загрузки ЦП мог выполнить код начальной загрузки. Этот процесс, аналогичный тому, который использовался в нескольких более ранних миникомпьютерах, был утомительным и должен был быть безошибочным. [ 30 ]

Эпоха постоянной памяти на интегральных схемах

[ редактировать ]
Intel 2708 EPROM «Чип» на печатной плате.

Внедрение постоянной памяти (ПЗУ) на интегральной схеме с ее многочисленными вариантами, включая ПЗУ с программированием по маске , программируемые ПЗУ (ПЗУ), стираемые программируемые ПЗУ (EPROM) и флэш-память , уменьшило физический размер и стоимость ПЗУ. Это позволило прошивки включить в состав компьютера программы загрузки .

Миникомпьютеры

[ редактировать ]

Data General Nova 1200 (1970) и Nova 800 (1971) имели переключатель загрузки программы, который в сочетании с опциями, предоставляющими две микросхемы ПЗУ, загружал программу в основную память из этих микросхем ПЗУ и переходил к ней. [ 28 ] Корпорация Digital Equipment представила BM873 на базе интегрального ПЗУ (1974 г.), [ 31 ] М9301 (1977 г.), [ 32 ] М9312 (1978 г.), [ 33 ] РЕВ11-А и РЕВ11-С, [ 34 ] МРВ11-С, [ 35 ] и МРВ11-Д [ 36 ] ПЗУ, которые можно использовать в качестве загрузочных ПЗУ. ПДП-11/34 (1976 г.), [ 37 ] ПДП-11/60 (1977 г.), [ 38 ] ПДП-11/24 (1979 г.), [ 39 ] и большинство более поздних моделей включают модули загрузочного ПЗУ.

Итальянский телефонный коммутационный компьютер под названием «Gruppi Speciali», запатентованный в 1975 году Альберто Чиарамеллой , исследователем из CSELT . [ 40 ] включено (внешнее) ПЗУ. Gruppi Speciali, начиная с 1975 года, представляла собой полностью однокнопочную машину, загружающую операционную систему из ПЗУ, состоящего из полупроводников, а не из ферритовых сердечников. Хотя устройство ПЗУ не было изначально встроено в компьютер Gruppi Speciali, из-за конструкции машины оно также позволяло загружать ПЗУ одной кнопкой на машинах, не предназначенных для этого (следовательно, это «устройство начальной загрузки» было независимым от архитектуры). ), например PDP-11. Также было предусмотрено сохранение состояния устройства после выключения, что было еще одной важной особенностью в соревновании по переключению телефона. [ 41 ]

Некоторые миникомпьютеры и суперминикомпьютеры включают в себя отдельный консольный процессор, который загружает основной процессор. PDP-11/44 имел процессор Intel 8085 в качестве консольного процессора; [ 42 ] VAX -11/780 , первый представитель Digital VAX линейки 32-битных суперминикомпьютеров , имел консольный процессор на базе LSI-11 . [ 43 ] а VAX-11/730 имел консольный процессор на базе 8085. [ 44 ] Эти консольные процессоры могли загружать основной процессор с различных устройств хранения данных.

Некоторые другие суперминикомпьютеры, такие как VAX-11/750, реализуют консольные функции, включая первый этап загрузки, в микрокоде ЦП. [ 45 ]

Микропроцессоры и микрокомпьютеры

[ редактировать ]

Обычно микропроцессор после перезагрузки или включения питания выполняет процесс запуска, который обычно принимает форму «начала выполнения найденного кода, начиная с определенного адреса» или «поиска многобайтового кода по адресу». конкретный адрес и перейти в указанное место, чтобы начать выполнение». Система, построенная с использованием этого микропроцессора, будет иметь постоянное ПЗУ, занимающее эти специальные места, так что система всегда начнет работать без помощи оператора. Например, процессоры Intel x86 всегда запускаются с выполнения инструкций, начинающихся с F000:FFF0, [ 46 ] [ 47 ] в то время как для процессора MOS 6502 инициализация начинается со считывания двухбайтового векторного адреса по адресам $FFFD (байт MS) и $FFFC (байт LS) и перехода в это место для запуска кода начальной загрузки. [ 48 ]

Apple Computer Первый компьютер , Apple 1, представленный в 1976 году, имел чипы PROM, которые устранили необходимость в передней панели для процесса загрузки (как это было в случае с Altair 8800) в коммерческом компьютере. Согласно рекламе Apple, в которой говорится: «Нет больше переключателей, нет больше света… прошивка PROMS позволяет вам вводить, отображать и отлаживать программы (все в шестнадцатеричном формате) с клавиатуры». [ 49 ]

Из-за дороговизны постоянной памяти в то время Apple II загружала свои дисковые операционные системы, используя серию очень маленьких дополнительных шагов, каждый из которых передавал управление следующему этапу постепенно усложняющегося процесса загрузки. (См. Apple DOS: Загрузчик ). Поскольку дисковая операционная система мало зависела от ПЗУ, аппаратное обеспечение было чрезвычайно гибким и поддерживало широкий спектр настраиваемых механизмов защиты диска от копирования . (См. Взлом программного обеспечения: история .)

Некоторые операционные системы, особенно Macintosh системы от Apple , выпущенные до 1995 года , настолько тесно переплетены со своим оборудованием, что невозможно загрузить другую операционную систему, кроме стандартной. Это противоположная крайность сценария с использованием упомянутых выше переключателей; он очень негибкий, но относительно устойчив к ошибкам и ошибкам, пока все оборудование работает нормально. Распространенным решением в таких ситуациях является создание загрузчика, который работает как программа, принадлежащая стандартной ОС, которая захватывает систему и загружает альтернативную ОС. Этот метод использовался Apple для реализации A/UX Unix и копировался различными бесплатными операционными системами и BeOS Personal Edition 5 .

Некоторые машины, такие как Atari ST микрокомпьютер , включались «мгновенно», а операционная система запускалась из ПЗУ . Таким образом, извлечение ОС из вторичного или третичного хранилища было исключено как одна из характерных операций начальной загрузки. Чтобы обеспечить автоматическую загрузку настроек системы, аксессуаров и другого вспомогательного программного обеспечения, во время процесса загрузки дисковод Atari считывался на наличие дополнительных компонентов. Была задержка по тайм-ауту, которая давала время вручную вставить дискету, пока система искала дополнительные компоненты. Этого можно избежать, вставив чистый диск. Аппаратное обеспечение Atari ST также было спроектировано таким образом, чтобы слот для картриджей мог обеспечивать собственное выполнение программ для игровых целей в качестве пережитка наследия Atari по созданию электронных игр; вставив картридж Spectre GCR с системным ПЗУ Macintosh в игровой слот и включив Atari, он мог «собственно загружать» операционную систему Macintosh, а не собственную TOS Atari .

Персональный компьютер IBM включал встроенное ПО на базе ПЗУ, называемое BIOS ; одной из функций этой прошивки было выполнение самотестирования при включении машины, а затем чтение программного обеспечения с загрузочного устройства и его выполнение. Прошивка, совместимая с BIOS персонального компьютера IBM, используется в компьютерах , совместимых с IBM PC . UEFI Intel был разработан Intel первоначально для компьютеров на базе Itanium , а затем также использовался в качестве альтернативы BIOS на x86 машинах на базе , включая Apple Mac, использующие процессоры .

Рабочие станции Unix изначально имели встроенное ПО на основе ПЗУ конкретного производителя. Позже Sun Microsystems разработала OpenBoot , позже известную как Open Firmware, которая включала в себя интерпретатор Forth , при этом большая часть встроенного ПО была написана на Forth. Он был стандартизирован IEEE как стандарт IEEE 1275-1994; Прошивка, реализующая этот стандарт, использовалась в PowerPC на базе компьютерах Mac и некоторых других машинах на базе PowerPC, а также в собственных компьютерах Sun на базе SPARC . Спецификация Advanced RISC Computing определила еще один стандарт встроенного ПО, который был реализован на некоторых на базе MIPS и Alpha машинах , а также на рабочих станциях на базе SGI Visual Workstation x86.

Современные загрузчики

[ редактировать ]

Когда компьютер выключается, его программное обеспечение, включая операционные системы, код приложений и данные, остается храниться в энергонезависимой памяти . (ОЗУ) обычно нет операционной системы или ее загрузчика Когда компьютер включен, в его оперативной памяти . Компьютер сначала выполняет относительно небольшую программу, хранящуюся в постоянной памяти (ROM, а затем EEPROM , флэш-память NOR ), которая поддерживает выполнение на месте , для инициализации процессора и материнской платы, инициализации DRAM (особенно в системах x86), для доступа к энергонезависимой памяти. устройство (обычно устройство с блочной адресацией, например флэш-память NAND, SSD) или устройства, с которых программы и данные операционной системы могут быть загружены в ОЗУ.

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

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

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

Загрузчики могут столкнуться с особыми ограничениями, особенно по размеру; например, на IBM PC и совместимых компьютерах загрузочный код должен помещаться в главную загрузочную запись (MBR) и загрузочную запись раздела (PBR), которые, в свою очередь, ограничены одним сектором; в IBM System/360 размер ограничен средой IPL, например размером карты , размером дорожки.

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

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

[ редактировать ]

Примеры загрузчиков первого этапа (этап инициализации оборудования) включают BIOS , UEFI , coreboot , Libreboot и Das U-Boot . На IBM PC загрузчик в главной загрузочной записи (MBR) и загрузочной записи раздела (PBR) был запрограммирован так, чтобы ему требовалось не менее 32 КБ. [ 50 ] [ 51 ] (позже расширен до 64 КБ [ 52 ] поддерживаемые оригинальными 8088/8086 ) системной памяти и используйте только инструкции , процессорами .

Загрузчики второго этапа

[ редактировать ]

Загрузчики второго этапа (этап инициализации ОС), такие как shim, [ 53 ] GNU GRUB , rEFInd , BOOTMGR , Syslinux , NTLDR и iBoot сами по себе не являются операционными системами, но способны правильно загружать операционную систему и передавать ей выполнение; операционная система впоследствии инициализируется и может загрузить дополнительные драйверы устройств . Загрузчик второго этапа не нуждается в драйверах для своей работы, но вместо этого может использовать общие методы доступа к хранилищу, предоставляемые системной прошивкой, такие как BIOS, UEFI или открытая прошивка , хотя обычно с ограниченной аппаратной функциональностью и более низкой производительностью. [ 54 ]

Многие загрузчики (например, GNU GRUB, rEFInd, BOOTMGR для Windows, Syslinux и NTLDR для Windows NT/2000/XP) можно настроить так, чтобы предоставить пользователю несколько вариантов загрузки. Эти варианты могут включать разные операционные системы (для двойной или многократной загрузки с разных разделов или дисков), разные версии одной и той же операционной системы (на случай, если новая версия имеет неожиданные проблемы), разные варианты загрузки операционной системы (например, загрузка в спасательный или безопасный режим ), а также некоторые автономные программы, которые могут работать без операционной системы, такие как тестеры памяти (например, memtest86+ ), базовая оболочка (как в GNU GRUB) или даже игры (см. Список игр для загрузки ПК ). [ 55 ] Некоторые загрузчики также могут загружать другие загрузчики; например, GRUB загружает BOOTMGR вместо прямой загрузки Windows. Обычно выбор по умолчанию выбирается заранее с временной задержкой, в течение которой пользователь может нажать клавишу, чтобы изменить выбор; после этой задержки автоматически запускается вариант по умолчанию, поэтому нормальная загрузка может происходить без взаимодействия.

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

Встроенные и многоступенчатые загрузчики.

[ редактировать ]

Многие встроенные системы должны загружаться немедленно. Например, ждать минуту, пока цифровое телевидение или GPS-навигатор, запустится вообще недопустимо. Следовательно, такие устройства имеют программное обеспечение в ПЗУ или флэш-памяти , поэтому устройство может начать работу немедленно; Загрузка не требуется или незначительна, поскольку загрузка может быть предварительно рассчитана и сохранена в ПЗУ при изготовлении устройства. [ нужна ссылка ]

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

Сетевая загрузка

[ редактировать ]

Большинство компьютеров также способны загружаться через компьютерную сеть . В этом сценарии операционная система хранится на диске сервера , а некоторые ее части передаются клиенту с помощью простого протокола, такого как Trivial File Transfer Protocol (TFTP). После передачи этих частей операционная система берет на себя управление процессом загрузки.

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

Персональные компьютеры (ПК)

[ редактировать ]

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

[ редактировать ]

Windows To Go Загрузочный флэш-накопитель Live USB , пример

Загрузочное устройство — это устройство хранения данных, с которого загружается операционная система. современного ПК Прошивка UEFI или BIOS поддерживает загрузку с различных устройств, обычно с локального твердотельного диска или жесткого диска через GPT или главную загрузочную запись (MBR) на таком диске или диске, привод оптических дисков (с использованием El Torito ). , устройство USB запоминающее ( флэш-накопитель USB , устройство чтения карт памяти , жесткий диск USB, привод оптических дисков USB, твердотельный накопитель USB и т. д.) или сетевую карту (с использованием PXE ). К старым, менее распространённым загрузочным устройствам с BIOS относятся дисководы гибких дисков , Zip-диски и LS-120 диски .

Обычно встроенное ПО системы (UEFI или BIOS) позволяет пользователю настраивать порядок загрузки . Если порядок загрузки установлен «сначала DVD-дисковод; затем жесткий диск», то микропрограмма попытается загрузиться с DVD-привода, и если это не удастся (например, из-за отсутствия DVD-диска в приводе), он попытается загрузиться с локального жесткого диска.

Например, на ПК с установленной на жестком диске Windows пользователь может установить порядок загрузки, указанный выше, а затем вставить Linux Live CD , чтобы опробовать Linux без необходимости устанавливать операционную систему на жесткий диск. водить машину. Это пример двойной загрузки , при которой пользователь выбирает, какую операционную систему запустить после того, как компьютер выполнил самотестирование при включении питания (POST). В этом примере двойной загрузки пользователь выбирает, вставляя или извлекая DVD из компьютера, но чаще всего выбирают, какую операционную систему загружать, выбирая из меню диспетчера загрузки на выбранном устройстве, используя компьютерную клавиатуру для загрузки. выберите меню загрузки BIOS или UEFI или оба варианта; в меню загрузки обычно можно войти, нажав F8 или F12 ключи во время POST; вход в настройки BIOS обычно осуществляется нажатием F2 или DEL ключи во время POST. [ 56 ] [ 57 ]

Доступно несколько устройств, которые позволяют пользователю быстро загрузиться в Linux для выполнения различных простых задач, таких как доступ в Интернет; примерами являются Splashtop и Latitude ON . [ 58 ] [ 59 ] [ 60 ]

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

[ редактировать ]
Шестнадцатеричный дамп FreeBSD . boot0 MBR
Программное обеспечение BIOS Award 2000 во время загрузки

IBM-совместимого персонального компьютера При запуске процессор x86 выполняет в реальном режиме команду, расположенную в векторе сброса (адрес физической памяти). FFFF0h на 16-битных процессорах x86 [ 61 ] и FFFFFFF0h на 32-битных и 64-битных процессорах x86 [ 62 ] [ 63 ] ), обычно указывающий на точку входа прошивки ( UEFI или BIOS ) внутри ПЗУ. Эта ячейка памяти обычно содержит инструкцию перехода, которая передает выполнение в место ПО ( UEFI или BIOS запуска программы встроенного ). Эта программа запускает самотестирование при включении питания (POST) для проверки и инициализации необходимых устройств, таких как основная память ( DRAM ), шина PCI и устройства PCI (включая запуск встроенных дополнительных ПЗУ ). Одним из наиболее сложных шагов является настройка DRAM поверх SPD , что еще больше усложняется тем, что на данный момент память очень ограничена.

После инициализации необходимого оборудования прошивка ( UEFI или BIOS ) проходит через предварительно настроенный список энергонезависимых устройств хранения данных («последовательность загрузочных устройств»), пока не найдет одно из них, которое является загрузочным. Загрузочное устройство MBR определяется как устройство, с которого можно читать, и где последние два байта первого сектора содержат с прямым порядком байтов. слово АА55h , [ кол. 5 ] найден как последовательность байтов 55ч , AAh на диске (также известная как загрузочная подпись MBR ) или там, где иным образом установлено, что код внутри сектора является исполняемым на ПК x86.

Как только BIOS находит загрузочное устройство, он загружает загрузочный сектор по линейному адресу. 7C00h (обычно сегмент : смещение 0000ч : 7C00h , [ 50 ] [ 52 ] : 29  но некоторые BIOS ошибочно используют 07C0h : 0000ч [ нужна ссылка ] ) и передает выполнение загрузочному коду. В случае жесткого диска это называется основной загрузочной записью (MBR). Обычный код MBR проверяет таблицу разделов MBR на наличие раздела, установленного как загрузочный. [ номер 6 ] (тот, у которого установлен активный флаг). Если активный раздел найден, код MBR загружает код загрузочного сектора из этого раздела, известный как загрузочная запись тома (VBR), и выполняет его. Загрузочный код MBR часто зависит от операционной системы.

Код загрузочного сектора — это загрузчик первого этапа. Он расположен на фиксированных и съемных дисках и должен умещаться в первые 446 байт главной загрузочной записи , чтобы оставить место для 64-байтовой таблицы разделов по умолчанию с четырьмя записями разделов и двухбайтовой загрузочной подписью , которая BIOS требует наличия надлежащего загрузчика — или даже меньше, если дополнительные функции, такие как более четырех записей разделов (до 16 по 16 байт каждый), подпись диска (6 байт), временная метка диска (6 байт), расширенный активный разделы (18 байт) или специальные мультизагрузочные В некоторых средах также должны поддерживаться загрузчики. В на дискетах и ​​супердискетах загрузочных записях тома до 59 байт занято для расширенного блока параметров BIOS на FAT12 и FAT16 томах , начиная с DOS 4.0, тогда как EBPB FAT32 , представленный в DOS 7.1, требует даже 87 байт, оставляя только 423 байта для загрузчика. при условии, что размер сектора составляет 512 байт. Поэтому загрузочные сектора Microsoft традиционно налагали определенные ограничения на процесс загрузки, например, загрузочный файл должен был располагаться в фиксированной позиции в корневом каталоге файловой системы и храниться в виде последовательных секторов. [ 64 ] [ 65 ] условия, о которых заботится SYS команда и немного смягчена в более поздних версиях DOS. [ 65 ] [ номер 7 ] Затем загрузчик смог загрузить первые три сектора файла в память, которая содержала другой встроенный загрузчик, способный загрузить остальную часть файла в память. [ 65 ] Когда Microsoft добавила поддержку LBA и FAT32, они даже перешли на загрузчик, охватывающий более двух физических секторов и использующий 386 инструкций из соображений размера. В то же время другим производителям удалось втиснуть гораздо больше функциональности в один загрузочный сектор, не ослабляя первоначальные ограничения на минимальный доступный объем памяти (32 КБ) и поддержку процессоров (8088/8086). [ номер 8 ] Например, загрузочные сектора DR-DOS способны найти загрузочный файл в файловой системе FAT12, FAT16 и FAT32 и загрузить его в память целиком через CHS или LBA, даже если файл не хранится в фиксированном месте и в последовательных секторах. [ 66 ] [ 50 ] [ 67 ] [ 68 ] [ 69 ] [ номер 9 ] [ номер 8 ]

VBR часто зависит от ОС; однако его основная функция — загружать и выполнять файл загрузчика операционной системы (например, bootmgr или ntldr), который является загрузчиком второго этапа, из активного раздела. Затем загрузчик загружает ядро ​​ОС с запоминающего устройства.

Если активного раздела нет или загрузочный сектор активного раздела недействителен, MBR может загрузить вторичный загрузчик, который выберет раздел (часто с помощью пользовательского ввода) и загрузит его загрузочный сектор, который обычно загружает соответствующее ядро ​​операционной системы. В некоторых случаях MBR может также попытаться загрузить дополнительные загрузчики перед загрузкой активного раздела. Если ничего не помогает, он должен выдать INT 18h. [ 52 ] [ 50 ] Вызов прерывания BIOS (за которым следует INT 19h на случай, если INT 18h вернется), чтобы вернуть управление BIOS, который затем попытается загрузить другие устройства, попытайтесь выполнить удаленную загрузку через сеть. [ 50 ]

Многие современные системы ( Intel Mac и более новые ПК ) используют UEFI . [ 70 ] [ 71 ]

В отличие от BIOS, UEFI (не загрузка Legacy через CSM) не зависит от загрузочных секторов, система UEFI загружает загрузчик ( приложения EFI файл на USB-диске или в системном разделе EFI ) напрямую, [ 72 ] и ядро ​​ОС загружается загрузчиком.

Другие виды последовательностей загрузки

[ редактировать ]

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

Многие современные процессоры, SoC и микроконтроллеры (например, TI OMAP ) или иногда даже процессоры цифровых сигналов (DSP) могут иметь загрузочное ПЗУ, интегрированное непосредственно в их микросхему, поэтому такой процессор может самостоятельно выполнять простую последовательность загрузки и загружать загрузочные программы. (прошивка или программное обеспечение) из источников загрузки, таких как флэш-память NAND или eMMC. Трудно реализовать всю необходимую логику для работы с такими устройствами, поэтому в таких сценариях вместо этого используется интегрированное загрузочное ПЗУ. Кроме того, загрузочное ПЗУ может загружать загрузчик или диагностическую программу через последовательные интерфейсы, такие как UART , SPI , USB и так далее. Эту функцию часто используют для восстановления системы, а также для первоначального программирования энергонезависимой памяти, когда в энергонезависимой памяти еще нет доступного программного обеспечения. Многие современные микроконтроллеры (например, контроллер флэш-памяти на USB-накопителях ) имеют встроенное ПЗУ, встроенное непосредственно в их микросхему.

Некоторые конструкции встроенных систем могут также включать промежуточный этап последовательности загрузки. Например, Das U-Boot можно разделить на два этапа: платформа загружает небольшой SPL (вторичный загрузчик программ), который представляет собой урезанную версию U-Boot, а SPL выполняет некоторую начальную конфигурацию оборудования (например, инициализация DRAM с использованием кэша ЦП в качестве ОЗУ) и загрузите более крупную полнофункциональную версию U-Boot. [ 73 ] Некоторые ЦП и SoC могут не использовать кэш ЦП в качестве ОЗУ в процессе загрузки. Они используют встроенный загрузочный процессор для выполнения некоторой конфигурации оборудования, чтобы снизить затраты. [ 74 ]

Также возможно взять под контроль систему, используя аппаратный интерфейс отладки, такой как JTAG . Такой интерфейс может использоваться для записи программы загрузчика в загрузочную энергонезависимую память (например, флэш-память), давая команду ядру процессора выполнить необходимые действия для программирования энергонезависимой памяти. Альтернативно, интерфейс отладки может использоваться для загрузки некоторого диагностического или загрузочного кода в ОЗУ, а затем для запуска ядра процессора и указания ему выполнить загруженный код. Это позволяет, например, восстанавливать встроенные системы, в которых ни на одном поддерживаемом загрузочном устройстве не осталось программного обеспечения и где процессор не имеет встроенного загрузочного ПЗУ. JTAG — стандартный и популярный интерфейс; многие процессоры, микроконтроллеры и другие устройства производятся с интерфейсами JTAG (по состоянию на 2009 г. ). [ нужна ссылка ]

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

Большинство DSP имеют загрузку в последовательном режиме и загрузку в параллельном режиме, например через интерфейс хост-порта (загрузка HPI).

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

Многие микросхемы FPGA загружают свою конфигурацию из внешнего последовательного EEPROM («ПЗУ конфигурации») при включении питания.

Безопасность

[ редактировать ]

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

Мэтью Гарретт утверждал, что загрузка безопасности служит законной цели, но при этом выбираются настройки по умолчанию , враждебные пользователям. [ 75 ]

  • Безопасная загрузка UEFI [ 76 ]
  • Android проверенная загрузка
  • Самсунг Нокс
  • Измеренная загрузка с помощью доверенного платформенного модуля, также известного как «доверенная загрузка».
  • Intel BootGuard
  • Шифрование диска
  • Пароли прошивки
UART Консоль роутера TP-Link с OpenWrt , застрявшего в бутлупе

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

По мере роста сложности сегодняшних продуктов отдельные проекты, отдельные отделы или даже отдельные компании больше не могут разрабатывать комплексные продукты, что приводит к параллельной и распределенной разработке. Сегодня и во всем мире отрасли промышленности сталкиваются со сложной разработкой продукции и множеством связанных с ней проблем, связанных с организацией проекта, контролем проекта и качеством продукции. Многие процессы также станут распределенными. Процесс обнаружения дефектов, столь важный для измерения и, в конечном итоге, достижения качества продукта, обычно одним из первых сталкивается с проблемами, вызванными распределенным характером проекта. Распределение действий по обнаружению дефектов между несколькими сторонами создает такие риски, как неадекватная проверка рабочих продуктов, возникновение «слепых зон» в отношении тестового покрытия или чрезмерное тестирование компонентов. Поэтому для обеспечения эффективности и результативности действий по обнаружению дефектов необходима координация обнаружения дефектов на протяжении всего жизненного цикла. —Дж.Дж.М. Триенекенс; Р. Дж. Кастерс. (2004) [ 77 ]

Обнаружение ошибочного состояния

[ редактировать ]

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

Восстановление из ошибочного состояния

[ редактировать ]

Ошибочное состояние может вызвать зацикливание; это состояние может быть вызвано неправильной настройкой ранее заведомо исправных операций. [ а ] Попытки восстановления из этого ошибочного состояния затем приводят к перезагрузке в попытке вернуться в заведомо исправное состояние. Например, при работе с ОС Windows процедура восстановления заключалась в трехкратной перезагрузке, при этом перезагрузки требовались для возврата в работоспособное меню. [ 79 ] [ 80 ] [ 78 ]

Политика восстановления

[ редактировать ]

Восстановление может быть указано с помощью языка разметки утверждений безопасности (SAML), который также может реализовывать единый вход (SSO) для некоторых приложений; в модели безопасности с нулевым доверием идентификация, авторизация и аутентификация являются отдельными задачами в сеансе SSO. Когда указано восстановление сайта (т. е. синий экран смерти ) на экране терминала аэропорта отображается [ а ] Для исправления ситуации могут потребоваться личные посещения объекта. [ 77 ]

См. также

[ редактировать ]

Примечания

[ редактировать ]
  1. ^ Jump up to: а б с CrowdStrike отменил обновление контента в 05:27 UTC, [ 89 ] Это привело к тому, что машины застряли в цикле загрузки или в режиме восстановления . [ 90 ] и устройства, загруженные после восстановления, не были затронуты. [ 91 ] [ 92 ]
  1. ^ Включая демонов .
  2. ^ UU часто имел форму Uu, U = адрес блока управления, u = адрес устройства, но к некоторым блокам управления подключалось только 8 устройств; некоторые подключали более 16. Действительно, контроллер DASD 3830 предлагал в качестве опции адресацию на 32 диска.
  3. ^ За исключением моделей 370/145 и 370/155, в которых использовалась консольная пишущая машинка 3210 или 3215.
  4. ^ Только S/360 использовал 2250; в 360/85 , 370/165 и 370/168 использовалось устройство клавиатуры/дисплея, несовместимое ни с чем другим.
  5. ^ Подпись в смещении +1FEh в загрузочных секторах есть 55h AAh, то есть 55h в зачете +1FEh и AAh в зачете +1FFh. Поскольку с прямым порядком байтов , необходимо предполагать представление в контексте компьютеров, совместимых с IBM PC , это можно записать как 16-битное слово. AA55h в программах для процессоров x86 (обратите внимание на порядок перестановки), тогда как это нужно было бы записать как 55AAh в программах для других архитектур ЦП используется представление с прямым порядком байтов . Поскольку это неоднократно путалось в книгах и даже в оригинальных справочных документах Microsoft, в этой статье используется побайтовое представление на диске на основе смещения, чтобы избежать любой возможной неправильной интерпретации.
  6. ^ Активный раздел может содержать загрузчик второго уровня , например, диспетчер загрузки OS/2, а не ОС.
  7. ^ В руководстве по PC DOS 5.0 неверно указано, что системные файлы больше не обязательно должны быть последовательными. Однако для того, чтобы процесс загрузки работал, системные файлы по-прежнему должны занимать первые две записи каталога, а первые три сектора IBMBIO.COM по-прежнему должны храниться последовательно. SYS продолжает заботиться об этих требованиях.
  8. ^ Jump up to: а б Например, хотя расширенная функциональность MBR и загрузочных секторов DR-DOS по сравнению с их аналогами MS-DOS / PC DOS все же может быть достигнута с использованием традиционных методов оптимизации кода на языке ассемблера до 7.05 , для добавления LBA , FAT32 и LOADER Для поддержки секторам 7.07 пришлось прибегнуть к самомодифицирующемуся коду , программированию на уровне опкода на машинном языке , контролируемому использованию (документированных) побочных эффектов , многоуровневому перекрытию данных/кода и методам алгоритмического свертывания , чтобы сжать все в один физический сектор. , поскольку это было требованием обратной и перекрестной совместимости с другими операционными системами в мультизагрузки и цепной загрузки . сценариях
  9. ^ Есть одно исключение из правила, согласно которому DR-DOS VBR загружают весь файл IBMBIO.COM в память: если размер файла IBMBIO.COM превышает примерно 29 КБ, попытка загрузить весь файл в память приведет к загрузке загрузчик для перезаписи стека и (DPT / перемещения таблицы параметров диска FDPB). [А] Таким образом, VBR DR-DOS 7.07 загружает в память только первые 29 КБ файла, полагаясь на другой загрузчик, встроенный в первую часть IBMBIO.COM, который проверяет это условие и самостоятельно загружает остальную часть файла в память. если необходимо. Это не вызывает проблем совместимости, поскольку размер IBMBIO.COM никогда не превышал этот предел в предыдущих версиях без этого загрузчика. [А] В сочетании со структурой двойной записи это также позволяет загружать систему с помощью VBR DOS ПК , который загружает в память только первые три сектора файла.
  1. ^ «бутстрап» . Компьютерный словарь информационных технологий . Архивировано из оригинала 5 августа 2019 г. Проверено 5 августа 2019 г.
  2. ^ «Бутстрап» . Бесплатный словарь . Архивировано из оригинала 27 августа 2006 г. Проверено 27 августа 2008 г.
  3. ^ «Подтянуться за шнурки» . Идиомы от The Free Dictionary . Архивировано из оригинала 05 октября 2018 г. Проверено 7 октября 2019 г.
  4. ^ «Определение начальной загрузки» . Технические термины . Архивировано из оригинала 10 мая 2020 г. Проверено 2 октября 2019 г.
  5. ^ «Поднимите себя за шнурки» . Поиск фраз . Архивировано из оригинала 17 апреля 2012 г. Проверено 15 июля 2010 г.
  6. ^ Кэмпбелл-Келли, Мартин (1980). «Программирование EDSAC». IEEE Анналы истории вычислений . 2 (1): 7–36. дои : 10.1109/mahc.1980.10009 .
  7. ^ Уилкс, Морис В .; Уилер, Дэвид Дж .; Гилл, Стэнли (1951). Подготовка программ для электронной цифровой вычислительной машины . Аддисон-Уэсли . Архивировано из оригинала 20 февраля 2023 г. Проверено 25 сентября 2020 г.
  8. ^ Бухгольц, Вернер (1953). «Системный дизайн компьютера IBM Type 701» (PDF) . Труды ИРЭ . 41 (10): 1273. Архивировано (PDF) из оригинала 9 октября 2022 г.
  9. ^ Jump up to: а б «Обмен IBM 7619». Справочное руководство 7030 Система обработки данных (PDF) . ИБМ. Август 1961. стр. 125–127. А22-6530-2. Архивировано (PDF) из оригинала 9 октября 2022 г.
  10. ^ Принципы эксплуатации типа 701 и сопутствующего оборудования (PDF) . ИБМ. 1953. с. 26. Архивировано (PDF) из оригинала 9 октября 2022 г. Проверено 9 ноября 2012 г.
  11. ^ От Гутенберга до Интернета , Джереми М. Норман, 2005, стр. 436, ISBN   0-930405-87-0
  12. ^ Руководство по эксплуатации электронной машины обработки данных 704 (PDF) . ИБМ . стр. 14–15. Архивировано (PDF) из оригинала 9 октября 2022 г.
  13. ^ Руководство оператора системы обработки данных IBM 7090 (PDF) . ИБМ . п. 34. Архивировано (PDF) из оригинала 9 октября 2022 г.
  14. ^ Принципы работы IBM 7094 (PDF) . ИБМ . п. 146. Архивировано (PDF) из оригинала 9 октября 2022 г.
  15. ^ Оксфордский словарь английского языка . Оксфордский университет . 1939 год.
  16. ^ Руководство по эксплуатации машины обработки данных с магнитным барабаном 650 (PDF) . ИБМ. 1955. стр. 49, 53–54. Архивировано (PDF) из оригинала 9 октября 2022 г.
  17. ^ Руководство оператора систем IBM 7040-7044 (PDF) . ИБМ . п. 10. А22-6741-1. Архивировано (PDF) из оригинала 9 октября 2022 г.
  18. ^ Справочное руководство по компьютерной системе CONTROL DATA 6600 (PDF) (второе изд.). Корпорация Control Data . Август 1963 г. с. 53. Архивировано (PDF) из оригинала 9 октября 2022 г.
  19. ^ Системное руководство GE-645 (PDF) . Дженерал Электрик . Январь 1968 г. Архивировано (PDF) из оригинала 09 октября 2022 г. Проверено 30 октября 2019 г.
  20. ^ Справочное руководство по системе PDP-10, часть 1 (PDF) . Корпорация цифрового оборудования . 1969. стр. 2–72. Архивировано (PDF) из оригинала 9 октября 2022 г. Проверено 9 ноября 2012 г.
  21. ^ Jump up to: а б Справочное руководство по системам Burroughs B 1700 (PDF) . Корпорация Берроуз . Ноябрь 1973 г. с. 1-14. Архивировано (PDF) из оригинала 9 октября 2022 г.
  22. ^ Jump up to: а б z/Принципы работы архитектуры (PDF) . ИБМ . Сентябрь 2005 г., стр. Глава 17. Архивировано (PDF) из оригинала 9 октября 2022 г. Проверено 14 апреля 2007 г.
  23. ^ Постоянная память BM792 и загрузчик начальной загрузки MR11~DB (PDF) . Корпорация цифрового оборудования . Январь 1974 г. DEC-II-HBMAA-ED. Архивировано (PDF) из оригинала 9 октября 2022 г.
  24. ^ Справочник по периферийным устройствам PDP-11 (PDF) . Корпорация цифрового оборудования . 1976. с. 4-25. Архивировано (PDF) из оригинала 9 октября 2022 г.
  25. ^ Руководство пользователя программируемого процессора данных-7 (PDF) . Корпорация цифрового оборудования . 1965. с. 143. Архивировано (PDF) из оригинала 9 октября 2022 г.
  26. ^ Руководство пользователя PDP-9 (PDF) . Корпорация цифрового оборудования . Январь 1968 г. с. 10-3. Архивировано (PDF) из оригинала 9 октября 2022 г.
  27. ^ Справочное руководство по системам PDP-15 (PDF) . Корпорация цифрового оборудования . Август 1969 г. с. 10-3. Архивировано (PDF) из оригинала 9 октября 2022 г.
  28. ^ Jump up to: а б Как использовать компьютеры Nova (PDF) . Общие данные . Апрель 1971 г. с. 2-30. Архивировано (PDF) из оригинала 9 октября 2022 г.
  29. ^ «Старые компьютеры: Альтаир 8800b» . Архивировано из оригинала 03 января 2020 г. Проверено 10 декабря 2019 г.
  30. ^ Холмер, Гленн. Altair 8800 загружает 4K BASIC с бумажной ленты . Архивировано из оригинала 30 июля 2019 г. Проверено 2 мая 2016 г.
  31. ^ Перезапуск/загрузчик BM873 (PDF) . Корпорация цифрового оборудования . Апрель 1974 г. DEC-11-H873A-BD. Архивировано (PDF) из оригинала 9 октября 2022 г.
  32. ^ Руководство по эксплуатации и обслуживанию модуля начальной загрузки/терминатора M9301 (PDF) . Корпорация цифрового оборудования . Июнь 1977 г. EK-M9301-TM-OO1. Архивировано (PDF) из оригинала 9 октября 2022 г.
  33. ^ Техническое руководство по модулю начальной загрузки/терминатора M9312 (PDF) . Корпорация цифрового оборудования . Март 1981 г. EK-M9312-TM-OO3. Архивировано (PDF) из оригинала 9 октября 2022 г.
  34. ^ Справочник по микрокомпьютерным интерфейсам (PDF) . Корпорация цифрового оборудования . 1981. с. 17. Архивировано (PDF) из оригинала 9 октября 2022 г.
  35. ^ «10 Модуль постоянной памяти MRV11-C». Справочник по микрокомпьютерной продукции (PDF) . Корпорация цифрового оборудования . 1985. Архивировано (PDF) из оригинала 24 октября 2022 г. Проверено 12 июня 2022 г.
  36. ^ «11 Универсальная программируемая постоянная память MRVll·D». Справочник по микрокомпьютерной продукции (PDF) . Корпорация цифрового оборудования . 1985. Архивировано (PDF) из оригинала 24 октября 2022 г. Проверено 12 июня 2022 г.
  37. ^ Руководство пользователя системы PDP-11/34 (PDF) . Корпорация цифрового оборудования . Июль 1977 г., стр. 1–5, 2-1–2-12. ЭК-11034-УГ-001. Архивировано (PDF) из оригинала 9 октября 2022 г.
  38. ^ Руководство по установке и эксплуатации ПДП-11/60 (PDF) . Корпорация цифрового оборудования . Февраль 1979 г., стр. 1–10, 2–29–2–34, 3–1–3–6. ЭК-11060-ОП-003. Архивировано (PDF) из оригинала 9 октября 2022 г.
  39. ^ Техническое руководство по системе PDP-11/24 (PDF) . Корпорация цифрового оборудования . Июнь 1981 г. с. 1-6. ЭК-11024-ТМ-001. Архивировано (PDF) из оригинала 9 октября 2022 г.
  40. ^ Чарамелла, Альберто . Устройство для автоматической загрузки центральной памяти электронных процессоров. Патент США №4117974. 03.10.1978. (представлено в 1975 г.)
  41. ^ Альберто Чиарамелла обсуждает патент на начальную загрузку компьютеров, разработанный в CSELT [ Альберто Чиарамелла обсуждает патент на начальную загрузку компьютеров, разработанный в CSELT ] (на итальянском языке). Архивировано из оригинала 13 ноября 2021 г.
  42. ^ Техническое руководство по системе PDP-11/44 (PDF) . Корпорация цифрового оборудования . Февраль 1979 г. с. 6-57. ЭК-КД11З-ТМ-001. Архивировано (PDF) из оригинала 9 октября 2022 г.
  43. ^ Руководство пользователя по аппаратному обеспечению VAX-11/780 (PDF) . Корпорация цифрового оборудования . Февраль 1979 г. 2.3 ЗАГРУЗКА и 3.6.1 Команда загрузки (B). ЕК-11780-УГ-001. Архивировано (PDF) из оригинала 9 октября 2022 г.
  44. ^ Техническое описание центрального процессора VAX-11/730 (PDF) . Корпорация цифрового оборудования . Май 1982 г. с. 1-9. ЕК-КА730-ТД-001. Архивировано (PDF) из оригинала 9 октября 2022 г.
  45. ^ Руководство по установке программного обеспечения VAX-11/750 (PDF) . Корпорация цифрового оборудования . Декабрь 1982 г. стр. 1-2–1-4, B-1–B-8, C-1–C-2. АА-К410С-ТЕ. Архивировано (PDF) из оригинала 9 октября 2022 г.
  46. ^ Осборн, Адам ; Кейн, Джерри (1981). Справочник Osborne по 16-битному микропроцессору (PDF) . ОСБОРН/МакГроу-Хилл. стр. 5–27. ISBN  0-931988-43-8 . Архивировано (PDF) из оригинала 9 октября 2022 г. Проверено 23 августа 2019 г.
  47. ^ Руководство разработчика программного обеспечения для архитектур Intel 64 и IA-32, том 3 (3A, 3B, 3C и 3D): Руководство по системному программированию (PDF) . Архивировано (PDF) из оригинала 9 октября 2022 г.
  48. ^ Осборн, Адам ; Кейн, Джерри (1981). Справочник Osborne по 4 и 8-битным микропроцессорам . Осборн/МакГроу-Хилл. стр. 10–20. ISBN  0-931988-42-Х .
  49. ^ Apple Ad, Interface Age, октябрь 1976 г.
  50. ^ Jump up to: а б с д и Пол, Матиас Р. (02 октября 1997 г.) [29 сентября 1997 г.]. «Caldera OpenDOS 7.01/7.02 Update Alpha 3 IBMBIO.COM — README.TXT и BOOT.TXT — краткое описание загрузки OpenDOS» . Архивировано из оригинала 4 октября 2003 г. Проверено 29 марта 2009 г. [1]
  51. ^ Сакамото, Масахико (13 мая 2010 г.). «Почему BIOS загружает MBR в 7C00h в x86?» . Glamenv-Septzen.net . Архивировано из оригинала 24 августа 2017 г. Проверено 22 августа 2012 г.
  52. ^ Jump up to: а б с Компьютерная корпорация Compaq; Феникс Технологии Лтд; Корпорация Intel (11 января 1996 г.). «Спецификация загрузки BIOS 1.01» (PDF) . Архивировано (PDF) из оригинала 9 октября 2022 г. Проверено 21 декабря 2017 г.
  53. ^ Команда загрузчиков Red Hat. «Загрузчик прокладок UEFI» . Гитхаб . Проверено 28 октября 2023 г.
  54. ^ «Глава 6 – Устранение неполадок при запуске и проблемах с диском» . Ресурсный комплект сервера Windows NT . Майкрософт. Архивировано из оригинала 15 мая 2007 г.
  55. ^ «Тинт» . coreboot. Архивировано из оригинала 28 декабря 2010 г. Проверено 20 ноября 2010 г.
  56. ^ «Список марок ПК с соответствующими горячими клавишами» . www.disk-image.com . Архивировано из оригинала 11 ноября 2020 г. Проверено 26 сентября 2020 г.
  57. ^ «Как войти в BIOS на любом ПК: ключи доступа от производителя | Tom's Hardware» . www.tomshardware.com . Архивировано из оригинала 20 февраля 2023 г. Проверено 26 сентября 2020 г.
  58. ^ Браун, Эрик (2 октября 2008 г.). «MontaVista Linux управляет функцией быстрой загрузки Dell» . linuxdevices.com . Проверено 20 ноября 2010 г.
  59. ^ Ларабель, Майкл (14 июня 2008 г.). «SplashTop Linux на ноутбуках HP, Dell?» . Фороникс . Архивировано из оригинала 5 октября 2016 г. Проверено 20 ноября 2010 г.
  60. ^ «Мгновенное включение IOS от Voodoo Envy (на базе Splashtop)» . Ютуб. Архивировано из оригинала 13 ноября 2021 г. Проверено 20 ноября 2010 г.
  61. ^ «Справочное руководство программиста iAPX 286» (PDF) . Интел . 1983. Раздел 5.3 ИНИЦИАЛИЗАЦИЯ СИСТЕМЫ, с. 5-7. Архивировано (PDF) из оригинала 9 октября 2022 г. Проверено 23 августа 2019 г. Поскольку регистр CS содержит F000 (таким образом определяя сегмент кода, начинающийся с физического адреса F0000), а указатель инструкции содержит FFF0, процессор выполнит свою первую команду по физическому адресу FFFF0H.
  62. ^ «Справочное руководство программатора 80386» (PDF) . Интел. 1986. Раздел 10.2.3 Первые инструкции, с. 10-3. Архивировано (PDF) из оригинала 9 октября 2022 г. Проверено 3 ноября 2013 г. После RESET адресные строки A31–20 автоматически активируются для выборки команд. Этот факт, вместе с начальными значениями CS:IP, приводит к тому, что выполнение инструкции начинается с физического адреса FFFFFFF0H.
  63. ^ «Руководство разработчика программного обеспечения для архитектур Intel 64 и IA-32» (PDF) . Корпорация Интел . Май 2012 г. Раздел 9.1.4 Выполнение первой инструкции, стр. 9.1.4. 2611. Архивировано (PDF) из оригинала 9 октября 2022 г. Проверено 23 августа 2012 г. Первая инструкция, которая извлекается и выполняется после аппаратного сброса, находится по физическому адресу FFFFFFF0h. Этот адрес на 16 байт ниже самого верхнего физического адреса процессора. По этому адресу должна находиться СППЗУ, содержащая код инициализации программного обеспечения.
  64. ^ Збиковски, Марк ; Аллен, Пол ; Балмер, Стив ; Борман, Рубен; Борман, Роб; Батлер, Джон; Кэрролл, Чак; Чемберлен, Марк; Челл, Дэвид; Коули, Майк; Кортни, Майк; Драйфус, Майк; Дункан, Рэйчел; Экхардт, Курт; Эванс, Эрик; Фермер, Рик; Гейтс, Билл ; Гири, Майкл; Гриффин, Боб; Хогарт, Дуг; Джонсон, Джеймс В.; Кермаани, Каамель; Король, Адриан; Кох, Рид; Ландовски, Джеймс; Ларсон, Крис; Леннон, Томас; Липки, Дэн; Макдональд, Марк ; МакКинни, Брюс; Мартин, Паскаль; Мазерс, Эстель; Мэтьюз, Боб; Мелин, Дэвид; Мергентайм, Чарльз; Невин, Рэнди; Ньюэлл, Дэн; Ньюэлл, Тани; Норрис, Дэвид; О'Лири, Майк; О'Рир, Боб ; Олссон, Майк; Остерман, Ларри; Остлинг, Ридж; Пай, Сунил; Патерсон, Тим ; Перес, Гэри; Питерс, Крис; Петцольд, Чарльз ; Поллок, Джон; Рейнольдс, Аарон ; Рубин, Дэррил; Райан, Ральф; Шульмейстерс, Карл; Шах, Раджен; Шоу, Барри; Коротко, Энтони; Сливка, Бен; Смирл, Джон; Стиллмейкер, Бетти; Стоддард, Джон; Тиллман, Деннис; Уиттен, Грег; Йонт, Натали; Зек, Стив (1988). «Технические консультанты». Энциклопедия MS-DOS: версии с 1.0 по 3.2 . Дункан, Рэй; Боствик, Стив; Бургойн, Кейт; Байерс, Роберт А.; Хоган, Том; Кайл, Джим; Летвин, Гордон ; Петцольд, Чарльз ; Рабиновиц, Чип; Томлин, Джим; Уилтон, Ричард; Вулвертон, Ван; Вонг, Уильям; Вудкок, Джоанн (Полностью переработанное издание). Редмонд, Вашингтон, США: Microsoft Press . ISBN  1-55615-049-0 . LCCN   87-21452 . OCLC   16581341 . (xix+1570 страниц; 26 см) (Примечание. Это издание было опубликовано в 1988 году после обширной переработки отозванного первого издания 1986 года другим коллективом авторов: «Энциклопедия MS-DOS (1988)» . PCjs-машины . Архивировано из оригинала 14 октября 2018 г. )
  65. ^ Jump up to: а б с Чаппелл, Джефф (январь 1994 г.). «Глава 2: След системы». В Шульмане, Эндрю; Педерсен, Аморетт (ред.). Внутреннее устройство DOS . Серия программ Эндрю Шульмана (1-е издание, 1-е изд.). Издательская компания Аддисон Уэсли . ISBN  978-0-201-60835-9 . (xxvi+738+iv страниц, 3,5-дюймовая дискета [2] [3] ) Исправления: [4] [5] [6]
  66. ^ Рош, Винн Л. (12 февраля 1991 г.). «DR DOS 5.0 — лучшая операционная система?» . Журнал ПК . Том. 10, нет. 3. п. 241–246, 257, 264, 266. Архивировано из оригинала 25 июля 2019 г. Проверено 26 июля 2019 г. […] SYS был улучшен в DR DOS 5.0, поэтому вам не нужно беспокоиться о том, чтобы оставить свободным первый кластер на диске, который вы хотите сделать загрузочным. Системные файлы DR DOS могут располагаться в любом месте диска, поэтому для загрузки системы можно использовать любой диск с достаточным количеством свободного места. […] (Примечание. Источник приписывает это утилите SYS, хотя на самом деле это функция расширенного начального загрузчика в загрузочном секторе. SYS просто помещает этот сектор на диск.)
  67. ^ Пол, Матиас Р. (17 января 2001 г.). «FAT32 в DR-DOS» . opendos@delorie . Архивировано из оригинала 6 октября 2017 г. Проверено 6 октября 2017 г. […] Загрузочный сектор DR-DOS […] ищет файл IBMBIO.COM ( DRBIOS.SYS ), а затем загружает *весь* файл в память, прежде чем передать ему управление. […]
  68. ^ Пол, Матиас Р. (20 февраля 2002 г.). «Не могу скопировать» . opendos@delorie . Архивировано из оригинала 6 октября 2017 г. Проверено 6 октября 2017 г. […] Загрузочный сектор DR-DOS загружает весь файл IBMBIO.COM в память перед его выполнением. Его совершенно не заботит файл IBMDOS.COM , который загружается IBMBIO.COM. […] Загрузочный сектор DR-DOS […] найдет […] файлы ядра, если они логически хранятся в корневом каталоге. Их физическое расположение на диске, фрагментированы они или нет, не имеет значения для загрузочного сектора DR-DOS. Следовательно, вы можете просто скопировать файлы ядра на диск (даже с помощью просто COPY ), и как только загрузочный сектор станет сектором DR-DOS, он найдет и загрузит их. Конечно, сложно уместить все это всего в 512 байт, размером с один сектор, но это серьезное улучшение удобства, если вам предстоит настраивать систему DR-DOS, а также это ключ для DR. -Утилита DOS multi-OS LOADER для работы. Файлы ядра MS-DOS должны находиться в определенных местах, но файлы DR-DOS могут находиться где угодно, поэтому вам не придется физически менять их местами каждый раз при загрузке другой ОС. Кроме того, он позволяет обновить систему DR-DOS, просто скопировав файлы ядра поверх старых, без необходимости SYS , никаких сложных процедур установки, необходимых для MS-DOS/ PC DOS . Вы даже можете хранить несколько файлов ядра DR-DOS под разными именами на одном диске, и LOADER будет переключаться между ними в соответствии с именами файлов, указанными в файле BOOT.LST . […]
  69. ^ Пол, Матиас Р. (14 августа 2017 г.) [07 августа 2017 г.]. «Продолжение саги о Windows 3.1 в расширенном режиме на OmniBook 300» . MoHPC — Музей калькуляторов HP . Архивировано из оригинала 6 октября 2017 г. Проверено 6 октября 2017 г. […] DR-DOS FDISK не только разбивает диск на разделы, но также может форматировать только что созданные тома и инициализировать их загрузочные сектора за один раз, поэтому нет риска случайно испортить неправильный том и нет необходимости FORMAT /S или СИС . После этого вы можете просто скопировать оставшиеся файлы DR-DOS, включая системные файлы. Важно знать, что, в отличие от MS-DOS / PC DOS , DR-DOS имеет «умные» загрузочные сектора, которые фактически «монтируют» файловую систему для поиска и загрузки системных файлов в корневом каталоге, а не в корневом каталоге. ожидая, что они будут размещены в определенном месте. Физически системные файлы могут располагаться где угодно, а также могут быть фрагментированы. […]
  70. ^ «Инновационная платформа платформы Intel для EFI» . Интел. Архивировано из оригинала 21 августа 2011 г. Проверено 7 января 2008 г.
  71. ^ «OpenBIOS — coreboot» . coreboot.org. Архивировано из оригинала 18 марта 2013 г. Проверено 20 марта 2013 г.
  72. ^ «UEFI — OSDev Wiki» . wiki.osdev.org . Архивировано из оригинала 12 ноября 2020 г. Проверено 26 сентября 2020 г.
  73. ^ «Обзор – четыре этапа загрузчика» . ti.com . Техасские инструменты . 05.12.2013. Архивировано из оригинала 23 декабря 2014 г. Проверено 25 января 2015 г.
  74. ^ «Документация по процессу загрузки rxos ​​1.0rc1» . Проверено 25 октября 2015 г.
  75. ^ «mjg59 | Boot Guard и PSB имеют настройки по умолчанию, враждебные пользователю» . mjg59.dreamwidth.org . Проверено 30 ноября 2022 г.
  76. ^ «Microsoft блокирует загрузчики UEFI, позволяя обходить безопасную загрузку Windows» . Мигающий компьютер . Проверено 11 декабря 2022 г.
  77. ^ Jump up to: а б JJM Триенекенс; Р. Дж. Кастерс. (2004) (конференция 19–21 сентября 2003 г.) Семинар: обнаружение дефектов в распределенной разработке программного обеспечения. Одиннадцатый ежегодный международный семинар по технологиям программного обеспечения и инженерной практике опубликован IEEE Xplore: 27 декабря 2004 г.
  78. ^ Jump up to: а б Тим Уоррен, The Verge (23 июля 2024 г.) За 78 минут, которые вывели из строя миллионы компьютеров с Windows
  79. Джо Тайди, BBC News (20 июля 2024 г.) По данным Microsoft, сбой в работе ИТ-системы CrowdStrike затронул 8,5 миллионов устройств Windows.
  80. ^ Обновление Eye Security: критическое изменение, 4:09 утра по всемирному координированному времени 19 июля 2024 г., отменено в 05:27 утра по всемирному координированному времени (19 июля 2024 г.). Ошибка BSOD в последнем обновлении CrowdStrike. Обновление Reddit, 20 000 ответов.
  81. ^ Рули, Джон Д.; Дэвид Метвин; Том Хендерсон; Мартин Хеллер (1997). Сеть Windows NT 4.0: рабочая станция и сервер . Уайли. п. 257. ИСБН  9780471175025 – через Google Книги.
  82. ^ Шульц, Грегори (февраль 2001 г.). «Отключение автоматической перезагрузки предотвращает возможность цикла перезагрузки» . Windows Профессионал . 6 (2). Журналы «Элемент К»: 9. ProQuest   191083238 – через ProQuest.
  83. ^ «Новые обновления Windows Server вызывают циклы загрузки DC и нарушают работу Hyper-V» . Мигающий компьютер . Проверено 17 мая 2022 г.
  84. ^ Пол Вагенсейл (21 января 2021 г.). «Обновление Windows 10 отправляет компьютеры в бесконечный цикл загрузки: что делать» . Путеводитель Тома . Проверено 20 мая 2022 г.
  85. ^ Холлистер, Шон (19 октября 2021 г.). «Google перепробовал все, кроме создания лучшего телефона» . Грань . Проверено 17 мая 2022 г.
  86. ^ « Это было непреднамеренно», — говорит создатель «проклятых» обоев для Android» . Неделя . Проверено 19 мая 2022 г.
  87. ^ Хагер, Райн (01 июня 2020 г.). «Google считает, что разгадал тайну проклятых обоев с зацикливанием загрузки» . Андроид Полиция . Проверено 19 мая 2022 г.
  88. ^ Пекхэм, Джеймс (29 марта 2022 г.). «Google Nest Hub получил новый пользовательский интерфейс, настолько новый, что он может загружать ваш умный дисплей» . Андроид Полиция . Проверено 19 мая 2022 г.
  89. ^ «Заявление об обновлении контента Falcon для хостов Windows» . www.crowdstrike.com . Проверено 19 июля 2024 г.
  90. ^ Баран, Гуру (19 июля 2024 г.). «Обновление CrowdStrike приводит к возникновению на компьютерах Windows цикла BSOD» . Новости кибербезопасности . Проверено 19 июля 2024 г.
  91. ^ «Обновления проблем с синим экраном CrowdStrike Falcon» . www.eye.security . Проверено 19 июля 2024 г.
  92. ^ «Неудачное обновление безопасности нарушает работу Windows по всему миру, вызывая BSOD и сбои» . Неовин . 19 июля 2024 г. Проверено 19 июля 2024 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: ff6a286822da0e1bb4f3cdbcc62ed947__1722688380
URL1:https://arc.ask3.ru/arc/aa/ff/47/ff6a286822da0e1bb4f3cdbcc62ed947.html
Заголовок, (Title) документа по адресу, URL1:
Booting - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)