Унифициран разширяем интерфейс за фърмуер (UEFI): Разлика между версии

Изтрито е съдържание Добавено е съдържание
Редакция без резюме
м без копиран текст
Ред 61:
 
=== Приложения ===
Независимо от зареждането на операционната система, UEFI има способността да зарежда самостоятелни UEFI приложения, които могат да бъдат разработени и инсталирани независимо от производителя на системата. UEFI приложенията пребивават като файлове на ESP и може да се стартират директно от стартиращият мениджър на фърмуера, или чрез други приложения UEFI. Един клас от UEFI приложенията са зареждащите операционната система, като [[:en:REFInd|rEFInd]], [[:en:Gummiboot_(software)|Gummiboot]] и [[:en:Windows_Vista_startup_process|Windows Boot Manager]]; те стартират конкретна операционна система и евентуално предоставят потребителски интерфейс за избор на стариране друго приложение UEFI. Utilities, също като [[:en:Windows_Vista_startup_process|UEFI shell]], представляват UEFI приложения.
 
=== Протоколи ===
Ред 138:
 
На 5 април 2006 г. Apple за първи път пускат Boot Camp, който възпроизвежда [[Microsoft Windows|Windows]] драйвер диск и недеструктивен инструмент за разделяне с цел позволяването на инсталация на Windows XP или Vista без да е нужна преинсталация на Макинтоша.
 
По-късно е
издаден и ъпдейт, който добавя съвместимост на [[BIOS]] за неговото прилагане в
EFI. Следващите модели на Macintosh биват вече с нов фърмуер.
 
През 2005 г. повече от един милион Intel системи са
направени с имплементация на UEFI. През 2006 г. започва доставката на нови
телефони, монитори и сървърни продукти, използващи UEFI. Например, клавиатури, които са използвали
Intel 945 чипсет, започват да използват фърмуер-а на UEFI.
 
От 2005 г. насам, EFI също е приложена върху не само
компютърни архитектури, но и върху вградени системи и базирани на XScale
ядра.
 
EDK (EFI Kit Developer) включва NT32, който
позволява фърмуер-а и приложенията на EFI да работят в рамките на [[Microsoft Windows|Windows]], но
директния достъп до хардуера е забранен от EDK NT32. Това означава, че само
подмножество на EFI приложения и драйвери, могат да се изпълняват на EDK NT32.
 
През
2008 г., все повече x86-64 системи приемат UEFI. Докато много от тези системи
все още позволяват стартиране само ОС [[BIOS]] (базирани на Support модул(CSM)), други системи, от друга страна, започнаха да позволяват стартиране чрез UEFI
OSes. Примерно: [[IBM]] x3450 сървър, MSI дънни платки с ClickBIOS, всички HP
EliteBook [[Notebook]] и Tablet PCs, по-новите версии на [[Хюлет-Пакард|HP]] Compaq Notebook PCs
(e.g., 6730b, 6735b, etc.).
 
През 2009, [[IBM]] доставят System x машини (x3550 M2, x3650 M2, iDataPlex
dx360 M2) и BladeCenter HS22 със способност за UEFI. Dell от друга страна – PowerEdge T610,
R610, R710, M610 и M710 сървъри, също поддържащи UEFI.
 
През 2011 г. големи доставчици (като [[ASRock]], [[ASUS|Asus]], Gigabyte, и MSI ) стартираха производството на дънни платки, използващи Intel 6 – серия LGA 1155 чипсет и AMD AM3 + 9 Series чипсети с UEFI.
Line 173 ⟶ 144:
 
=== Oперационни системи ===
Операционната система, която може да бъде заредена от
(U)EFI се нарича (U)EFI – aware OS, определена от спецификациите
на (U)EFI. В този случай, терминът „booted“ означава
директно зареждане на системата с помощта на (U)EFI
OS.
 
Местоположението по подразбиране за зареждането на операционната система е
 
<code><EFI_SYSTEM_PARTITION>/BOOT/BOOT<MACHINE_TYPE_SHORT_NAME>.EFI</code>
 
където кратките имена на съответната машина могат да бъдат IA32, X64, IA64, ARM или AA64. Някои дистрибутори на операционни системи могат да имат свой собствен начин за стартиране на системата, както и друго местоположение за зареждането на самата операционната система.
 
* От началото на 2000 г., ядрото на Linux е било в състояние да използва EFI по време на зареждане. Пример за това е по-скорошната версия на EFI GRUB. Grub + Linux, могат да бъдат заредени чрез GUID, без да се налага използването на UEFI.
* [[Hewlett-Packard|HP-UX]] е използвал (U)EFI като стартиращ механизъм за IA-64 системи от 2002 година.
Line 218 ⟶ 177:
 
== Критика ==
Многобройни активисти на дигиталните права (digital rights activists) са протестирали, с течение на години, срещу UEFI. В това число, Роналд Г. Миних, съавтор на [[:en:Coreboot|Coreboot]], [[:en:Cory_Doctorow|Кори Докторол]], активист, който е разкритикувал EFI като опит да премахне възможността на потребителя напълно да контролира компютъра си. UEFI, например, не е успял да разреши дългогодишните проблеми на BIOS за нуждата от двата типа драйвери – единия за фърмуер и другия за операционната система.
 
Проект с отворен код TianoCore (Open source project TianoCore), също предоставя употребата на UEFI интерфейс. TianoCore не разполага със специализирани драйвери, които инициализират функциите на чипсета, който от друга страна е предоставен от Coreboot, от който TianoCore е една от многото платени опции. Развитието на [[:en:Coreboot|Coreboot]] изисква съдействие от страна на производителите на чипсети, необходимо за развитието на драйверите.
 
=== Защитено стартиране ===
През
2011 г., Microsoft обяви, че компютрите,
сертифицирани да стартират своята операционна система [[Windows 8]],
трябва да се предлагат с активирано защитено зареждане с
помощта на код за
сигурност за
Microsoft. След обявяването, компанията бе обвинена от
критици и застъпници
на безплатния софтуер (включително [[Фондация за свободен софтуер|Фондацията за свободен софтуер]]), че се
опитва да използва функцията
за защитеното зареждане на UEFI като прикритие за целта да възпрепятства инсталирането на алтернативни
операционни системи като Linux. Microsoft отрече, че изискването за защитено
зареждане е предназначено да служи като форма на [[:en:Vendor_lock-in|блокиране]], и изяснени изискванията си посочвайки,
че Intel-базирани системи, сертифицирани за Windows 8,
трябва да позволяват защитеното зареждане да въвежда персонализиран
режим или да бъде изключен, но не и върху системи използващи [[:en:ARM_architecture|ARM структура]].
 
Други
разработчици изразиха загриженост относно правните и практически въпроси за прилагането
на поддръжка за защитено зареждане върху Linux системи като цяло. Бившият
разработчик на [[Red Hat Linux|Red Hat]]
[[:en:Matthew_Garrett|Matthew Garrett]] отбелелязва, че условията на [[:en:GNU_General_Public_License#Version_3|GNU General Public Version License 3]], могат да
предотвратят използването на [[:en:GNU_GRUB|GRUB
буутлоудър]] без разработчика да разкрие кода за сигурност (по-късно [[Фондация за свободен софтуер|Фондацията за свободен софтуер]] изяснява
позицията си, гарантирайки, че отговорността да предоставят кодове за сигурност
е на производителя на хардуер) и, че би било трудно за напреднали
потребители да изграждане на поръчкови ядра, които могат да функционират с
включено защитено зареждане без да са регистрирани. Други разработчици
предполагат, че регистрирани продукти на Linux с друг код за сигурност могат да
бъдат предоставени, но отбелязват, че би било трудно да бъдат убедени
оригиналните прозиводители да предлагат своите компютри със задължителния код
за сигурност заедно с този на Microsoft. 
 
Няколко
основни Линукс дистрибуции са разработили различни реализации за защитено
зареждане. Matthew Garrett разработва
минимален буутлоудър известен като „подложка“, който е компилиран, регистриран
буутлоудър, който позволява на потребителя индивидуално да се доверява на предоставени
от дистрибутори кодове за сигурност. [[Ubuntu Linux|Ubuntu 12.10]] използва по-стара версия на „подложката“
преконфигурирана за използване със собствен ключ на [[:en:Canonical_(company)|Canonical]], който проверява само буутлоудъра и
позволява нерегистрирани ядра да бъдат зареждани; разработчиците смятат, че
практиката на регистриране само на буутлоудъра е по-възможно, тъй като доверено
ядро е по-ефективно при осигуряване на потребителското пространство, а не на състоянието преди
зареждането, за което защитеното зареждане е проектирано добавя защита. Това
също така позволява на потребителите да изградят свои собствени ядра и да използват
и други потребителски [[:en:Loadable_kernel_module|ядрени
модули]], без да е необходимо да преконфигурират системата.
Canonical също поддържат собствен код за сигурност, за да верифицира инсталации
на Ubuntu предварително инсталирани на сертифицирани от оригиналните
производители компютри, които работят на операционната система, а също така
планират да наложат изискване за защитено зареждане – изискващи едновременно кодове за сигурност наCanonical и Microsoft
(от съображения за съвместимост) да бъдат включени в техния
фърмуеър. [[Fedora]] също
използва „подложка“, но изисква и ядрото и неговите модули да бъдат верифицирани.
 
Спори се дали ядрото и неговите модули трябва да бъдат
верифицирани; докато спецификациите на UEFI не го изискват, Microsoft твърдят,
че техните договорни изисквания го изискват, и че си запазват правото да
отменят всички сертификати, използвани за верифициране на код, който може да се
използва, за да компрометира сигурността на системата. През февруари 2013
, друг Red Hat разработчик се опитва да предостави пач на Linux ядрото, което
би позволило да се направи съвместим с автентичния код на Microsoft с помощта
на главен [[:en:X.509|X.509]] ключ
вграден в [[:en:Portable_Executable|PE]] файлове,
сертифицирани от Microsoft. Предложението обаче бе критикувано от създателя на Linux
[[Линус Торвалдс]], който
обвини Red Hat в подпомагане контрола на Microsoft над инфраструктурата на
защитено зареждане.
 
Проект с отворен код TianoCore (Open source project TianoCore), също предоставя употребата на UEFI интерфейс. TianoCore не разполага със специализирани драйвери, които инициализират функциите на чипсета, който от друга страна е предоставен от Coreboot, от който TianoCore е една от многото платени опции. Развитието на Coreboot изисква съдействие от страна на производителите на чипсети, необходимо за развитието на драйверите.
На 26 март 2013 г., испанската група за безплатна разработка
на софтуер Hispalinux подава официално оплакване до [[Европейска комисия|Европейската комисия]] твърдейки, че сигурни
изискванията на Microsoft за защитено зареждане върху системи на оригинални
производители са „обструктивни“ и неконкурентни.
 
На [[конференцията Black Hat]] през август 2013 г., група от изследващи сигурността представят поредица от търговски разработки в конкретни реализации на UEFI, които могат да бъдат използвани в оптимизирането на защитеното зареждане.