Care este afacerea cu UEFI?


Se pare că există două tabere, grupul mic de oameni care se ocupă de UEFI și toți ceilalți care nu observă sau îngrijesc atâta timp cât funcționează computerul. Deci, să vorbim despre ce este UEFI, cum a venit să fie, ceea ce este potrivit și de ce ar trebui să (sau nu ar trebui) să aibă grijă.

Ce este UEFI?

UEFI înseamnă interfață de firmware extensibilă unificată, o convenție deținută de o organizație cunoscută sub numele de Forumul EFI United. Intel a ieșit cu EFI (interfață de firmware extensibilă) și mai târziu a făcut specul public ca UEFI. Ca un spec, detaliile aplicației se schimbă între furnizori și producători, dar obiectivul este de a prezenta o structură convențională și ușor de înțeles a lui OS Bootloader. Acest lucru face mult mai simplu să scrieți un sistem de operare, deoarece nu mai trebuie să vă faceți griji cu privire la toată firma neplăcută de a începe de fapt chipset-ul.

Mai mulți IBV-uri (furnizori independenți ai BIOS) oferă implementările lor de UEFI că OEM-urile care produc plăci de bază pot permite licență și utilizare în produsele lor. Unele exemple ar fi ami, Phoenix și Insyde. Ați văzut probabil logo-ul lor sau doar textul numelui lor bliț pe ecran înainte ca sistemul de operare de alegere, cizme corect.

Să vorbim despre cum cizmele UEFI. În general, există câteva faze diferite. De obicei, spunem că există numeroase implementări și numeroase dintre ele fac lucruri din spec. Există trei faze generale: siguranța și securitatea (sec), inițializarea pre-EFI (PEI) și mediul de execuție a conducerii (DXE). Fiecare este un sistem de operare mini. Deoarece Intel este cel care a început EFI și mai târziu a transformat-o în UEFI, o mare parte a designului este dezvoltată în jurul modului în care procesoarele Intel pornesc în sus. Alte platforme ca brațul s-ar putea să se abțină de la a face mult în faza Sec sau Pei.

Procesul de pornire pentru procesoarele X86 este un pic ciudat. Acestea încep în modul real (deși cele mai multe procesoare în aceste zile sunt nereal tehnic), cu un spațiu de adresă de 20 de biți (1MB de memorie adresabilă) din motive de compatibilitate înapoi. Pe măsură ce procesorul continuă să boot, acesta trece la modul securizat și apoi în cele din urmă la modul lung. Într-un sistem multi-core, toate procesoarele curse pentru a obține o semafore sau citite eAX și unul este desemnat BSP (procesorul de bootstrap). Perdanții se opresc până când BSP le pornește printr-un IPI (întrerupere interprocesor). În mod obișnuit, există un chip de bord SPI cu firmware cartografiat în capătul regiunii fizice de memorie de 32 de biți. Motorul de gestionare a motorului Intel (ME) sau procesorul de securitate al platformei AMD (PSP) face cea mai mare parte a fazei SEC, cum ar fi spălarea cache-ului și începeți procesoarele.

Odată ce procesoarele sunt pornite, Pei a început oficial. Pe sistemele Intel, nu există nici un memoriu de sistem de sistem în majoritatea PI. Acest lucru se datorează faptului că memoria trebuie să fie pregătită și legăturile inițializate înainte ca procesorul să le poată folosi. Impulsul vreodată nemilos pentru o viteză mai mare și mult mai mare de la RAM implică faptul că RAM trebuie să fie testat, calibrat și configurat pe fiecare boot ca bastoane RAM diferite au alți parametri. Numeroase sisteme cache Acești parametri pentru perioade mai rapide de boot, dar de obicei trebuie să fie invalidate și recalificate pe măsură ce RAM se lipeste. PSP se ocupă de antrenamentul de memorie și ambalarea UEFI pe unele sisteme AMD înainte ca procesorul principal X86 să fie scos din resetat. Pentru sistemele Intel, ei folosesc un truc numit XIP (Execute în loc) care transformă diferitele cache-uri în memoria RAM pe termen scurt. Există doar un stack mic, o cantitate mică de spațiu de heap și nici o variabile statice pentru PEI. Numeroase platforme Intel Server se bazează pe controlerul de management al consiliului de administrație (BMC) pentru a instrui memoria, deoarece formarea unor cantități mari de memorie durează foarte mult timp.

După inițierea RAM și transferul conținutului cache-ului pe termen scurt, ne relocalizăm la DXE. Faza DXE oferă două tipuri de servicii: boot și runtime. Serviciile de execuție sunt menite să fie consumate de un sistem de operare, de servicii, cum ar fi variabilele non-volatile. Serviciile de boot sunt distruse odată ce ieșirea se numește (de obicei de către încărcătorul OS), dar sunt servicii cum ar fi intrările de la tastatură și driverele grafice. BDS (selecția dispozitivului de boot) rulează în DXE și este modul în care sistemul determină ce unitate la boot (hard disk, USB etc.).

Aceasta a fost o prezentare specială foarte densă și x86. Numeroase arhitecturi, cum ar fi brațul să evite UEFI pentru ceva mai mult ca Coreboot, Linuxboot sau LK, unde cizmează un mic kernel Linux pe care atunci Kexec se află într-un kernel mult mai mare. Cu toate acestea, numeroase platforme ARM pot, de asemenea, să influențeze UEFI. Numai timpul va spune în ce mod se mișcă industria.

Cum a venit să fie

În 2005, UEFI a înlocuit integral EFI (interfață de firmware extensibilă), Intel convențional a prezentat câțiva ani înainte. EFI a împrumutat numeroase lucruri din ferestrele acelei perioade, formate de imagine PECFF și UEFI, la rândul său, metode împrumutate de la EFI. Înainte de EFI, au existat BIOS vechi vechi (sistem de ieșire de bază de intrare). Denumirea provenită din sistemele CP / M din 1975. În acea perioadă, BIOS-ul a fost o modalitate de boot și de a oferi o interfață oarecum uniformă pentru aplicații bY Oferirea apelurilor de întrerupere a BIOS. Apelurile telefonice au permis un program să acceseze intrarea și ieșirile, cum ar fi porturile seriale, RTC și magistrala PCI. Phoenix și alții inversați inversarea interfeței proprii pe care IBM le-a produs pentru fabricarea mașinilor compatibile IBM, care au dus în cele din urmă la ceva aproape de un standard.

Este mai bine decât BIOS-ul?

Da și nu, în funcție de perspectiva ta. Numeroase furnizori de OS, cum ar fi UEFI, deoarece, de obicei, își fac viața mai simplă, deoarece serviciile furnizate facilitează o bootă de experiență omogenă. Comunitatea Linux, de obicei vorbind, este agnosticul cel mai bun și antagonist în cel mai rău față de UEFI. Interfața BIOS împinge 45 de ani de la momentul scrisului și este considerată moștenire în orice sens. Un alt punct din colțul UEFI este că facilitează alegerea diferitelor gadgeturi de boot și actualizarea firmware-ului de pe aparat. UEFI utilizează tabelul de partiții GUID (GPT) pe Master Boot Record (MBR) – considera un plus ca MBR este oarecum inflexibil. Numeroasele platforme expediate astăzi se bazează pe proiectul Open-source EDK2 de la Tianocore, o implementare a UEFI care suportă X86, ARM și RISCV.

Cea mai mare plângere cu UEFI este că este o cutie neagră închisă, cu acces neimaginat la computer și rămâne local după cizmele computerului. BIOS-ul este atractiv, deoarece interfața este cunoscută și de obicei nerezidentă. UEFI poate fi actualizat mai simplu, dar are și o nevoie mult mai importantă de actualizări. O actualizare UEFI poate să cadă în întregime sistemul. Nu va porni și din cauza siguranțelor suflate pe unitate, este practic imposibil fizic să o rezolvi, chiar și pentru producător. Cantități semnificative de testare intră în aceste actualizări, dar majoritatea ezită să împingă numeroase actualizări din cauza cantității de muncă necesare.

De ce ar trebui sau nu ar trebui să aveți grijă

La sfârșitul zilei, vă pasă dacă puteți utiliza computerul pentru lucrurile care sunt esențiale pentru dvs. Indiferent dacă redarea unui joc, scrierea unui e-mail sau a face un computer nou, nu contează atâta timp cât computerul face ceea ce doriți. Și bootarea este doar un pas uitat în a face acest lucru. Dacă vă pasă de înțelegerea fiecărei bucăți de coduri, aparatul se execută, trebuie să vă plimbați pentru o plimbare lungă. Există afaceri, cum ar fi Librem, mergând la lungimi lungi pentru a vă asigura că problemele dificile ca și memoria init rulează în bloburi non-proprietate. Încă mai puteți modifica UEFI, [Hales] fiind un exemplu extraordinar de eliminare a BIOS-ului unui laptop vechi școlar. Instrumente open source pentru inspectarea și înțelegerea a ceea ce se întâmplă sub capotă se îmbunătățește.

În cele din urmă, este la fel de mult ca și dumneavoastră dacă vă interesează procesul de încărcare al dispozitivului.

Leave a Reply

Your email address will not be published. Required fields are marked *