Uefi arm что это
UEFI (Unified Extensible Firmware Interface) — замена устаревшему BIOS. Эта спецификация была придумана Intel для Itanium, тогда она еще называлась EFI (Extensible Firmware Interface), а потом была портирована на x86, x64 и ARM. Она разительно отличается от BIOS как самой процедурой загрузки, так и способами взаимодействия с ОС. Если вы купили компьютер в 2010 году и позже, то, вероятнее всего, у вас UEFI.
Основные отличия UEFI от BIOS:
Как происходит загрузка в UEFI?
С GPT-раздела с идентификатором EF00 и файловой системой FAT32, по умолчанию грузится и запускается файл \efi\boot\boot[название архитектуры].efi, например \efi\boot\bootx64.efi
Т.е. чтобы, например, создать загрузочную флешку с Windows, достаточно просто разметить флешку в GPT, создать на ней FAT32-раздел и просто-напросто скопировать все файлы с ISO-образа. Boot-секторов больше нет, забудьте про них.
Загрузка в UEFI происходит гораздо быстрее, например, загрузка моего лаптопа с ArchLinux с нажатия кнопки питания до полностью работоспособного состояния составляет всего 30 секунд. Насколько я знаю, у Windows 8 тоже очень хорошие оптимизации скорости загрузки в UEFI-режиме.
Secure Boot
«Я слышал, что Microsoft реализовывает Secure Boot в Windows 8. Эта технология не позволяет неавторизированному коду выполняться, например, бутлоадерам, чтобы защитить пользователя от malware. И есть кампания от Free Software Foundation против Secure Boot, и многие люди были против него. Если я куплю компьютер с Windows 8, смогу ли я установить Linux или другую ОС? Или эта технология позволяет запускать только Windows?»
Начнем с того, что эту технологию придумали не в Microsoft, а она входит в спецификацию UEFI 2.2. Включенный Secure Boot не означает, что вы не сможете запустить ОС, отличную от Windows. На самом деле, сертифицированные для запуска Windows 8 компьютеры и лаптопы обязаны иметь возможность отключения Secure Boot и возможность управления ключами, так что беспокоится тут не о чем. Неотключаемый Secure Boot есть только на планшетах на ARM с предустановленной Windows!
Что дает Secure Boot? Он защищает от выполнения неподписанного кода не только на этапе загрузки, но и на этапе выполнения ОС, например, как в Windows, так и в Linux проверяются подписи драйверов/модулей ядра, таким образом, вредоносный код в режиме ядра выполнить будет нельзя. Но это справедливо только, если нет физического доступа к компьютеру, т.к., в большинстве случаев, при физическом доступе ключи можно заменить на свои.
В Secure Boot есть 2 режима: Setup и User. Первый режим служит для настройки, из него вы можете заменить PK (Platform Key, по умолчанию стоит от OEM), KEK (Key Exchange Keys), db (база разрешенных ключей) и dbx (база отозванных ключей). KEK может и не быть, и все может быть подписано PK, но так никто не делает, вроде как. PK — это главный ключ, которым подписан KEK, в свою очередь ключами из KEK (их может быть несколько) подписываются db и dbx. Чтобы можно было запустить какой-то подписанный .efi-файл из-под User-режима, он должен быть подписан ключом, который в db, и не в dbx.
Для Linux есть 2 пре-загрузчика, которые поддерживают Secure Boot: Shim и PRELoader. Они похожи, но есть небольшие нюансы.
В Shim есть 3 типа ключей: Secure Boot keys (те, которые в UEFI), Shim keys (которые можно сгенерировать самому и указать при компиляции), и MOKи (Machine Owner Key, хранятся в NVRAM). Shim не использует механизм загрузки через UEFI, поэтому загрузчик, который не поддерживает Shim и ничего не знает про MOK, не сможет выполнить код (таким образом, загрузчик gummiboot не будет работать). PRELoader, напротив, встраивает свои механизмы аутентификации в UEFI, и никаких проблем нет.
Shim зависит от MOK, т.е. бинарники должны быть изменены (подписаны) перед тем, как их выполнять. PRELoader же «запоминает» правильные бинарники, вы ему сообщаете, доверяете вы им, или нет.
Оба пре-загрузчика есть в скомпилированном виде с валидной подписью от Microsoft, поэтому менять UEFI-ключи не обязательно.
Secure Boot призван защитить от буткитов, от атак типа Evil Maid, и, по моему мнению, делает это эффективно.
Спасибо за внимание!
UEFI (Unified Extensible Firmware Interface) является связующей оболочкой между операционной системой и аппаратной частью (железом). В будущем планируется, что UEFI полностью вытеснит BIOS (Basic Input Output System) и займет его место. UEFI является относительно старой технологией, разработанной в 2005 (Unified EFI Forum) году. Однако, сие высказывание некорректно относительно данной ситуации, так как несмотря на то, что 8 лет довольно большой срок для IT-технологии и в иных сферах за эти годы успевали сменить сразу по нескольку технологий, UEFI изначально развивался довольно медленно и лишь в последние годы стал получать все большую известность. Ниже вы можете ознакомиться с графиком релизов UEFI.
Первоочередной целью при создании UEFI была разработка удобной и многогранной оболочки для 64-х битных систем с более развитым пользовательским интерфейсом и сетевым контролем.
И так, какими же преимуществами обладает UEFI?
Преимущества и просто интересные факты о UEFI
Мне кажется, что все выгоды и преимущества перехода с BIOS на UEFI откроются перед пользователями и разработчиками лишь при массовом внедрении оболочки и полным отказом от BIOS. Однако, уже сейчас можно перечислить несколько очевидных преимуществ UEFI:
1) В связи с веянием последних трендов, все больше ПК имеют 64-х битную ОС, что позволяет увеличить производительность.
2) Второй немаловажный пункт – это адресация памяти. Замечательная возможность использовать большее количество RAM-а и размера винчестера. Теоритически максимальный размер жесткого диска может достигать 8192 Exybyte-а, что составляет примерно 8.8 (о да! О_о) триллионов терабайт, что даже при нынешних объёмах трансфера информации является весьма впечатляющей цифрой, особенно если учесть, что размер архива всего интернета составляет 10 петабайт. Что же касается оперативной памяти – здесь так же наблюдаются радужные перспективы с возможностью адресации до 16 Exybyte-ов, что при нынешней ситуации на рынке (новые ПК как правило имеют от 8 до 16 гигабайт оперативной памяти) является бааальшушим заделом на будущее.
Ссылка на интересные факты связынае с наглядным примером того, много это или мало.
3) Более быстрая загрузка система, достигаемая за счёт параллельной инициализации отдельных компонентов системы.
4) Загрузка драйверов в UEFI и последующая передача оных в распоряжение ОС.
5) Одна из важнейших и наиболее критичных особенностей UEFI является Secure Boot Option, коя позволяет защитить Bootloader от исполнения вредоносных программ, что в свою очередь позволяет защитить ОС за её же пределами во время загрузки. Для этого используются «цифровые» подписи операционных систем.
UEFI Начало
Как показано на следующей картинке старт UEFI разбивается на несколько различных модулей и этапов, кои в свою очередь разделяются на дальнейшие подпункты.
Начинается все с Power On фазы (кто бы мог подумать) в которой исполняется Power On Self Test и проскакивает Security phase. После чего можно считать, что платформа инициализирована, при этом нельзя забывать и о фазе PEI (Pre-Инициализация EFI), а так же DXE (Driver Execution Environment) фазе, что позволяет системе добраться до пункта когда становиться доступна память, а так же начинается (Firmware) поиск Boot-устройства. В BDS (Boot Device Selection) фазе происходит поиск устройство с коего может быть осуществлен boot, при это может быть использовано стороннее устройство или UEFI-Shell. При старте системы происходит передача уже инициализированных и загруженных драйверов в распоряжение ОС, дабы сократить время загрузки оной.
И так это была вступительная часть рассказа о UEFI. В следующей главе будут рассмотрены отдельные фазы более детально: POWER ON, SECURITY (SEC), PRE-EFI Initialisation (PEI), DRIVER EXECUTION ENVIRONMENT и BOOT DEV SELECT (BDS)
Новые компьютеры используют прошивку UEFI вместо традиционного BIOS. Обе эти программы – примеры ПО низкого уровня, запускающегося при старте компьютера перед тем, как загрузится операционная система. UEFI – более новое решение, он поддерживает жёсткие диски большего объёма, быстрее грузится, более безопасен – и, что очень удобно, обладает графическим интерфейсом и поддерживает мышь.
Некоторые новые компьютеры, поставляемые с UEFI, по-прежнему называют его «BIOS», чтобы не запутать пользователя, привычного к традиционным PC BIOS. Но, даже встретив его упоминание, знайте, что ваш новый компьютер, скорее всего, будет оснащён UEFI, а не BIOS.
Почему BIOS устарел?
BIOS существует уже давно и эволюционировал мало. Даже у компьютеров с ОС MS-DOS, выпущенных в 1980-х, был BIOS.
Конечно, со временем BIOS всё-таки менялся и улучшался. Разрабатывались его расширения, в частности, ACPI, Advanced Configuration and Power Interface (усовершенствованный интерфейс управления конфигурацией и питанием). Это позволяло BIOS проще настраивать устройства и более продвинуто управлять питанием, например, уходить в спящий режим. Но BIOS развился вовсе не так сильно, как другие компьютерные технологии со времён MS-DOS.
У традиционного BIOS до сих пор есть серьёзные ограничения. Он может загружаться только с жёстких дисков объёмом не более 2,1 Тб. Сейчас уже повсеместно встречаются диски на 3 Тб, и с них компьютер с BIOS не загрузится. Это ограничение BIOS MBR.
BIOS должен работать в 16-битном режиме процессора и ему доступен всего 1 Мб памяти. У него проблемы с одновременной инициализацией нескольких устройств, что ведёт к замедлению процесса загрузки, во время которого инициализируются все аппаратные интерфейсы и устройства.
BIOS давно пора было заменить. Intel начала работу над Extensible Firmware Interface (EFI) ещё в 1998 году. Apple выбрала EFI, перейдя на архитектуру Intel на своих Маках в 2006-м, но другие производители не пошли за ней.
В 2007 Intel, AMD, Microsoft и производители PC договорились о новой спецификации Unified Extensible Firmware Interface (UEFI), унифицированный интерфейс расширяемой прошивки. Это индустриальный стандарт, обслуживаемый форумом UEFI и он зависит не только от Intel. Поддержка UEFI в ОС Windows появилась с выходом Windows Vista Service Pack 1 и Windows 7. Большая часть компьютеров, которые вы можете купить сегодня, используют UEFI вместо BIOS.
Как получить доступ к настройкам UEFI на современном ПК
Если вы обычный пользователь, перехода на компьютер с UEFI вы и не заметите. Загружаться и выключаться компьютер будет быстрее, а также вам будут доступны диски размером более 2,2 Тб.
А вот процедура доступа к настройкам будет немного отличаться. Для доступа к экрану настроек UEFI вам может потребоваться загрузочное меню Windows. Производители ПК не хотели замедлять быструю загрузку компьютера ожиданием нажатия клавиши. Но нам встречались и такие UEFI, в которых производители оставили возможность входа в настройки тем же способом, какой был в BIOS – по нажатию клавиши во время загрузки.
UEFI – это большое обновление, но произошло оно незаметно. Большинство пользователей ПК не заметят его, и им не нужно беспокоиться по поводу того, что их новый компьютер использует UEFI вместо обычного BIOS. ПК просто будут лучше работать и поддерживать больше современного аппаратного обеспечения и возможностей.
Более подробное объяснение отличий в загрузочном процессе UEFI можно почитать в статье Адама Уильямсона из Red Hat, и в официальном вопроснике UEFI FAQ.
C истема UEFI – это комплекс спецификаций, появившийся как «загрузочная инициатива Интел» (Intel Boot Initiative) в очень далеком 1998 году. Причиной рождения инициативы послужило то, что ограничения, обусловленные BIOS, стали ощутимо тормозить прогресс вычислительных систем на основе новейших в ту пору интеловских 64-х разрядных процессоров Itanium для серверов. Несколько позже эта же инициатива стала называться EFI, а в 2005 году корпорация «подарила» свою разработку специально созданному под нее консорциуму UEFI Forum, главными членами которого стали помимо Intel такие зубры IT-индустрии, как AMD, Apple, IBM, Microsoft и ряд других, и EFI превратился в UEFI .
UEFI (единый интерфейс EFI) — это стандартный интерфейс встроенного ПО для компьютеров, заменяющий BIOS. В создании этого стандарта участвовали более 140 технологических компаний, составляющих часть консорциума UEFI, включая Майкрософт. Стандарт был создан для улучшения взаимодействия программного обеспечения и устранения ограничений BIOS.
Полностью построенная на основе программного кода, UEFI действительно стала объединенной кросс-платформенной системой. Уже сегодня спецификации UEFI предусмотрены в работе почти любой комбинации чипов с 32- и 64-битной архитектурой, выпускаемых AMD, Intel и многочисленными лицензиатами ARM. Единственное, что требуется для обеспечения этой универсальности, это скомпилировать исходный код под требования каждой конкретной платформы.
Еще более усиливая сходство с ОС, спецификации UEFI включают в себя не только загрузочные, тестовые и рабочие сервисы, но также протоколы коммуникаций, драйверы устройств (UEFI изначально разрабатывалась для работы вне зависимости от операционных систем), функциональные расширения и даже собственную EFI-оболочку, из-под которой можно запускать собственные EFI-приложения. А уже поверх всего этого хозяйства расположен собственно загрузчик, отвечающий за запуск на компьютере основной операционной системы (или нескольких систем).
Хотя UEFI иногда называют псевдо-ОС, она, тем не менее, способна сама получать доступ ко всему аппаратному обеспечению компьютера. То есть уже на уровне UEFI вполне возможно, к примеру, выходить в Интернет или организовывать резервное копирование жестких дисков, причем делать это все в условиях полноценного графического интерфейса под привычным «мышиным» управлением.
Тот факт, что все эти расширенные загрузочные данные хранятся во вместительной флеш-памяти или на жестком диске, попутно означает, что там же имеется намного больше пространства для таких вещей, как языковая локализация системы, развитая система диагностики на этапе загрузки, полезные утилиты (типа архивации, восстановления после сбоя, сканирования на вирусное заражение) и так далее.
Некоторые из преимуществ UEFI:
1. Поддержка дисков объемом более 2,2 Тбайт.
UEFI использует таблицу разделов GPT (GUID Partition Table), которая использует глобальные уникальные идентификаторы адреса разделов и позволяет загрузку с жесткого диска такого размера, как 9,4 ZB (зетабайт). Терабайт составляет 1024 Гб, а зетабайт равен 1024x1024x1024 Гб. Что такое GPT? GPT — новый стандарт формата таблиц разделов на жестком диске (128 разделов). Он является частью интерфейса EFI. EFI использует GPT там, где BIOS использует таблицу разделов MBR. Поддержка современных драйверов устройств с 64-разрядным встроенным ПО, которые система может использовать для привлечения более 17,2 миллиарда гигабайт памяти во время запуска.
2. Также EFI позволяет больше вариантов загрузки, не предписывает особые файловые системы и имеет превосходные способности к загрузке сети.
3. Повышение безопасности при защите процессов, происходящих перед запуском или загрузкой, от атак bootkit. Что такое Secure Boot? Спецификация Secure Boot разработана Microsoft в рамках проекта UEFI и позволяет защитить загрузочную среду от вмешательства в загрузочные файлы путем контроля подписей загружаемых файлов на предмет их соответствия белому списку ключей, зашитых в uefi как доверенные. "Побочным эффектом" такой защиты от руткитов является невозможность установки ОС, отличной от Windows 8 (на данный момент только она поддерживает Secure Boot), а также исключает возможность запуска с старых mbr дисков и загрузочных CD-дисков/флешек.
4. Уменьшение времени загрузки или восстановления после гибернации.
С момента включения в сеть и до полной загрузки Windows пройдет примерно 30-60 секунд, или даже больше, а вот с UEFI загрузка происходит намного быстрее, сейчас уже достигнут рекорд — 2 секунды.
5. Встроенная BIOS. Материнским платам с UEFI, не нужно BIOS, потому что в ней есть своя встроенная BIOS, называется — модуль поддержки совместимости. Поэтому те программы, которым для работы нужен был BIOS, спокойно могут работать и на компьютерах с UEFI.
6. Простое управление.
В меню настроек все можно делать с помощью мышки, раньше это было недоступно, в БИОСе управление было возможно только с клавиатуры. Да и сама картинка, конечно же, отличается, что мы видим в БИОСе сейчас, черный экран и белые строчки. А тут, красивый графический uefi интерфейс с интуитивно понятным меню.
Система UEFI — гибко программируемый интерфейс. В отличие от загрузочного кода BIOS, который всегда жестко прошит в соответствующем чипе на системной плате, куда более обширные по размеру коды UEFI находятся в специальной директории /EFI/, место физического расположения которой может быть самым разнообразным — от микросхемы памяти на плате или раздела на жестком диске компьютера и до внешнего сетевого хранилища.
В результате столь гибкого подхода система UEFI становится чем-то вроде сильно облегченной, но вполне самостоятельной операционной системы. То есть, по сути дела, в компьютере сначала загружается система UEFI, под ее управлением выполняется произвольный набор нужных действий, а затем уже запускается загрузка собственно операционной системы (из этого, кстати, совершенно не следует, что процесс загрузки становится более длительным. Скорее даже наоборот, заранее гибко настроенная конфигурация системы способна грузиться ощутимо быстрее).
Если разобраться, то UEFI сама по себе является операционной системой, она чем-то похожа на DOS, потому что выполняет текстовые команды. Она может помочь разобраться в причинах отказа загрузки основной Операционной Системы, если такое произошло, но работать в ней могут только опытные пользователи.
В UEFI по желанию можно добавлять программы, дается возможность установки, но пока таких приложений очень мало. Все рассчитано на будущее, и будут это большей частью утилиты. В BIOS EFI есть поддержка и русского языка.
Q: Возможно ли установить Windows на <имя устройства>?
A:Возможно. Для этого необходимо собрать UEFI загрузчик(EfiDroid не подойдёт), а также потребуются драйвера под Ваш SoC, тачскрин, USB контроллер, камеры, аудиокодек и так далее. Список устройств, для которых соблюдены оба этих требования, находится ниже.
Q: Моего устройства нет в этом списке, но я хочу поставить на него Windows. Может всё таки как то можно?
A:Можно. Для этого нужно сделать всё перечисленное в этом посте.
Q: Возможно ли совершать звонки и отправлять СМС, используя Windows ARM?
A:Да. Но для этого необходим драйвер на радиомодуль. Также, начиная с билда 18363, Макрософт удалила из ОС стэк сотовой связи. Это значит что для использования звонков и СМС необходимо использовать сторонние приложения.
Q: Какие GL API поддерживает Windows ARM?
A:Драйвера для чипов Qualcomm(Adreno) официально поддерживают только DirectX и только для ARM и ARM64 приложений. Также существует программная прослойка OpenCL™ and OpenGL® Compatibility Pack, она позволяет использовать OpenGL 3.3, но для этого необходимо что бы устройство АППАРАТНО поддерживало DirectX 12(Не младше Adreno 530).
Q: Может ли Windows ARM запускать x86 приложения?
A:Да. Для этого рекомендуется использовать Windows 11.
Q: Есть ли поддержка WSA(Windows Subsystem for Android)?
A:Нет. В чипах Snapdragon, гипервизор задействован для других целей. Его можно от этих целей освободить, но это не единственная проблема. С недавних пор Windows не поддерживает Pluton в качестве средства виртуализации Hyper-V. Возможно что поддержка появится в будущем, но это крайне маловероятно.
Q: Как активировать Windows ARM?
A:При помощи ключа от обычной Windows, соответствующей редакции. Крайне не рекомендую использовать для этих целей активаторы по типу KMS, т.к. это может привести к окирпичиванию устройства(проверено на собственном опыте).
Q: Телефон не заряжается/заряжается медленно после установки Windows ARM. Что делать?
A:Проверьте, установлены ли драйвера на SoC. Также рекомендуется использовать для зарядки БП от Lumia 950 на 5V 3A. Даже с другими устройствами.
Что такое BIOS?
BIOS — это Basic Input-Output system, базовая система ввода-вывода. Это программа низкого уровня, хранящаяся на чипе материнской платы вашего компьютера. BIOS загружается при включении компьютера и отвечает за пробуждение его аппаратных компонентов, убеждается в том, что они правильно работают, а потом запускает программу-загрузчик, запускающую операционную систему Windows или любую другую, установленную у вас.
На экране настройки BIOS вы можете изменять множество параметров. Аппаратная конфигурация компьютера, системное время, порядок загрузки. Этот экран можно вызвать в начале загрузки компьютера по нажатию определённой клавиши – на разных компьютерах она разная, но часто используются клавиши Esc, F2, F10, Delete. Сохраняя настройку, вы сохраняете её в памяти материнской платы. При загрузке компьютера BIOS настроит его так, как указано в сохранённых настройках.
При загрузке компьютера по окончанию POST BIOS ищет Master Boot Record, или MBR — главную загрузочную запись. Она хранится на загрузочном устройстве и используется для запуска загрузчика ОС.
Вы также могли видеть аббревиатуру CMOS, что расшифровывается, как Complementary Metal-Oxide-Semiconductor — комплементарная структура металл-оксид-полупроводник. Она относится к памяти, в которой BIOS хранит различные настройки. Использование её устарело, поскольку такой метод уже заменили флэш-памятью (также её называют EEPROM).
Как UEFI заменяет и улучшает BIOS
UEFI заменяет традиционный BIOS на PC. На существующем PC никак нельзя поменять BIOS на UEFI. Нужно покупать аппаратное обеспечение, поддерживающее UEFI. Большинство версий UEFI поддерживают эмуляцию BIOS, чтобы вы могли установить и работать с устаревшей ОС, ожидающей наличия BIOS вместо UEFI – так что обратная совместимость у них есть.
Новый стандарт обходит ограничения BIOS. Прошивка UEFI может грузиться с дисков объёмом более 2,2 Тб – теоретический предел для них составляет 9,4 зеттабайт. Это примерно в три раза больше всех данных, содержащихся в сегодняшнем Интернете. UEFI поддерживает такие объёмы из-за использования разбивки на разделы GPT вместо MBR. Также у неё стандартизирован процесс загрузки, и она запускает исполняемые программы EFI вместо кода, расположенного в MBR.
UEFI может работать в 32-битном или 64-битном режимах и её адресное пространство больше, чем у BIOS – а значит, быстрее загрузка. Также это значит, что экраны настройки UEFI можно сделать красивее, чем у BIOS, включить туда графику и поддержку мыши. Но это не обязательно. Многие компьютеры по сию пору работают с UEFI с текстовым режимом, которые выглядят и работают так же, как старые экраны BIOS.
В UEFI встроено множество других функций. Она поддерживает безопасный запуск Secure Boot, в котором можно проверить, что загрузку ОС не изменила никакая вредоносная программа. Она может поддерживать работу по сети, что позволяет проводить удалённую настройку и отладку. В случае с традиционным BIOS для настройки компьютера необходимо было сидеть прямо перед ним.
И это не просто замена BIOS. UEFI – это небольшая операционная система, работающая над прошивкой PC, поэтому она способна на гораздо большее, чем BIOS. Её можно хранить в флэш-памяти на материнской плате или загружать с жёсткого диска или с сети.
У разных компьютеров бывает разный интерфейс и свойства UEFI. Всё зависит от производителя компьютера, но основные возможности одинаковы у всех.
Читайте также: