БИОС
Год начался | 1981 [а] |
---|---|
Организация | Первоначально IBM как проприетарное программное обеспечение, позже стало общеотраслевым стандартом де-факто . В 1996 году Спецификация загрузки BIOS была написана компаниями Compaq , Phoenix Technologies и Intel . |
Преемник | УЕФИ |
В вычислительной технике BIOS ( / ˈ b aɪ ɒ s , -oʊ s / BIOS , BY -oss , -ohss ; базовая система ввода/вывода , также известная как системный BIOS , ROM BIOS , ROM или PC BIOS ) — это прошивка, используемая для предоставления служб времени выполнения для операционных систем и программ , а также для выполнения оборудования инициализации во время процесса загрузки (запуск при включении питания). [1] Микропрограмма BIOS предварительно установлена на IBM PC или IBM PC-совместимой системы системной плате и существует в некоторых системах на базе UEFI для обеспечения совместимости с операционными системами, которые не поддерживают собственную работу UEFI. [2] [3] Название происходит от базовой системы ввода-вывода, используемой в операционной системе CP/M в 1975 году. [4] [5] BIOS, изначально являвшийся собственностью IBM PC, был реконструирован некоторыми компаниями (например, Phoenix Technologies ), стремившимися создать совместимые системы. Интерфейс де этой оригинальной системы служит стандартом факто - .
BIOS в старых ПК инициализирует и тестирует аппаратные компоненты системы ( самотестирование при включении питания или сокращенно POST), а также загружает загрузчик с запоминающего устройства, которое затем инициализирует ядро . В эпоху DOS BIOS обеспечивал вызовы прерываний BIOS для клавиатуры, дисплея, хранилища и других устройств ввода-вывода (I/O), что стандартизировало интерфейс для прикладных программ и операционной системы. Более поздние операционные системы не используют вызовы прерываний BIOS после запуска. [6]
Большинство реализаций BIOS специально разработаны для работы с конкретной моделью компьютера или материнской платы путем взаимодействия с различными устройствами, особенно с системным чипсетом . Первоначально прошивка BIOS хранилась в микросхеме ПЗУ на материнской плате ПК. В более поздних компьютерных системах содержимое BIOS хранится во флэш-памяти , поэтому его можно перезаписать, не снимая чип с материнской платы. Это позволяет конечным пользователям легко обновлять прошивку BIOS, чтобы можно было добавлять новые функции или исправлять ошибки, но это также создает возможность заражения компьютера руткитами BIOS . Кроме того, неудачное обновление BIOS может привести к поломке материнской платы.
Последней версией Microsoft Windows , официально поддерживающей работу на ПК с устаревшей прошивкой BIOS, является Windows 10 , поскольку для Windows 11 требуется система, совместимая с UEFI (за исключением выпусков Windows 11 для IoT Enterprise, начиная с версии 24H2). [7] ).
Унифицированный расширяемый интерфейс прошивки (UEFI) является преемником устаревшего BIOS ПК и призван устранить его технические ограничения. [8] С 2020 года все ПК на платформах Intel больше не поддерживают Legacy BIOS. [9]
История
[ редактировать ]/* C P / M B A S I C I / O S Y S T E M (B I O S) COPYRIGHT (C) GARY A. KILDALL JUNE, 1975 */ […] /* B A S I C D I S K O P E R A T I N G S Y S T E M (B D O S) COPYRIGHT (C) GARY A. KILDALL JUNE, 1975 */- Отрывок из заголовка файла BDOS.PLM в исходном коде PL/M CP/M 1.1 или 1.2 для Lawrence Livermore Laboratories (LLL). [4]
Термин BIOS (базовая система ввода/вывода) был предложен Гэри Килдаллом. [10] [11] и впервые появился в операционной системе CP/M в 1975 году. [4] [5] [11] [12] [13] [14] описывающая машинно-зависимую часть CP/M, загружаемую во время загрузки и напрямую взаимодействующую с аппаратным обеспечением . [5] (Машина CP/M обычно имеет в своем ПЗУ только простой загрузчик .)
Версии MS-DOS , PC DOS или DR-DOS содержат файл, называемый по-разному « IO.SYS », « IBMBIO.COM », «IBMBIO.SYS» или «DRBIOS.SYS»; этот файл известен как «DOS BIOS» (также известный как «Система ввода-вывода DOS») и содержит аппаратную часть операционной системы нижнего уровня. Вместе с базовым аппаратно-зависимым, но независимым от операционной системы «Системным BIOS», который находится в ПЗУ , он представляет собой аналог « CP/M BIOS ».
BIOS, изначально являвшийся собственностью IBM PC, был реконструирован некоторыми компаниями (например, Phoenix Technologies ), стремившимися создать совместимые системы.
С появлением машин PS/2 IBM разделила системный BIOS на части для реального и защищенного режима. Часть реального режима предназначалась для обеспечения обратной совместимости с существующими операционными системами, такими как DOS, и поэтому была названа «CBIOS» (от «Совместимость BIOS»), тогда как «ABIOS» (от «Расширенный BIOS») предоставлял новые интерфейсы, в частности подходит для многозадачных операционных систем, таких как OS/2 . [15]
Пользовательский интерфейс
[ редактировать ]BIOS исходных IBM PC и XT не имел интерактивного пользовательского интерфейса. На экране отображались коды ошибок или сообщения, либо генерировались закодированные серии звуков, сигнализирующие об ошибках, когда самотестирование при включении питания (POST) не дошло до точки успешной инициализации адаптера видеодисплея. Опции на IBM PC и XT устанавливались переключателями и перемычками на основной плате и на картах расширения . Примерно с середины 1990-х годов для ПЗУ BIOS стало типичным включать «утилиту настройки BIOS» (BCU). [16] ) или «Утилита настройки BIOS», доступ к которой осуществляется при включении системы с помощью определенной последовательности клавиш. Эта программа позволяла пользователю устанавливать параметры конфигурации системы, которые раньше устанавливались с помощью DIP-переключателей , через систему интерактивного меню, управляемую с помощью клавиатуры. В промежуточный период IBM-совместимые ПК, включая IBM AT , хранили параметры конфигурации в ОЗУ с батарейным питанием и использовали загрузочную программу конфигурации на дискете, а не в ПЗУ, для установки параметров конфигурации, содержащихся в этой памяти. Дискета входила в комплект поставки компьютера, и в случае ее утери изменить настройки системы было невозможно. То же самое относилось в целом к компьютерам с шиной EISA , для которых программа настройки называлась EISA Configuration Utility (ECU).
Современный Wintel -совместимый компьютер обеспечивает процедуру установки, по сути не отличающуюся от утилит настройки BIOS, находящихся в ПЗУ, конца 1990-х годов; пользователь может настроить параметры оборудования с помощью клавиатуры и видеодисплея. Современная машина Wintel может хранить настройки конфигурации BIOS во флэш-ПЗУ, возможно, в том же флэш-ПЗУ, в котором хранится сам BIOS.
Операция
[ редактировать ]Запуск системы
[ редактировать ]Ранние процессоры Intel начинались с физического адреса 000FFFF0h. Системы с более поздними процессорами предоставляют логику для запуска BIOS из системного ПЗУ . [17]
Если система только что была включена или была нажата кнопка сброса (« холодная перезагрузка полное самотестирование при включении питания »), запускается (POST). Если было нажато сочетание клавиш Ctrl+Alt+Delete (« горячая перезагрузка »), значение специального флага, хранящееся в энергонезависимой памяти BIOS (« CMOS »), проверенное BIOS, позволяет обойти длительную проверку POST и обнаружение памяти.
POST идентифицирует, тестирует и инициализирует системные устройства, такие как процессор , набор микросхем , ОЗУ , материнская плата , видеокарта , клавиатура , мышь , жесткий диск , привод оптических дисков и другое оборудование , включая встроенные периферийные устройства .
На ранних компьютерах IBM в POST была процедура, которая загружала программу в ОЗУ через порт клавиатуры и запускала ее. [18] [19] Эта функция предназначена для заводских испытаний или диагностики.
Процесс загрузки
[ редактировать ]После завершения сканирования дополнительных ПЗУ и всех обнаруженных модулей ПЗУ с действительными контрольными суммами вызова или сразу после POST в версии BIOS, которая не сканирует дополнительные ПЗУ, BIOS вызывает INT 19h, чтобы начать обработку загрузки. После загрузки загруженные программы также могут вызывать INT 19h для перезагрузки системы, но они должны быть осторожны, чтобы отключить прерывания и другие асинхронные аппаратные процессы, которые могут помешать процессу перезагрузки BIOS, иначе система может зависнуть или выйти из строя во время перезагрузки. .
При вызове INT 19h BIOS пытается найти программное обеспечение загрузчика на «загрузочном устройстве», таком как жесткий диск , дискета , компакт-диск или DVD . Он загружает и запускает первое найденное загрузочное программное обеспечение , предоставляя ему контроль над ПК. [20]
BIOS использует загрузочные устройства, установленные в энергонезависимой памяти BIOS ( CMOS ) или, в самых ранних ПК, DIP-переключатели . BIOS проверяет каждое устройство, чтобы определить, является ли оно загрузочным, пытаясь загрузить первый сектор ( загрузочный сектор ). Если сектор не может быть прочитан, BIOS переходит к следующему устройству. Если сектор прочитан успешно, некоторые BIOS также проверяют подпись загрузочного сектора 0x55 0xAA в последних двух байтах сектора (длиной 512 байт), прежде чем принять загрузочный сектор и считать устройство загрузочным. [б]
При обнаружении загрузочного устройства BIOS передает управление загруженному сектору. BIOS не интерпретирует содержимое загрузочного сектора, кроме возможной проверки подписи загрузочного сектора в последних двух байтах. Интерпретация структур данных, таких как таблицы разделов и блоки параметров BIOS, выполняется загрузочной программой в самом загрузочном секторе или другими программами, загружаемыми в процессе загрузки.
Недисковое устройство, такое как сетевой адаптер, пытается загрузиться с помощью процедуры, которая определяется его дополнительным ПЗУ или его эквивалентом, встроенным в ПЗУ BIOS материнской платы. Таким образом, дополнительные ПЗУ также могут влиять или заменять процесс загрузки, определенный ПЗУ BIOS материнской платы.
Благодаря стандарту загрузки оптических носителей El Torito оптический привод фактически эмулирует 3,5-дюймовую дискету высокой плотности в BIOS для целей загрузки. Чтение «первого сектора» компакт-диска или DVD-ROM — это не просто определенная операция. как на дискете или жестком диске. Кроме того, сложность носителя затрудняет запись полезной загрузочной программы в одном секторе. Загрузочная виртуальная дискета может содержать программное обеспечение, обеспечивающее доступ к оптическому носителю в его исходном виде. формат.
Приоритет загрузки
[ редактировать ]Пользователь может выбрать приоритет загрузки, реализованный в BIOS. Например, большинство компьютеров имеют загрузочный жесткий диск, но иногда имеется съемный носитель с более высоким приоритетом загрузки, поэтому пользователь может вызвать загрузку съемного диска.
В большинстве современных BIOS порядок приоритета загрузки может быть настроен пользователем. В старых версиях BIOS можно выбрать ограниченные параметры приоритета загрузки; в самых ранних BIOS была реализована схема с фиксированным приоритетом: сначала дисководы гибких дисков, затем фиксированные диски (т. е. жесткие диски), и обычно другие загрузочные устройства не поддерживались, при условии изменения этих правил установленными дополнительными ПЗУ. BIOS на ранних ПК также обычно загружался только с первого флоппи-диска или первого жесткого диска, даже если было установлено два диска.
Ошибка загрузки
[ редактировать ]На исходных IBM PC и XT, если загрузочный диск не был найден, BIOS попытается запустить ROM BASIC с помощью вызова прерывания INT 18h . Поскольку лишь немногие программы использовали BASIC в ПЗУ, производители ПК-клонов исключили его; тогда компьютер, которому не удалось загрузиться с диска, отобразит «Нет ROM BASIC» и остановится (в ответ на INT 18h).
Более поздние компьютеры отображали сообщение типа «Загрузочный диск не найден»; некоторые предлагали вставить диск и нажать клавишу, чтобы повторить процесс загрузки. Современный BIOS может ничего не отображать или может автоматически войти в утилиту настройки BIOS в случае сбоя процесса загрузки.
Загрузочная среда
[ редактировать ]Среда для программы загрузки очень проста: ЦП находится в реальном режиме, а регистры общего назначения и сегментные регистры не определены, за исключением SS, SP, CS и DL. CS:IP всегда указывает на физический адрес. 0x07C00
. Какие значения CS и IP на самом деле имеют, точно не определено. Некоторые BIOS используют CS:IP 0x0000:0x7C00
в то время как другие могут использовать 0x07C0:0x0000
. [21] Поскольку загрузочные программы всегда загружаются по этому фиксированному адресу, нет необходимости перемещать загрузочную программу. DL может содержать номер диска , используемый с INT 13h загрузочного устройства . SS:SP указывает на действительный стек, который предположительно достаточно велик для поддержки аппаратных прерываний, но в противном случае SS и SP не определены. (Стек должен быть уже настроен для обслуживания прерываний, а прерывания должны быть включены для прерывания системного таймера, которое BIOS всегда использует, по крайней мере, для поддержания счетчика времени суток и которое он инициализирует. во время POST, чтобы клавиатура была активной и работала, даже если служба клавиатуры BIOS не вызывается и помещается в 15-символьный буфер опережающего ввода, поддерживаемый BIOS.) Программа загрузки должна быть установлена; создать свой собственный стек, поскольку размер стека, установленный BIOS, неизвестен и его расположение также является переменным; хотя программа загрузки может исследовать стек по умолчанию, проверив SS:SP, проще и короче просто безоговорочно настроить новый стек. [22]
Во время загрузки все службы BIOS доступны, а память ниже адреса 0x00400
содержит таблицу векторов прерываний . BIOS POST инициализирует системные таймеры, контроллеры прерываний, контроллеры DMA и другое оборудование материнской платы/набора микросхем, необходимое для перевода всех служб BIOS в состояние готовности. Обновление DRAM для всей системной DRAM в обычной и расширенной памяти, но не обязательно в расширенной памяти, настроено и запущено. Векторы прерываний , соответствующие прерываниям BIOS, были установлены так, чтобы указывать на соответствующие точки входа в BIOS, векторы аппаратных прерываний для устройств, инициализированных BIOS, были установлены так, чтобы указывать на ISR, предоставляемые BIOS, и некоторые другие прерывания, в том числе которые BIOS генерирует для перехвата программ, установлены фиктивные ISR по умолчанию, которые немедленно возвращаются. BIOS поддерживает зарезервированный блок системной оперативной памяти по адресам 0x00400–0x004FF
с различными параметрами, инициализированными во время POST. Вся память по адресу и выше 0x00500
может использоваться загрузочной программой; он может даже перезаписать себя. [23] [24]
Расширения (дополнительные ПЗУ)
[ редактировать ]жесткого диска Периферийные карты, такие как адаптеры главной шины и видеокарты, имеют собственную прошивку, а дополнительное ПЗУ расширения BIOS может быть частью встроенного ПО карты расширения, которое обеспечивает дополнительные функции BIOS. Код в дополнительных ПЗУ выполняется до того, как BIOS загрузит операционную систему с запоминающего устройства . Эти ПЗУ обычно тестируют и инициализируют оборудование, добавляют новые службы BIOS или заменяют существующие службы BIOS собственными службами. Например, контроллер SCSI обычно имеет ПЗУ расширения BIOS, которое добавляет поддержку жестких дисков, подключенных через этот контроллер. ПЗУ расширения в принципе может содержать операционную систему или может реализовывать совершенно другой процесс загрузки, например загрузку по сети . Работу IBM-совместимой компьютерной системы можно полностью изменить, удалив или вставив карту адаптера (или микросхему ПЗУ), содержащую ПЗУ расширения BIOS.
BIOS материнской платы обычно содержит код для инициализации и загрузки встроенного дисплея и встроенной памяти. Кроме того, сменные карты-адаптеры, такие как SCSI , RAID , сетевые интерфейсные карты и видеокарты , часто включают в себя собственный BIOS (например, Video BIOS ), дополняющий или заменяющий код системного BIOS для данного компонента. Подобным образом могут вести себя даже устройства, встроенные в материнскую плату; их дополнительные ПЗУ могут быть частью BIOS материнской платы.
Для карты расширения требуется дополнительное ПЗУ, если карта не поддерживается BIOS материнской платы и карту необходимо инициализировать или сделать доступной через службы BIOS перед загрузкой операционной системы (обычно это означает, что она требуется в процессе загрузки). ). Дополнительным преимуществом ПЗУ на некоторых ранних компьютерных системах (в частности, на IBM PCjr) было то, что ПЗУ было быстрее, чем ОЗУ основной системы. (В современных системах ситуация прямо противоположная: код ПЗУ BIOS обычно копируется («затеняется») в ОЗУ, чтобы он работал быстрее.)
Процедура загрузки
[ редактировать ]Если ПЗУ расширения желает совместно изменить способ загрузки системы (например, с сетевого устройства или адаптера SCSI), оно может использовать спецификации загрузки BIOS (BBS), API чтобы зарегистрировать свою способность сделать это. После регистрации ПЗУ расширения с помощью API BBS пользователь может выбирать доступные варианты загрузки из пользовательского интерфейса BIOS. Вот почему большинство реализаций BIOS ПК, совместимых с BBS, не позволяют пользователю войти в пользовательский интерфейс BIOS до тех пор, пока ПЗУ расширения не завершат выполнение и не зарегистрируются в BBS API. [ нужна ссылка ]
Кроме того, если ПЗУ расширения желает изменить способ загрузки системы в одностороннем порядке, оно может просто перехватить INT 19h или другие прерывания, обычно вызываемые из прерывания 19h, например INT 13h, дисковую службу BIOS, чтобы перехватить процесс загрузки BIOS. Затем он может заменить процесс загрузки BIOS своим собственным или просто изменить последовательность загрузки, вставив в нее свои собственные действия по загрузке, запретив BIOS определять определенные устройства как загрузочные, или и то, и другое. До того, как была опубликована спецификация загрузки BIOS, это был единственный способ для ПЗУ расширения реализовать возможность загрузки устройств, не поддерживаемых для загрузки собственным BIOS материнской платы. [ нужна ссылка ]
Инициализация
[ редактировать ]После того, как BIOS материнской платы завершает POST, большинство версий BIOS ищут дополнительные модули ПЗУ, также называемые ПЗУ расширения BIOS, и выполняют их. BIOS материнской платы сканирует дополнительные ПЗУ в части « верхней области памяти » (часть адресного пространства реального режима x86 с адресом 0xA0000 и выше) и запускает каждое найденное ПЗУ по порядку. Чтобы обнаружить дополнительные ПЗУ, отображаемые в памяти, реализация BIOS сканирует адресное пространство реального режима из 0x0C0000
к 0x0F0000
на границах 2 КБ (2048 байт) ищем двухбайтовую подпись ПЗУ : 0x55, за которой следует 0xAA. В действительном ПЗУ расширения за этой сигнатурой следует один байт, указывающий количество 512-байтовых блоков, которые ПЗУ расширения занимает в реальной памяти, а следующий байт представляет собой точку входа дополнительного ПЗУ (также известную как его «смещение входа»). . Если ПЗУ имеет действительную контрольную сумму, BIOS передает управление адресу входа, который в обычном ПЗУ расширения BIOS должен быть началом процедуры инициализации расширения.
На этом этапе код расширения ПЗУ берет на себя работу, обычно тестируя и инициализируя оборудование, которым он управляет, и регистрируя векторы прерываний для использования приложениями после загрузки. Он может использовать службы BIOS (в том числе предоставляемые ранее инициализированными дополнительными ПЗУ) для предоставления интерфейса пользовательской конфигурации, отображения диагностической информации или выполнения любых других действий, которые ему требуются. Возможно, дополнительное ПЗУ не вернется в BIOS, полностью прерывая последовательность загрузки BIOS.
Дополнительное ПЗУ обычно должно возвращаться в BIOS после завершения процесса инициализации. Как только (и если) дополнительное ПЗУ возвращается, BIOS продолжает поиск дополнительных ПЗУ, вызывая каждое из них по мере его обнаружения, пока не будет просканирована вся область дополнительного ПЗУ в пространстве памяти.
Физическое размещение
[ редактировать ]Дополнительные ПЗУ обычно находятся на платах адаптеров. Однако исходный ПК и, возможно, также ПК XT имеют запасной разъем ПЗУ на материнской плате («системная плата» в терминах IBM), в который можно вставить дополнительное ПЗУ, а четыре ПЗУ, содержащие интерпретатор BASIC, могут быть вставлены. также быть удалены и заменены пользовательскими ПЗУ, которые могут быть дополнительными ПЗУ. IBM PCjr уникален среди компьютеров тем, что имеет два разъема для картриджей ПЗУ на передней панели. Картриджи в этих слотах отображаются в той же области верхней области памяти, которая используется для дополнительных ПЗУ, и картриджи могут содержать дополнительные модули ПЗУ, которые распознает BIOS. Картриджи также могут содержать другие типы модулей ПЗУ, например программы BASIC, которые обрабатываются по-разному. Один картридж PCjr может содержать несколько модулей ПЗУ разных типов, возможно, хранящихся вместе в одной микросхеме ПЗУ.
Службы операционной системы
[ редактировать ]ПЗУ BIOS настраивается под аппаратное обеспечение конкретного производителя, что позволяет стандартизированным образом предоставлять низкоуровневые услуги (такие как чтение нажатия клавиши или запись сектора данных на дискету) программам, включая операционные системы. один стандартный системный вызов Например, IBM PC может иметь либо монохромный, либо цветной адаптер дисплея (с использованием разных адресов памяти дисплея и аппаратного обеспечения), но для отображения символа в указанной позиции на экране может быть вызван BIOS. текстовый режим или графический режим .
BIOS предоставляет небольшую библиотеку основных функций ввода-вывода для работы с периферийными устройствами (такими как клавиатура, элементарные функции отображения текста и графики и т. д.). При использовании MS-DOS доступ к службам BIOS можно получить из прикладной программы (или из MS-DOS), выполнив команду прерывания INT 13h для доступа к функциям диска или выполнив один из ряда других документированных вызовов прерываний BIOS для доступа к видео. дисплей , клавиатура , кассета и другие функции устройства.
Операционные системы и исполнительное программное обеспечение, предназначенные для замены этой базовой функциональности встроенного ПО, предоставляют заменяющие программные интерфейсы для прикладного программного обеспечения. Приложения также могут предоставлять эти услуги самим себе. Это началось еще в 1980-х годах под MS-DOS , когда программисты заметили, что использование видеосервисов BIOS для отображения графики происходит очень медленно. Чтобы увеличить скорость вывода на экран, многие программы обходили BIOS и программировали аппаратное обеспечение видеодисплея напрямую. Другие графические программисты, особенно, но не исключительно, на демосцене , заметили, что существуют технические возможности видеоадаптеров ПК, которые не поддерживаются IBM BIOS и ими нельзя воспользоваться, не обойдя их. Поскольку AT-совместимый BIOS работал в реальном режиме Intel , операционным системам, работающим в защищенном режиме на процессорах 286 и более поздних версиях, требовались драйверы аппаратных устройств, совместимые с работой в защищенном режиме, для замены служб BIOS.
На современных ПК под управлением современных операционных систем (таких как Windows и Linux ) вызовы прерываний BIOS используются только во время загрузки и первоначальной загрузки операционных систем. Прежде чем отобразится первый графический экран операционной системы, ввод и вывод обычно обрабатываются через BIOS. Меню загрузки, такое как текстовое меню Windows, которое позволяет пользователям выбирать операционную систему для загрузки, загрузку в безопасном режиме или использование последней удачной конфигурации, отображается через BIOS и принимает ввод с клавиатуры через BIOS. [6]
Многие современные ПК по-прежнему могут загружать и запускать устаревшие операционные системы, такие как MS-DOS или DR-DOS, которые в значительной степени полагаются на BIOS для консольного и дискового ввода-вывода, при условии, что система имеет BIOS или прошивку UEFI с поддержкой CSM.
Обновления микрокода процессора
[ редактировать ]Процессоры Intel имеют перепрограммируемый микрокод начиная с микроархитектуры P6 . [25] [26] [27] Процессоры AMD имеют перепрограммируемый микрокод начиная с микроархитектуры K7 . BIOS содержит исправления микрокода процессора, исправляющие ошибки в исходном микрокоде процессора; микрокод загружается в SRAM процессора , поэтому перепрограммирование не является постоянным, поэтому загрузка обновлений микрокода выполняется при каждом включении системы. Без перепрограммируемого микрокода потребовалась бы дорогостоящая замена процессора; [28] например, ошибка Pentium FDIV обернулась дорогостоящим фиаско для Intel, поскольку потребовала отзыва продукта , поскольку дефектный микрокод исходного процессора Pentium не мог быть перепрограммирован. Операционные системы также могут обновлять микрокод главного процессора . [29] [30]
Идентификация
[ редактировать ]Некоторые BIOS содержат таблицу описания лицензирования программного обеспечения (SLIC), цифровую подпись, помещенную в BIOS производителем оригинального оборудования (OEM), например Dell . SLIC вставляется в таблицу данных ACPI и не содержит активного кода. [31] [32]
Производители компьютеров, распространяющие OEM-версии Microsoft Windows и прикладного программного обеспечения Microsoft, могут использовать SLIC для аутентификации лицензирования на OEM-установочном диске Windows и диске восстановления системы , содержащем программное обеспечение Windows. Системы с SLIC можно предварительно активировать с помощью ключа продукта OEM, и они сверяют сертификат OEM в формате XML с SLIC в BIOS в качестве средства самоактивации (см. Предварительная установка с блокировкой системы , SLP). Если пользователь выполняет новую установку Windows, ему потребуется иметь как ключ OEM (SLP или COA), так и цифровой сертификат для своего SLIC, чтобы обойти активацию. [31] Этого можно достичь, если пользователь выполнит восстановление, используя предварительно настроенный образ, предоставленный OEM. Опытные пользователи могут скопировать необходимые файлы сертификатов из образа OEM, декодировать ключ продукта SLP, а затем выполнить активацию SLP вручную.
Разгон
[ редактировать ]Некоторые реализации BIOS допускают разгон — действие, при котором процессор настраивается на более высокую тактовую частоту , чем его номинальная производительность, для гарантированной производительности. Однако разгон может серьезно подорвать надежность системы на недостаточно охлаждаемых компьютерах и в целом сократить срок службы компонентов. Неправильное выполнение разгона также может привести к настолько быстрому перегреву компонентов, что они механически разрушатся. [33]
Современное использование
[ редактировать ]Некоторые старые операционные системы , например MS-DOS , используют BIOS для выполнения большинства задач ввода-вывода на ПК. [34]
Прямой вызов служб BIOS реального режима неэффективен для с защищенным режимом (и длинным режимом операционных систем ). Вызовы прерываний BIOS не используются современными многозадачными операционными системами после их первоначальной загрузки.
В 1990-х годах BIOS предоставлял некоторые защищенного режима интерфейсы для Microsoft Windows и Unix-подобных операционных систем, такие как Advanced Power Management (APM), Plug and Play BIOS , интерфейс управления рабочим столом (DMI), расширения VESA BIOS (VBE), e820 и Спецификация мультипроцессора (MPS). Начиная с 2000 года большинство BIOS предоставляют интерфейсы ACPI , SMBIOS , VBE и e820 для современных операционных систем. [35] [36] [37] [38] [39]
После операционной системы загрузки код режима управления системой все еще работает в SMRAM. С 2010 года технология BIOS находится в процессе перехода к UEFI . [8]
Конфигурация
[ редактировать ]Утилита настройки
[ редактировать ]Исторически сложилось так, что BIOS IBM PC и XT не имел встроенного пользовательского интерфейса. Версии BIOS на более ранних ПК (класс XT) не настраивались программно; вместо этого пользователи устанавливают параметры с помощью DIP-переключателей на материнской плате. с батарейным питанием Более поздние компьютеры, включая все IBM-совместимые с процессорами 80286, имели энергонезависимую память BIOS (чип CMOS RAM), в которой хранились настройки BIOS. [40] Эти параметры, такие как тип видеоадаптера, объем памяти и параметры жесткого диска, можно было настроить только путем запуска программы настройки с диска, а не встроенной в ПЗУ. была вставлена специальная «справочная дискета» В IBM AT для настройки таких параметров, как размер памяти.
Ранние версии BIOS не имели паролей или возможностей выбора загрузочного устройства. В BIOS была жестко запрограммирована загрузка с первого флоппи-дисковода или, если это не удалось, с первого жесткого диска. Контроль доступа в ранних машинах класса AT осуществлялся с помощью физического замка (который было несложно взломать, если корпус компьютера можно было открыть). Любой, кто мог включить компьютер, мог его загрузить. [ нужна ссылка ]
Позже компьютеры класса 386 начали интегрировать утилиту настройки BIOS в само ПЗУ вместе с кодом BIOS; эти компьютеры обычно загружаются с помощью утилиты настройки BIOS при нажатии определенной клавиши или комбинации клавиш, в противном случае выполняются BIOS POST и процесс загрузки.
Современная утилита настройки BIOS имеет текстовый пользовательский интерфейс (TUI) или графический пользовательский интерфейс (GUI), доступ к которому осуществляется нажатием определенной клавиши на клавиатуре при запуске компьютера. Обычно ключ объявляется на короткое время во время раннего запуска, например «Нажмите DEL , чтобы войти в настройку». Фактический ключ зависит от конкретного оборудования. Функции, присутствующие в утилите настройки BIOS, обычно включают в себя:
- Настройка, включение и отключение аппаратных компонентов
- Установка системного времени
- Установка порядка загрузки
- Установка различных паролей, например пароля для защиты доступа к пользовательскому интерфейсу BIOS и предотвращения загрузки системы злоумышленниками с неавторизованных портативных запоминающих устройств или пароля для загрузки системы.
Аппаратный мониторинг
[ редактировать ]Современный экран настройки BIOS часто содержит вкладку «Состояние здоровья ПК» или вкладку «Мониторинг оборудования» , которая напрямую взаимодействует с микросхемой аппаратного монитора материнской платы. [41] Это дает возможность контролировать температуру процессора и корпуса , напряжение, подаваемое блоком питания , а также отслеживать и контролировать скорость вращения вентиляторов, подключенных к материнской плате.
После загрузки системы мониторинг оборудования и управление вентилятором компьютера обычно выполняются непосредственно самим чипом Hardware Monitor, который может представлять собой отдельный чип, подключенный через I²C или SMBus , или быть частью решения Super I/O , подключенного к сети. через стандартную архитектуру отрасли (ISA) или с малым количеством контактов (LPC). [42] Некоторые операционные системы, такие как NetBSD с envsys и OpenBSD с sysctl hw.sensors , имеют встроенный интерфейс с аппаратными мониторами.
Однако в некоторых случаях BIOS также предоставляет базовую информацию о мониторинге оборудования через ACPI , и в этом случае операционная система может использовать ACPI для выполнения мониторинга оборудования. [43] [44]
Перепрограммирование
[ редактировать ]В современных ПК BIOS хранится в перезаписываемой флэш-памяти EEPROM или NOR , что позволяет заменять и изменять содержимое. Такое перезапись содержимого иногда называют перепрошивкой. Это можно сделать с помощью специальной программы, обычно предоставляемой производителем системы, или на POST , с помощью образа BIOS на жестком диске или USB-накопителе. Файл, содержащий такое содержимое, иногда называют «образом BIOS». BIOS может быть перепрошит для обновления до более новой версии для исправления ошибок, повышения производительности или поддержки нового оборудования.
Аппаратное обеспечение
[ редактировать ]Исходный BIOS IBM PC (и кассетный BASIC) хранился на микросхемах постоянной памяти (ПЗУ), программируемых по маске, в разъемах на материнской плате. ПЗУ могут быть заменены, но не изменены пользователями. Чтобы обеспечить возможность обновлений, многие совместимые компьютеры использовали перепрограммируемые устройства памяти BIOS, такие как EPROM , EEPROM и более поздние устройства флэш-памяти (обычно флэш-памяти NOR ). По словам Роберта Брэйвера, президента производителя BIOS Micro Firmware, чипы Flash BIOS стали обычным явлением примерно в 1995 году, потому что чипы электрически стираемой ППЗУ (EEPROM) дешевле и их легче программировать, чем стандартные ультрафиолетом чипы ППЗУ, стираемые ( EPROM ). Флэш-чипы программируются (и перепрограммируются) внутри схемы, тогда как микросхемы EPROM необходимо извлекать из материнской платы для перепрограммирования. [45] Версии BIOS обновляются, чтобы использовать преимущества новых версий оборудования и исправлять ошибки в предыдущих версиях BIOS. [46]
Начиная с IBM AT, ПК поддерживали аппаратную тактовую частоту, настраиваемую через BIOS. У него был бит столетия, который позволял вручную менять столетие, когда наступал 2000 год. Большинство версий BIOS, созданных в 1995 году, и почти все версии BIOS в 1997 году поддерживали 2000 год , автоматически устанавливая бит столетия, когда часы перевалили за полночь 31 декабря 1999 года. [47]
Первые флэш-чипы были подключены к шине ISA . Начиная с 1998 года флэш-память BIOS перешла на шину LPC в соответствии с новой стандартной реализацией, известной как «концентратор прошивки» (FWH). В 2005 году флэш-память BIOS перешла на шину SPI . [48]
Размер BIOS и емкость ПЗУ, EEPROM или другого носителя, на котором он может храниться, со временем увеличивались по мере добавления новых функций в код; Сейчас существуют версии BIOS размером до 32 мегабайт. Напротив, исходный BIOS IBM PC содержался в ПЗУ с маской размером 8 КБ. Некоторые современные материнские платы включают в себя еще более крупные микросхемы флэш-памяти NAND , которые способны хранить целые компактные операционные системы, такие как некоторые дистрибутивы Linux . Например, некоторые ноутбуки ASUS включали операционную систему Splashtop, встроенную в микросхемы флэш-памяти NAND. [49] Однако идея включения операционной системы вместе с BIOS в ПЗУ ПК не нова; в 1980-х годах Microsoft предложила вариант ПЗУ для MS-DOS, и он был включен в ПЗУ некоторых клонов ПК, таких как Tandy 1000 HX .
Другой тип микросхемы прошивки можно было обнаружить на IBM PC AT и ранних совместимых устройствах. В АТ интерфейсом клавиатуры управлял микроконтроллер с собственной программируемой памятью. На IBM AT это было устройство с 40-контактным разъемом, в то время как некоторые производители использовали версию этого чипа со СППЗУ, которая напоминала СППЗУ. Этому контроллеру также была присвоена функция шлюза A20 для управления памятью объемом выше одного мегабайта; иногда требовалось обновление этого «BIOS клавиатуры», чтобы воспользоваться преимуществами программного обеспечения, которое могло использовать верхнюю память. [ нужна ссылка ]
BIOS может содержать такие компоненты, как код ссылки на память (MRC), который отвечает за инициализацию памяти (например, инициализацию SPD и таймингов памяти ). [50] : 8 [51]
Современный БИОС [52] включает в себя Прошивка Intel Management Engine или процессора безопасности платформы AMD .
Продавцы и продукты
[ редактировать ]Компания | НаградаBIOS | АМЕБИЯ | Инсайд | СиБИОС |
---|---|---|---|---|
Лицензия | Собственный | Собственный | Собственный | LGPL v3 |
Поддерживается/разрабатывается | Прекращено | Прекращено | Прекращено | Да |
32-битные вызовы PCI BIOS | Да | Да | Да | Да |
AHCI | Да | Да | Да | Да |
АПМ | Да | Да | Да (1,2) | Да (1,2) |
ББС | Да | Да | Да | Да |
Загрузочное меню | Да | Да | Да | Да |
Сжатие | Да ( ЛХА [53] ) | Да (ЛХА) | Да (РЛЭ) | Да (ЛЗМА) |
КМОП | Да | Да | Да | Да |
ЭДД | Да | Да | Да | Да |
ESCD | Да | Да | ? | Нет |
Прошить из ПЗУ | ? | Да | ? | Нет |
Язык | Сборка | Сборка | Сборка | С |
LBA | Да (48) | Да (48) | Да | Да (48) |
Спецификация мультипроцессора | Да | Да | Да | Да |
Вариант ПЗУ | Да | Да | Да | Да |
Пароль | Да | Да | Да | Нет |
ПММ | ? | Да | ? | Да |
Экран настройки | Да | Да | Да | Нет |
СМБИОС | Да | Да | Да | Да |
Заставка | Да (EPA) [54] | Да ( ПКХ ) | Да | Да (BMP, JPG) |
ТРМ | Unknown | Unknown | Unknown | Некоторый |
USB- загрузка | Да | Да | Да | Да |
USB-концентратор | ? | ? | ? | Да |
USB-клавиатура | Да | Да | Да | Да |
USB-мышь | Да | Да | Да | Да |
IBM опубликовала полный список BIOS для своих оригинальных ПК, PC XT, PC AT и других современных моделей ПК в приложении к техническому справочному руководству IBM PC для каждого типа компьютеров. Результатом публикации списков BIOS является то, что каждый может увидеть, что именно делает окончательный BIOS и как он это делает.
В мае 1984 года Phoenix Software Associates выпустила свой первый ROM-BIOS, который позволил OEM-производителям создавать практически полностью совместимые клоны без необходимости самостоятельного реконструирования BIOS IBM PC, как это сделала Compaq для портативных компьютеров , что способствовало росту рынка ПК. индустрия совместимости и продажи версий DOS, отличных от IBM. [55] Первый BIOS American Megatrends (AMI) был выпущен в 1986 году.
Новые стандарты, внедренные в BIOS, обычно не имеют полной общедоступной документации или каких-либо списков BIOS. В результате узнать подробные подробности о многих дополнениях к BIOS, сделанных не IBM, не так легко, как об основных службах BIOS.
Многие поставщики материнских плат для ПК лицензировали «ядро» и набор инструментов BIOS у коммерческой третьей стороны, известной как «независимый поставщик BIOS» или IBV. Затем производитель материнской платы настроил этот BIOS в соответствии со своим оборудованием. По этой причине обновленные версии BIOS обычно приобретаются непосредственно у производителя материнской платы. Основные IBV включали American Megatrends (AMI), Insyde Software , Phoenix Technologies и Byosoft. Программное обеспечение Microid Research и Award было приобретено Phoenix Technologies в 1998 году; Позже Phoenix отказалась от торговой марки Award (хотя Award Software по-прежнему упоминается в новых версиях AwardBIOS и прошивках UEFI). [ когда? ] General Software , которую также приобрела Phoenix в 2007 году, продавала BIOS для встраиваемых систем на базе процессоров Intel.
Прошивка BIOS с открытым исходным кодом
[ редактировать ]Сообщество открытого исходного кода активизировало свои усилия по разработке замены проприетарных BIOS и их будущих воплощений аналогами с открытым исходным кодом. Открытая прошивка была ранней попыткой создать стандарт с открытым исходным кодом для загрузки прошивки. Первоначально он был одобрен IEEE в стандарте IEEE 1275-1994, но был отменен в 2005 году. [56] [57] Более поздние примеры включают проекты libreboot , coreboot и OpenBIOS / Open Firmware . AMD предоставила спецификации продуктов для некоторых чипсетов, а Google спонсирует проект. материнских плат Производитель Tyan предлагает coreboot рядом со стандартным BIOS в своей Opteron линейке материнских плат .
Безопасность
[ редактировать ]Этот раздел нуждается в дополнительных цитатах для проверки . ( Март 2019 г. ) |
Микросхемы EEPROM и флэш-памяти имеют преимущество, поскольку они могут быть легко обновлены пользователем; Производители оборудования обычно выпускают обновления BIOS для обновления своих продуктов, улучшения совместимости и устранения ошибок . Однако это преимущество имело риск того, что неправильно выполненное или прерванное обновление BIOS могло сделать компьютер или устройство непригодным для использования. Чтобы избежать подобных ситуаций, в более поздних версиях BIOS используется «загрузочный блок»; часть BIOS, которая запускается первой и должна обновляться отдельно. Этот код проверяет целостность остальной части BIOS (с использованием хэш- контрольных сумм или других методов) перед передачей ей управления. Если загрузочный блок обнаруживает какое-либо повреждение в основной BIOS, он обычно предупреждает пользователя о том, что необходимо инициировать процесс восстановления путем загрузки со съемного носителя (дискета, компакт-диск или USB-накопитель), чтобы пользователь мог снова попытаться перепрограммировать BIOS. Некоторые материнские платы имеют резервную копию BIOS (иногда называемую платами DualBIOS) для восстановления после повреждений BIOS.
Известно как минимум пять вирусов, атакующих BIOS. Два из них предназначались для демонстрационных целей. Первым, найденным в дикой природе, был Mebromi , ориентированный на китайских пользователей.
Первым вирусом BIOS был BIOS Meningitis, который вместо стирания чипов BIOS заразил их. BIOS Meningitis был относительно безвреден по сравнению с таким вирусом, как CIH .
Вторым вирусом BIOS был CIH , также известный как «Чернобыльский вирус», который был способен стирать содержимое флэш-памяти BIOS на совместимых чипсетах. CIH появился в середине 1998 года и стал активным в апреле 1999 года. Часто зараженные компьютеры переставали загружаться, и людям приходилось извлекать микросхему флэш-ПЗУ из материнской платы и перепрограммировать ее. CIH ориентировалась на широко распространенный в то время набор микросхем материнской платы Intel i430TX и воспользовалась тем фактом, что операционные системы Windows 9x , также широко распространенные в то время, обеспечивали прямой аппаратный доступ ко всем программам.
Современные системы не уязвимы к CIH из-за использования множества наборов микросхем, несовместимых с набором микросхем Intel i430TX, а также с другими типами микросхем флэш-ПЗУ. Существует также дополнительная защита от случайной перезаписи BIOS в виде загрузочных блоков, которые защищены от случайной перезаписи, или систем, оснащенных двойным или четырехкратным BIOS, которые в случае сбоя могут использовать резервную копию BIOS. Кроме того, все современные операционные системы, такие как FreeBSD , Linux , macOS , Windows NT на базе ОС Windows, такие как Windows 2000 , Windows XP и новее, не позволяют программам пользовательского режима иметь прямой доступ к оборудованию с использованием уровня абстракции оборудования . [58]
В результате с 2008 года CIH стал практически безвредным, вызывая в худшем случае раздражение, заражая исполняемые файлы и запуская антивирусное программное обеспечение. Однако возможны и другие вирусы BIOS; [59] поскольку большинство домашних пользователей Windows без UAC Windows Vista/7 запускают все приложения с правами администратора, современный CIH-подобный вирус в принципе все равно может получить доступ к оборудованию без предварительного использования эксплойта. [ нужна ссылка ] Операционная система OpenBSD запрещает всем пользователям такой доступ, а патч grsecurity для ядра Linux также по умолчанию предотвращает этот прямой доступ к оборудованию, с той разницей, что злоумышленнику требуется гораздо более сложный эксплойт на уровне ядра или перезагрузка машины. [ нужна ссылка ]
Третий вирус BIOS был разработан Джоном Хисманом, главным консультантом по безопасности британской компании Next-Generation Security Software. В 2006 году на конференции Black Hat Security Conference он показал, как повышать привилегии и читать физическую память, используя вредоносные процедуры, заменяющие обычные функции ACPI, хранящиеся во флэш-памяти. [60]
Четвертым вирусом BIOS была техника под названием «Постоянное заражение BIOS». Он появился в 2009 году на конференции по безопасности CanSecWest в Ванкувере и на конференции по безопасности SyScan в Сингапуре. Исследователи Анибал Сакко [61] а Альфредо Ортега из компании Core Security Technologies продемонстрировал, как вставлять вредоносный код в процедуры распаковки в BIOS, обеспечивая почти полный контроль над ПК при запуске, даже до загрузки операционной системы. Проверка концепции не использует дефект реализации BIOS, а включает только обычные процедуры перепрошивки BIOS. Таким образом, требуется физический доступ к машине или чтобы пользователь был пользователем root. Несмотря на эти требования, Ортега подчеркнул глубокие последствия своего и Сакко открытия: «Мы можем исправить драйвер, чтобы удалить полностью работающий руткит . У нас даже есть небольшой код, который может удалить или отключить антивирус». [62]
Mebromi — троян , нацеленный на компьютеры с AwardBIOS , Microsoft Windows и антивирусным ПО от двух китайских компаний: Rising Antivirus и Jiangmin KV Antivirus. [63] [64] [65] Mebromi устанавливает руткит, который заражает главную загрузочную запись .
В декабре 2013 года в интервью программе « 60 минут » Дебора Планкетт, директор по обеспечению информации Агентства национальной безопасности США , заявила, что АНБ раскрыло и предотвратило возможную атаку BIOS со стороны иностранного государства, нацеленную на финансовую систему США. [66] Программа со ссылкой на анонимные источники утверждает, что это был китайский заговор. [66] Однако последующие статьи в The Guardian , [67] Атлантика , [68] Проводной [69] и Регистр [70] опроверг утверждения АНБ.
На новых платформах Intel включена технология Intel Boot Guard (IBG), эта технология проверяет цифровую подпись BIOS при запуске, а открытый ключ IBG объединяется с PCH . Конечные пользователи не могут отключить эту функцию.
Альтернативы и преемники
[ редактировать ]Унифицированный расширяемый интерфейс прошивки (UEFI) дополняет BIOS во многих новых машинах. Первоначально написанный для архитектуры Intel Itanium , UEFI теперь доступен для x86 и Arm платформ ; Разработкой спецификации руководит Unified EFI Forum , отраслевая группа по особым интересам . Загрузка EFI поддерживается только в Microsoft Windows версиях , поддерживающих GPT . [71] ядро Linux 2.6.1 и более поздних версий и macOS на компьютерах Mac на базе процессоров Intel . [72] По состоянию на 2014 год [update], новое оборудование ПК преимущественно поставляется с прошивкой UEFI. Архитектура защиты от руткитов также может помешать системе выполнять собственные изменения программного обеспечения пользователя, что делает UEFI спорным как замену устаревшего BIOS в сообществе открытого аппаратного обеспечения . Кроме того, Windows 11 требуется UEFI. для загрузки [73] за исключением выпусков Windows 11 IoT Enterprise. [7]
Другие альтернативы функциональности «Legacy BIOS» в мире x86 включают coreboot и libreboot .
Некоторые серверы и рабочие станции используют независимую от платформы открытую прошивку (IEEE-1275), основанную на Forth языке программирования ; он включен в состав компьютеров Sun SPARC , линейки IBM RS/6000 и других систем PowerPC , таких как материнские платы CHRP на базе x86 , а также OLPC XO-1 .
По крайней мере, с 2015 года Apple удалила поддержку устаревшей версии BIOS с компьютеров MacBook Pro . Таким образом, утилита BIOS больше не поддерживает устаревший вариант и печатает «Устаревший режим не поддерживается в этой системе».
В 2017 году Intel объявила, что к 2020 году прекратит поддержку устаревшей версии BIOS. С 2019 года OEM-ПК на новой платформе Intel больше не поддерживают устаревшую опцию.
См. также
[ редактировать ]- Двойная загрузка
- Расширенные данные конфигурации системы (ESCD)
- Система управления вводом/выводом
- ACPI (расширенный интерфейс настройки и питания)
- Список прерываний Ральфа Брауна (RBIL) - прерывания, вызовы, интерфейсы, структуры данных, адреса памяти и портов, а также коды операций процессора для архитектуры x86.
- BIOS управления системой (SMBIOS)
- UEFI (унифицированный расширяемый интерфейс прошивки)
- Das U-Boot , часто используемый во встраиваемых системах.
Примечания
[ редактировать ]- ^ Хотя термин BIOS появился еще до 1981 года, стандарт для компьютеров , совместимых с IBM PC, начался с выпуска оригинального персонального компьютера IBM .
- ^ Подпись в смещении
+0x1FE
в загрузочных секторах есть0x55 0xAA
, то есть0x55
в зачете+0x1FE
и0xAA
в зачете+0x1FF
. Поскольку , необходимо предполагать представление с прямым порядком байтов в контексте компьютеров, совместимых с IBM PC , это можно записать как 16-битное слово.0xAA55
в программах для процессоров x86 (обратите внимание на порядок перестановки), тогда как это нужно было бы записать как0x55AA
в программах для других архитектур ЦП используется представление с прямым порядком байтов . Поскольку это неоднократно путалось в книгах и даже в оригинальных справочных документах Microsoft, в этой статье используется побайтовое представление на диске на основе смещения, чтобы избежать любой возможной неправильной интерпретации.
Ссылки
[ редактировать ]- ^ «Ссылка — BIOS системы» . ПКГид . Архивировано из оригинала 21 декабря 2014 г. Проверено 6 декабря 2014 г.
- ^ «Единый расширяемый интерфейс прошивки» . Интел .
- ^ «УЕФИ» . OSDev.org .
- ^ Перейти обратно: а б с Килдалл, Гэри Арлен (июнь 1975 г.), CP/M 1.1 или 1.2 BIOS и BDOS для лабораторий Лоуренса Ливермора
- ^ Перейти обратно: а б с Килдалл, Гэри Арлен (январь 1980 г.). «История CP/M - эволюция отрасли: точка зрения одного человека» (том 5, № 1, изд. № 41). Журнал доктора Добба по компьютерной гимнастике и ортодонтии. стр. 6–7. Архивировано из оригинала 24 ноября 2016 г. Проверено 3 июня 2013 г.
- ^ Перейти обратно: а б «Загрузка · Linux внутри» . 0xax.gitbooks.io . Проверено 10 ноября 2020 г.
- ^ Перейти обратно: а б «Минимальные системные требования для Windows IoT Enterprise» . Microsoft Learn . 20 мая 2024 г. Проверено 7 июня 2024 г.
- ^ Перейти обратно: а б Брэдли, Тони. «RIP BIOS: введение в UEFI» . ПКМир . Архивировано из оригинала 27 января 2014 г. Проверено 27 января 2014 г.
- ^ «Удаление устаревшей поддержки загрузки для платформ Intel. Технические рекомендации» . Проверено 25 июля 2024 г.
- ^ Суэйн, Майкл (1 апреля 1997 г.). «Гэри Килдалл и коллегиальное предпринимательство» . Журнал доктора Добба . Архивировано из оригинала 24 января 2007 г. Проверено 20 ноября 2006 г.
- ^ Перейти обратно: а б «Веха IEEE в электротехнике и вычислительной технике — CP/M — операционная система микрокомпьютера, 1974 г.» (PDF) . Музей истории компьютеров . 25 апреля 2014 г. Архивировано (PDF) из оригинала 03 апреля 2019 г. Проверено 3 апреля 2019 г.
- ^ Шустек, Лен (2 августа 2016 г.). «Своими словами: Гэри Килдалл» . Замечательные люди . Музей истории компьютеров . Архивировано из оригинала 17 декабря 2016 г.
- ^ Киллиан, А. Джозеф «Джо» (2001). «CP/M Гэри Килдалла: Немного ранней истории CP/M - 1976-1977» . Томас «Тодд» Фишер , IMSAI . Архивировано из оригинала 29 декабря 2012 г. Проверено 3 июня 2013 г.
- ^ Фрейли, Боб; Спайсер, Даг (26 января 2007 г.). «Устная история Джозефа Киллиана, интервью взял: Боб Фрейли, отредактировал: Даг Спайсер, запись: 26 января 2007 г., Маунтин-Вью, Калифорния, CHM. Справочный номер: X3879.2007» (PDF) . Музей истории компьютеров. Архивировано из оригинала (PDF) 14 июля 2014 г. Проверено 3 июня 2013 г.
- ^ Гласс, Бретт (1989). «БИОС IBM PC» . Байт : 303–310 . Проверено 31 декабря 2021 г.
- ^ «Утилита настройки HP BIOS» . Хьюлетт-Паккард . 2013. Архивировано из оригинала 12 января 2015 г. Проверено 12 января 2015 г.
- ^ См. Руководство разработчика программного обеспечения для архитектур Intel 64 и IA-32. Архивировано 26 января 2012 г. на Wayback Machine , том 3, раздел 9.1.2.
- ^ страница 5-27 Технический справочник справочной библиотеки по аппаратному обеспечению персональных компьютеров IBM , 1984, номер публикации 6361459
- ^ «Техническое справочное руководство IBM 5162 PC XT286 TechRef 68X2537» (PDF) . Август 1986 г. с. 35 (Системный BIOS A-5). Архивировано (PDF) из оригинала 11 декабря 2014 г. Проверено 11 декабря 2014 г.
- ^ Как StuffWorks: Что делает BIOS. Архивировано 7 февраля 2008 г. на Wayback Machine .
- ^ Акельич, Бекир (01 января 2017 г.). «BIOS БАЗОВАЯ СИСТЕМА ВВОДА/ВЫВОДА, ФУНКЦИИ И МОДИФИКАЦИИ BIOS» . BIOS : 12. Архивировано из оригинала 8 августа 2022 г. Получено 8 августа 2022 г. - через МЕЖДУНАРОДНЫЙ УНИВЕРСИТЕТ ТРАВНИК, ФАКУЛЬТЕТ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ, ПРОГРАММИРОВАНИЕ ТРАВНИКС.
- ^ «БИОС — CodeDocs» . codedocs.org . Проверено 08 августа 2022 г.
- ^ «Схема памяти и карта памяти» . flint.cs.yale.edu . Проверено 08 августа 2022 г.
- ^ «Таблица ACPI данных BIOS (BDAT)» (PDF) . Спецификация интерфейса . 4 (5): 67. 2020. Архивировано (PDF) из оригинала 03 июля 2021 г. Проверено 08 августа 2022 г.
- ^ Стиллер, Андреас; Пол, Матиас Р. (12 мая 1996 г.). «Процессор шепчет» . c't – журнал по компьютерным технологиям . Тенденции и новости / текущие - Процессоры (на немецком языке). Том 1996, № 6. Verlag Heinz Heise GmbH & Co KG . п. 20. ISSN 0724-8679 . Архивировано из оригинала 28 августа 2017 г. Проверено 28 августа 2017 г.
- ^ Мюллер, Скотт (8 июня 2001 г.). Функция обновления процессора | Типы и характеристики микропроцессоров . ИнформИТ. Архивировано из оригинала 16 апреля 2014 г. Проверено 15 апреля 2014 г.
- ^ «Файл данных микрокода процессора Linux*» . Центр загрузки . Скачатьcenter.intel.com. 23 сентября 2009 г. Архивировано из оригинала 16 апреля 2014 г. Проверено 15 апреля 2014 г.
- ^ Скотт Мюллер, Обновление и ремонт компьютеров, 15-е издание , Que Publishing, 2003 г. ISBN 0-7897-2974-1 , страницы 109–110.
- ^ «KB4100347: обновления микрокода Intel» . support.microsoft.com . Проверено 20 сентября 2020 г.
- ^ «Микрокод — Debian Wiki» . wiki.debian.org . Проверено 19 сентября 2020 г.
- ^ Перейти обратно: а б «Как работают SLP и SLIC» . сайт Guytechie.com . 25 февраля 2010 г. Архивировано из оригинала 3 февраля 2015 г. Проверено 3 февраля 2015 г.
- ^ «Создайте и добавьте модуль таблицы OEM ACPI SLIC в BIOS congatec» (PDF) . congatec.com . 16 июня 2011 г. Архивировано (PDF) из оригинала 2 августа 2014 г. Проверено 3 февраля 2015 г.
- ^ Уитсон Гордон (13 января 2014 г.). «Введение в разгон процессора Intel для начинающих» . Лайфхакер . Гоукер Медиа. Архивировано из оригинала 7 декабря 2014 г. Проверено 6 декабря 2014 г.
- ^ Статья об интеллектуальных вычислениях - Что такое BIOS? Архивировано 10 марта 2012 г. в Wayback Machine — Основы вычислений, июль 1994 г. • Том 5, выпуск 7.
- ^ «Что такое ACPI (расширенный интерфейс настройки и питания)? — Определение с сайта WhatIs.com» . ПоискWindowsServer . Проверено 18 сентября 2020 г.
- ^ «Изменение уровня аппаратной абстракции в Windows 2000/XP – Smallvoid.com» . 15 января 2001 г. Проверено 18 сентября 2020 г.
- ^ «Что такое ACPI?» . www.spo-comm.de . Проверено 18 сентября 2020 г.
- ^ лорихоллаш. «Поддержка автономных систем — драйверы Windows» . docs.microsoft.com . Проверено 5 декабря 2020 г.
- ^ «Карта памяти (x86) — OSDev Wiki» . wiki.osdev.org . Проверено 11 декабря 2020 г.
- ^ Торрес, Габриэль (24 ноября 2004 г.). «Введение и литиевая батарея» . Замена батареи материнской платы . hardwaresecrets.com. Архивировано из оригинала 24 декабря 2013 г. Проверено 20 июня 2013 г.
- ^ Константин Александрович Муренин (21 мая 2010 г.). «11.1. Интерфейс из BIOS». Аппаратные датчики OpenBSD — мониторинг окружающей среды и управление вентиляторами ( дипломная работа по математике ). Университет Ватерлоо : UWSpace. hdl : 10012/5234 . Идентификатор документа: ab71498b6b1a60ff817b29d56997a418.
- ^ Константин Александрович Муренин (17 апреля 2007 г.). «2. Обзор оборудования». Универсальное взаимодействие с аппаратными мониторами микропроцессорной системы . Материалы Международной конференции IEEE по сетям, зондированию и управлению 2007 г., 15–17 апреля 2007 г. Лондон, Великобритания: IEEE . стр. 901–906. дои : 10.1109/ICNSC.2007.372901 . ISBN 978-1-4244-1076-7 . IEEE ICNSC 2007, стр. 901–906.
- ^ «aibs – ASUSTeK AI Booster ACPI ATK0110, датчик напряжения, температуры и вентилятора» . OpenBSD , DragonFly BSD , NetBSD и FreeBSD . 2010.
- ^ «acpi_thermal(4)» . www.freebsd.org . Проверено 24 февраля 2021 г.
- ^ « Декодирование RAM и ROM. Архивировано 6 апреля 2012 г. на Wayback Machine ». Умные вычисления . Июнь 1997. Том 8, выпуск 6.
- ^ « Обновление флэш-BIOS для Plug and Play. Архивировано 6 апреля 2012 г. на Wayback Machine ». Умные вычисления . Март 1996 г. Том 7, выпуск 3.
- ^ « Время проверить BIOS, архивировано 16 июля 2011 г. на Wayback Machine ». Умные вычисления . Апрель 1999 г. Том 7, выпуск 4.
- ^ «Архивная копия» . Архивировано из оригинала 18 августа 2021 г. Проверено 1 апреля 2021 г.
{{cite web}}
: CS1 maint: архивная копия в заголовке ( ссылка ) - ^ «Мгновенный рабочий стол Linux от SplashTop | Geek.com» . Архивировано из оригинала 7 сентября 2008 г.
- ^ Автор: Алекс Уотсон, возможно репост оригинального контента на custompc.com [неразборчиво]. «Жизнь и времена современных материнских плат» . 27 ноября 2007 г. Архивировано из оригинала 24 июля 2012 г. Проверено 2 февраля 2013 г.
- ^ Дэвид Хилбер-младший (август 2009 г.). «Соображения по проектированию встраиваемой системы с архитектурой Intel с нехваткой системной памяти» (PDF) . Интел . Архивировано (PDF) из оригинала 18 октября 2012 г. Проверено 2 февраля 2013 г.
- ^ «Типы БИОС» . rompacks.com . Проверено 20 сентября 2021 г.
- ^ Стиллер, Андреас (2001). «Процессор-Патчи» . c't (на немецком языке) (5). Heise : 240. Архивировано из оригинала 22 ноября 2015 г. Проверено 21 ноября 2015 г.
- ^ «Логотип награды BIOS» . 15 июня 2015 г. Архивировано из оригинала 21 декабря 2015 г. Проверено 6 декабря 2015 г.
- ^ Phoenix с нетерпением ждет клонирования IBM BIOS следующего поколения . Архивировано 22 января 2014 г. в Wayback Machine , InfoWorld , 9 марта 1987 г.
- ^ Стандарт IEEE для прошивки (конфигурация инициализации): основные требования и практики . 28 октября 1994 г. стр. 1–262. дои : 10.1109/IEESTD.1994.89427 . ISBN 978-0-7381-1194-0 .
{{cite book}}
:|journal=
игнорируется ( помогите ) - ^ «Ассоциация стандартов IEEE» . Ассоциация стандартов IEEE . Проверено 26 апреля 2023 г.
- ^ «Определение уровня аппаратной абстракции» . ПКМАГ . Проверено 11 июля 2022 г.
- ^ Новый вирус BIOS выдерживает очистку жесткого диска , 27 марта 2009 г. Маркус Ям. Tom's Hardware США
- ^ «Мультимедиа Black Hat 2006 — презентации, аудио- и видеоархивы» . www.blackhat.com . Проверено 21 апреля 2019 г.
- ^ Сакко, Анибал; Альфредо Ортега (23 марта 2009 г.). «Постоянное заражение BIOS» . Использование вещей . Архивировано из оригинала 4 августа 2009 г. Проверено 6 февраля 2010 г.
- ^ Фишер, Деннис. «Исследователи раскрывают устойчивые методы атаки на BIOS» . Пост с угрозами . Архивировано из оригинала 30 января 2010 г. Проверено 6 февраля 2010 г.
- ^ Джулиани, Марко (13 сентября 2011 г.). «Меброми: первый руткит BIOS в дикой природе» . блог . Архивировано из оригинала 23 сентября 2011 г. Проверено 19 сентября 2011 г.
- ^ «360 Releases о техническом анализе вируса BMW » Блог Архивировано из оригинала 25 сентября 2011 г. Проверено 19 сентября 2011 г.
- ^ Юань, Лян. «Троян.Меброми» . Реакция на угрозу . Архивировано из оригинала 23 сентября 2011 г. Проверено 19 сентября 2011 г.
- ^ Перейти обратно: а б «Как программа «60 минут» установила камеры в шпионское агентство?» . Новости CBS . 15 декабря 2013 г. Архивировано из оригинала 22 апреля 2014 г. Проверено 15 апреля 2014 г.
- ^ Спенсер Акерман в Вашингтоне (16 декабря 2013 г.). «АНБ продолжает программу «60 минут»: убедительные факты, лежащие в основе ошибочного отчета CBS» . theguardian.com . Архивировано из оригинала 25 января 2014 г. Проверено 27 января 2014 г.
- ^ Фридерсдорф, Конор (16 декабря 2013 г.). «Вопрос на 60 минут: почему Китай хочет разрушить мировую экономику?» . Атлантика . Проверено 26 марта 2019 г.
- ^ Поулсен, Кевин (16 декабря 2013 г.). «60 минут Puff Piece» утверждает, что АНБ спасло США от кибертерроризма» . Проводной . ISSN 1059-1028 . Проверено 26 марта 2019 г. - через www.wired.com.
- ^ Шарвуд, Саймон (16 декабря 2013 г.). «АНБ утверждает, что это «заговор BIOS с целью уничтожения ПК» » . Регистр . Проверено 26 марта 2019 г.
- ^ «Часто задаваемые вопросы по Windows и GPT» . microsoft.com . Майкрософт. Архивировано из оригинала 19 февраля 2011 г. Проверено 6 декабря 2014 г.
- ^ «Расширяемый интерфейс прошивки (EFI) и унифицированный EFI (UEFI)» . Интел . Архивировано из оригинала 5 января 2010 г. Проверено 6 декабря 2014 г.
- ^ «Характеристики Windows 11 и системные требования | Microsoft» . Майкрософт . Проверено 14 октября 2021 г.
Дальнейшее чтение
[ редактировать ]- Технический справочник по персональным компьютерам IBM (пересмотренная редакция). Корпорация IBM . Март 1983 года.
- Технический справочник по персональным компьютерам IBM AT . Справочная библиотека по аппаратному обеспечению персональных компьютеров IBM. Том. 0, 1, 2 (Пересмотренная ред.). Корпорация IBM . Март 1986 г. [1984-03]. 1502494, 6139362, 6183310, 6183312, 6183355, 6280070, 6280099.
- Phoenix Technologies, Ltd. (1989) [1987]. Системный BIOS для компьютеров IBM PC/XT/AT и совместимых устройств — Полное руководство по системному программному обеспечению на базе ПЗУ . Серия технических справочников Phoenix (1-е изд.). Addison Wesley Publishing Company, Inc. ISBN издательства 0-201-51806-6 .
- Phoenix Technologies, Ltd. (1989) [1987]. CBIOS для компьютеров IBM PS/2 и совместимых устройств — Полное руководство по системному программному обеспечению на базе ПЗУ для DOS . Серия технических справочников Phoenix (1-е изд.). Addison Wesley Publishing Company, Inc. ISBN издательства 0-201-51804-Х .
- Phoenix Technologies, Ltd. (1989) [1987]. ABIOS для компьютеров IBM PS/2 и совместимых устройств — Полное руководство по системному программному обеспечению на базе ПЗУ для OS/2 . Серия технических справочников Phoenix (1-е изд.). Addison Wesley Publishing Company, Inc. ISBN издательства 0-201-51805-8 .
- Phoenix Technologies, Ltd. (июнь 1991 г.). Системный BIOS для ПК IBM, совместимых устройств и компьютеров EISA — Полное руководство по системному программному обеспечению на основе ПЗУ . Серия технических справочников Phoenix (2-е изд.). Амстердам: Addison Wesley Publishing Company, Inc. ISBN 0-201-57760-7 .
- BIOS Disassembly Ninjutsu Uncovered, 1-е издание , свободно доступная книга в формате PDF [1]
- More Power To Firmware , бесплатная бонусная глава к «Внутренности Mac OS X: системный подход» . книге
Внешние ссылки
[ редактировать ]- «Спецификация загрузки BIOS 1.01» (PDF) . Phoenix.com . 11 января 1996 г. Архивировано из оригинала (PDF) 15 июля 2011 г.
- «Как работает БИОС» . Как все работает . 06 сентября 2000 г.
- «Реализация BIOS Plug and Play с использованием флэш-памяти загрузочного блока Intel» (PDF) . Интел . Февраль 1995 г. Архивировано из оригинала (PDF) 28 ноября 2007 г. Проверено 28 ноября 2007 г.
- «Список опций BIOS» . techarp.com . Архивировано из оригинала 27 января 2014 г.
- «Постоянное заражение BIOS» . Фрак . № 66. 01.06.2009. Архивировано из оригинала 30 апреля 2011 г. Проверено 30 апреля 2011 г.
- «Предотвращение сбоев BIOS с использованием флэш-памяти загрузочного блока Intel» (PDF) . Интел . Декабрь 1998 г. Архивировано из оригинала (PDF) 29 марта 2007 г. Проверено 29 марта 2007 г.