Cum se configurează smartphone-uri și PC-uri. Portal informativ
  • Acasă
  • Sfat
  • Ce este firmware-ul uefi. Crearea de unități flash bootabile bazate pe sisteme Live

Ce este firmware-ul uefi. Crearea de unități flash bootabile bazate pe sisteme Live

UEFI - o interfață care trebuia să înlocuiască BIOS-ul

UEFI BIOS a făcut mult zgomot când a fost lansat, iar acum toate computerele și laptopurile cu plăci de bază noi (Asus, Gigabyte, MSI etc.) folosesc această interfață, care a înlocuit BIOS-ul anterior. Abrevierea care nu prea sună înseamnă Unified Extensible Firmware Interface (în rusă va fi „interfață firmware extensibilă”). Deci, ce este UEFI și de ce a deranjat atât de mulți utilizatori?

BIOS vs UEFI

BIOS este sistemul care este responsabil pentru toate operațiunile de intrare/ieșire pentru Windows. A fost dezvoltat în 1981, adică. există de 33 de ani. Prima versiune de BIOS care a fost folosită calculatoare IBM, firește, a fost foarte diferit de versiunea de astăzi. Acel BIOS a fost folosit doar ca drivere, de exemplu. a conectat sistemul de operare cu toate conectate dispozitiv periferic. Dar, în timp, computerul și toate perifericele sale s-au îmbunătățit treptat și BIOS-ul deja nu putea îndeplini sarcinile care i-au fost atribuite inițial. Așa au apărut driverele și diverse programe care au interacționat cu sistemul de operare. De-a lungul anilor, BIOS-ul s-a schimbat constant, încercând să se adapteze la noile tehnologii, iar la începutul anilor 90 putea deja să îndeplinească funcții precum setare automată carduri de expansiune, pornirea de pe o unitate DVD etc.

A noua optiune BIOS UEFI a început să fie dezvoltat acum 13 ani, în 2001. Dezvoltarea a fost realizată de Intel, care intenționa să folosească un astfel de BIOS doar pentru procesorul serverului Itanium. Cert este că nu Versiunea BIOS, și chiar îmbunătățirile aduse acestei interfețe nu au ajutat în această situație. Acesta este ceea ce a inspirat dezvoltarea UEFI BIOS. Inițial, această interfață se numea EFI, iar prima companie care a folosit-o a fost Apple. Apple Corporation Din 2006, a început să asambleze computere și laptopuri bazate pe procesoare Inter și BIOS EFI. Și cu un an înainte, litera „U” a fost adăugată la abrevierea EFI, sub care a fost ascuns cuvântul „Unificat”. Acest cuvânt înseamnă că mai multe companii dezvoltau simultan UEFI BIOS. Printre acestea se numără IBM, Dell, HP, Phoenix Inside și, firește, Microsoft, deoarece este principalul dezvoltator de sisteme de operare.

Scurtă recenzie video a UEFI BIOS

Modificări în UEFI

Deci, UEFI BIOS este o interfață între sistemul de operare și programele care controlează funcțiile hardware de nivel scăzut. Sarcinile sale principale sunt de a testa rapid toate echipamentele pentru funcționalitate, de a-l inițializa și de a transfera controlul către alt program care va începe să încarce sistemul de operare. În general, UEFI este doar o versiune îmbunătățită a BIOS-ului obișnuit.

UEFI BIOS este un fel de „strat” între sistemul de operare și rutinele de nivel scăzut pentru lucrul cu echipamente

Dacă BIOS este codul cipului CMOS care este neschimbat în conținutul său (firmware-ul BIOS este un alt subiect), atunci UEFI este o interfață extrem de personalizabilă, care se află deasupra tuturor componentelor hardware ale computerului. UEFI este uneori numit un „pseudo-sistem de operare”, dar cu toate acestea el însuși este capabil să acceseze tot hardware-ul computerului.

Aspectul celei mai recente versiuni BIOS (înainte de UEFI) este familiar tuturor ecran albastru cu litere albe pe Limba engleză(controlul a fost efectuat numai cu ajutorul tastaturii). Acum este deja nou înveliș grafic. Interfața grafică, care este instalată pe noile plăci de bază Asus și MSI, poate fi folosită și pentru a rula alte aplicații UEFI: configurare, diagnosticare etc. Pe plan extern această interfață arată foarte bine. Va fi mult mai ușor pentru utilizatorii obișnuiți să înțeleagă un astfel de BIOS; în plus, interfața UEFI acceptă controlul nu numai de la tastatură, ci și folosind mouse-ul. Există și suport pentru limba rusă, de exemplu, pe aceleași plăci de bază de la Asus. Apelând BIOS UEFI, puteți observa acum configurația computerului dvs. (procesor și RAM), data curentași timpul, temperatura de funcționare a dispozitivelor etc.

În plus, ca bonus la schema standard de partiționare a discului MBR, UEFI are suport pentru GBT (GUID Partition Table), care este liber de limitările inerente MBR. Mergi la Platforma BIOS UEFI a fost amânat mult timp, dar când au început să fie produse hard disk-uri de mare capacitate (mai mult de 2 TB), a devenit inevitabil. Chestia este că versiunea standard a BIOS-ului poate „vedea” doar 2,2 TB de spațiu pe disc. În același mod în care un sistem de operare pe 32 de biți poate „vedea” doar 3,25 GB de RAM. Și UEFI poate suporta acest moment hard disk-uri cu o capacitate de până la 9 miliarde TB (un număr destul de cosmic astăzi, dar cine știe, poate în 10-20 de ani acesta va fi deja un lucru obișnuit).

Principalele funcții care sunt disponibile în BIOS UEFI merită, de asemenea, remarcate:

  • testare RAM;
  • compatibilitate cu versiunea veche de BIOS;
  • încărcător universal;
  • copie de rezervă a datelor de pe hard disk (HDD Backup);
  • posibilitatea de a actualiza UEFI prin Internet (Actualizare live).

Beneficiile BIOS UEFI

Principalul avantaj al UEFI este confortul sporit

BIOS UEFI este un mecanism complet reproiectat care ia mult de la „părintele” său și este conceput pentru a conecta sistemul de operare și hardware-ul instalat pe computer. Foarte curând această nouă interfață va înlocui complet versiune veche BIOS.

Printre principalele avantaje tehnologie nouă poti nota:

  1. Interfață ușor de utilizat. UEFI are o interfață foarte simplă și intuitivă pe care aproape oricine o poate folosi cu suport pentru mouse. În plus, există suport pentru limba rusă (pe plăcile de bază Asus etc.).
  2. Suport GPT. BIOS nou Poate funcționa cu hard disk-uri care au un tabel de partiții GUID (GPT). Astfel de HDD-uri pot fi împărțite în 128 de partiții primare (pe discurile MBR ar putea fi create doar 4 partiții primare). În plus, hard disk-urile GUID Partition Table (GPT) funcționează cu adresare LBA și HDD-uri vechi- cu adresa CHS învechită.
  3. Suporta hard disk-uri mai mari de 2 TB. UEFI vă permite să utilizați oricare dintre cele existente în prezent, în timp ce vechea versiune de BIOS nu vede mai mult de 2,2 TB.
  4. Pornire rapidă a sistemului de operare. Sistemul de operare se încarcă mult mai repede. De exemplu, instalat pe disc GPT Windows 8 a pornit în 7-8 secunde. Această diferență în timpul de pornire a sistemului de operare se realizează datorită faptului că nu mai este necesară căutarea bootloader-ului pe toate dispozitivele: discul de pornire în UEFI este alocat atunci când sistemul de operare este instalat.
  5. Actualizare rapida. decât vechea versiune de BIOS.

Caracteristica BIOS UEFI

O caracteristică a interfeței UEFI care provoacă multe probleme utilizatorilor este incapacitatea de a instala Windows 7 ca sistem de operare. Adică, toate plăcile de bază noi (fie Asus, fie MSI) care au UEFI „permit” utilizatorilor să instaleze doar Windows 8. În plus, există un altul destul de interesant protocol descărcări « Încărcare sigură„, care provoacă și probleme. Cert este că acest protocol se bazează pe chei speciale care aparțin producătorilor de computere, laptopuri și alte echipamente. Și fiecare producător are propriile chei: Asus are una, iar Gigabyte are altele complet diferite. De aceea, dacă ai o nouă placă de bază de la Asus sau un laptop Asus cu UEFI BIOS, atunci nu vei putea instala niciun alt sistem de operare.

Deși există o setare cu care puteți instala în continuare, de exemplu, Windows 7. Pentru a face acest lucru, trebuie doar să dezactivați opțiunea „Secure Boot”. Dar o astfel de setare va duce la faptul că sistemul de operare va trebui să fie instalat disc MBR, dar este imposibil să evaluați toate beneficiile lucrului cu GPT. Dar este la latitudinea utilizatorului să decidă dacă are nevoie sau nu de această setare. Pe echipamentele noi de la Asus, Gigabyte, MSI, nu există altă modalitate de a face acest lucru: fie Windows 7 și un disc MBR, fie Windows 8 și un disc GPT.

În general, progresul nu stă pe loc; va trebui să te obișnuiești cu noul. În plus, Microsoft va înceta să mai accepte Windows 7 ceva timp mai târziu, astfel încât UEFI BIOS și Windows 8 vor deveni în curând destul de obișnuite.

BIOS este un termen binecunoscut printre proprietarii de computere care a fost folosit de mulți ani. În toamna lui 2017, Intel și-a anunțat planurile de a abandona complet BIOS-ul pe toate platformele sale până în 2020. În loc de BIOS va fi folosit acum numai UEFI, care poate duce pe mulți la o întrebare logică: ce este UEFI BIOS mai bun si care este diferenta intre ele?

Cipul BIOS pe o placă de bază Gigabyte.

UEFI și BIOS aparțin categoriei de așa-numitele software-uri „la nivel scăzut”, care pornesc chiar înainte ca computerul să înceapă să încarce sistemul de operare. UEFI este o soluție mai modernă și acceptă un număr mare de caracteristici convenabile care sunt utile pe computerele moderne. Se întâmplă adesea ca producătorii să apeleze UEFI pe computerele lor cu cuvântul tradițional „BIOS”, pentru a nu deruta utilizatorul. Totuși, există o mare diferență între UEFI și BIOS, iar computerele moderne sunt în mare parte echipate cu UEFI.

Ce este BIOS-ul

BIOS este prescurtarea pentru „ De bazăIntrare-AfaraSistem" sau " sistem de bază de intrare/ieșire". Trăiește pe un cip special în interiorul plăcii de bază (foto de mai sus) și nu depinde dacă este instalat în computer HDD. Când porniți computerul, primul lucru care se pornește este BIOS-ul. Acest sistem este responsabil pentru „trezirea” componentelor hardware ale computerului dvs., verificarea funcționării lor normale, activarea bootloader-ului și pornirea în continuare a sistemului de operare.

BIOS-ul vechi ca vremea.

Utilizatorul poate configura un număr mare de parametri diferiți în BIOS. Configurația componentelor, ora sistemului, ordinea de pornire și așa mai departe. Puteți intra în BIOS folosind o cheie specială când porniți computerul. Poate fi diferit pentru diferite computere. De exemplu, Esc, F2, F10 sau Delete. Producătorul însuși decide pe care să aleagă. După modificarea setărilor, toți parametrii sunt înscriși placa de baza in sine.

BIOS-ul este, de asemenea, responsabil pentru un proces numit POST – „ Putere-PeDe sine-Test sau " verificare la pornire". POST verifică adecvarea configurației computerului și starea de sănătate a componentelor hardware. Dacă ceva nu merge bine, pe ecran este afișată o eroare corespunzătoare sau computerul începe să emită un număr de anumite sunete (există și conceptul de coduri POST, iar unele plăci de bază au chiar instalat un afișaj corespunzător pentru a le afișa). Intensitatea acestor sunete depinde de tipul de eroare, iar pentru a le descifra, trebuie să consultați site-ul web al producătorului sau manualul de utilizare.

După finalizarea POST, BIOS-ul caută Master Boot Record (MBR) care este stocat pe mediul de stocare al computerului. Apoi bootloader-ul este inițializat și sistemul de operare pornește. BIOS-ul folosește adesea termenul CMOS, care înseamnă „ ComplementarMetal-OxidSemiconductor" sau " semiconductor auxiliar de oxid de metal". Această desemnare memorie specială, care este alimentat de o baterie încorporată în placa de bază. Memoria se păstrează în sine diverse setari BIOS și adesea pentru a reseta parametrii BIOS este recomandat să scoateți bateria de pe placa de bază. În computerele moderne, CMOS a fost înlocuit cu memoria flash (EEPROM).

De ce BIOS-ul este învechit?

BIOS-ul este foarte sistem vechi, care exista în 1980 (și a fost dezvoltat chiar mai devreme), la momentul lansării MS-DOS. Desigur, cu Ora BIOS dezvoltat și îmbunătățit, dar conceptul și principiile de funcționare de bază au rămas aceleași. Dezvoltarea BIOS-ului este practic zero în comparație cu dezvoltarea computerelor și a tehnologiei în general.

BIOS-ul tradițional are multe limitări serioase. De exemplu, poate porni sistemul numai de la o partiție de cel mult 2,1 TB (maximum 4 partiții) sau mai puțin. În realitățile moderne, utilizatorii cumpără unități foarte încăpătoare, al căror volum depășește adesea 4 și chiar 8 TB. BIOS-ul nu va putea funcționa cu astfel de medii. Acest lucru se datorează modului în care funcționează MBR (înregistrarea de pornire principală folosește elemente pe 32 de biți). În plus, BIOS-ul funcționează în modul pe 16 biți (cum a fost dezvoltat în anii 70) și are doar 1 MB de spațiu adresabil pentru funcționare. BIOS-ul are, de asemenea, probleme la inițializarea unui număr mare de componente simultan, ceea ce duce la o pornire lentă a computerului.

BIOS-ul are nevoie de înlocuire pentru o perioadă lungă de timp. Intel a început să dezvolte EFI (Extensible Firmware Interface) încă din 1998, iar Apple a trecut la EFI în 2006, când a avut loc tranziția la arhitectura Intel. În 2007, Intel, AMD, Microsoft și diverși producători de computere au aprobat specificația UEFI - " Interfață Firmware Extensibilă Unificată" sau " Interfață Firmware Extensibilă Unificată„. Windows a câștigat suport UEFI în Windows Vista SP1 și Windows 7. Astăzi, aproape toate computerele folosesc UEFI în loc de BIOS.

De ce UEFI este mai bun decât BIOS

UEFI este instalat în loc de BIOS pe diferite PC-uri pe care le puteți găsi în magazinele de electronice. Trebuie remarcat imediat că utilizatorul nu poate trece de la BIOS la UEFI pe hardware-ul existent. Pentru a face acest lucru, trebuie să achiziționați hardware nou care acceptă UEFI. Marea majoritate a calculatoarelor UEFI includ emulare BIOS (denumită adesea Legacy BIOS) pentru a permite utilizatorului să instaleze și să pornească un sistem de operare mai vechi care necesită BIOS-ul pentru a rula. Cu alte cuvinte, UEFI este compatibil cu invers.

O interfață UEFI mult mai modernă și mai ușor de utilizat.

Noul standard a scăpat de restricțiile neplăcute ale BIOS-ului. Un computer cu UEFI poate porni de pe unități mai mari de 2,2 TB. Teoretic, capacitatea maximă de stocare pentru UEFI este de 9,4 Tb (9,4 trilioane de gigaocteți). Asta e mult. Ideea este că UEFI utilizează schema GPT cu elemente pe 64 de biți.

UEFI rulează în moduri pe 32 și 64 de biți și are, de asemenea, mai multă memorie pentru a lucra. Acest lucru, la rândul său, se traduce într-o încărcare mai rapidă a procesorului și ușurință în utilizare. Sistemele UEFI au adesea interfețe frumoase cu suport pentru introducerea mouse-ului (în captura de ecran de mai sus). Există, de asemenea, o serie de alte avantaje. De exemplu, UEFI acceptă Secure Boot. Aceasta este o procedură specială care verifică sistemul de operare care este încărcat și se asigură că niciun software rău intenționat sau terță parte nu va interfera în timpul încărcării acestuia. UEFI are și suport pentru diverse funcții de rețea, ceea ce este util la rezolvare probleme tehnice cu un calculator. Într-un BIOS tradițional, utilizatorul trebuie să aibă acces fizic la computer, în timp ce în UEFI există posibilitatea de acces la distanță pentru configurare.

În general, UEFI este un sistem de operare atât de mic. Poate fi stocat pe memoria flash a plăcii de bază sau poate fi încărcat de pe hard disk/ unitate de rețea. Diferitele computere cu diferite UEFI au interfețe și capabilități la fel de diferite. Totul depinde de preferințele producătorului computerului dvs.

UEFI a fost o actualizare mare pentru calculatoare moderne, dar marea majoritate a utilizatorilor este puțin probabil să observe vreunul diferenta semnificativa. Și mulți oameni nu sunt deloc interesați de această întrebare. Totuși, trebuie să înțelegem că apariția UEFI în locul BIOS-ului a devenit o schimbare evolutivă extrem de pozitivă în lumea computerelor moderne, chiar dacă toate farmecele și inovațiile sale rămân ascunse adânc în placa de bază a computerului. Acum industria este încă într-o stare de tranziție de la BIOS la UEFI, așa că toate deliciile noului standard vor fi dezvăluite în viitorul apropiat. Pentru a accelera acest proces, Intel a decis să abandoneze complet BIOS-ul până în 2020, iar acesta este un lucru bun.

Majoritatea utilizatorilor și-au actualizat computerele: au achiziționat altele noi unități de sistem, plăci de bază sau laptopuri în ultimii patru ani.

Lucrul remarcabil la noile mașini este că sistem învechit I/O nu mai este folosit, locul lui a fost luat de firmware îmbunătățit numit UEFI.

Are un număr mare de avantaje față de BIOS, pe care le vom lua în considerare astăzi.

Să-l privim mai detaliat: vom afla ce este și de ce utilizatorilor nu le place atât de mult.

Evoluția software-ului de sistem

De mai bine de două decenii, BIOS-ul a fost folosit ca software de nivel scăzut folosit la pornirea unui computer pentru a-și testa hardware-ul și a transfera controlul hardware-ului pe cel principal, care selectează și lansează bootloader-ul sistemului de operare dorit.

Cu ajutorul acestuia, utilizatorii pot gestiona un număr mare de parametri ai componentelor hardware.

CMOSelement electronic cu alimentare independentă sub formă de baterie, unde este stocată întreaga configurație curentă a computerului.

BIOS-ul a apărut la sfârșitul anilor 80. Da, a fost îmbunătățit și actualizat în mod regulat, modificat pentru a satisface nevoile utilizatorilor și dezvoltatorilor, oferindu-le posibilitatea de a controla modurile de funcționare a echipamentelor și alimentarea cu energie, dar totul se termină. Mai mult, sistemul de intrare/ieșire este componenta care a suferit cele mai puține modificări în aproape trei decenii în domeniul tehnologiei informației.

BIOS-ul are multe dezavantaje:

  • nu acceptă pornirea de pe hard disk-uri mai mari de 2 TB- ai cumpărat hard disk nou pe 3 sau 4 TB, dar nu veți putea instala un sistem de operare pe acesta, asta limitare tehnologică master boot record (nimeni în anii 80 nu credea că HDD-urile ar putea avea o dimensiune atât de incredibilă);
  • BIOS-ul funcționează în modul pe 16 biți(în ciuda faptului că practic totul procesoare moderne sunt de 64 și 32 de biți) folosind doar 1024 KB de memorie;
  • procesul de inițializare simultană a mai multor dispozitive este acceptat, dar este foarte nedepanat și problematic, ceea ce reduce viteza de pornire a computerului (fiecare componenta hardware iar interfața este inițializată separat);
  • BIOS-ul este un paradis pentru pirați– nu are niciun mecanism de protecție, ceea ce vă permite să încărcați oricare OSși drivere, inclusiv cele cu cod modificat și nesemnate (fără licență).

Prima versiune a UEFI a fost dezvoltată de Intel pentru Itanium, dar ulterior a fost portată pe computerul IBM.

Acesta este un sistem de operare independent cu o interfață grafică, format din multe module și având acces nelimitat la resursele componentelor hardware.

Caracteristici ale noului EFI cu GUI:

  • codul său este scris în întregime în , ceea ce vă permite să creșteți performanța în timpul pornirii computerului prin valorificarea capacităților procesoarelor centrale pe 64 de biți;
  • spațiul de adrese al sistemului de operare este suficient pentru a suporta 8 * 10 18 octeți de spațiu pe disc (această rezervă va fi suficientă pentru câteva decenii), în ciuda faptului că întregul volum de informații digitale este în prezent cu aproape trei ordine de mărime mai mic;
  • Adresarea RAM - calculele teoretice arată că UEFI vă va permite să instalați până la 16 exaocteți de RAM (cu 9 ordine de mărime mai mult decât în ​​PC-urile moderne puternice);
  • încărcarea accelerată a sistemului de operare se realizează datorită inițializării paralele a componentelor hardware și încărcării driverelor;
  • driverele sunt încărcate în RAM înainte de pornirea sistemului de operare și nu depind de platformă;
  • în loc de vechea schemă de partiționare, se folosește GPT progresiv, dar pentru a-l folosi va trebui;
  • Carcasa grafică convenabilă și atractivă acceptă controlul mouse-ului;
  • există utilitare încorporate pentru diagnosticare, modificări de configurare și actualizări de firmware ale componentelor hardware;
  • suport pentru macrocomenzi în format .nsh;
  • arhitectură modulară - vă permite să vă încărcați propriile drivere sau descărcate de pe Internet;
  • Una dintre cele mai semnificative și importante schimbări (în special pentru Microsoft) pe care UEFI le-a adus este prezența . Este conceput pentru a proteja Bootloader-ul de executarea codului rău intenționat, pentru a proteja sistemul de operare de viruși chiar înainte de a fi lansat prin utilizarea semnăturilor digitale.

DESPRE ultima functie Să vorbim mai detaliat.

Încărcare sigură

Numele tehnologiei se traduce prin „ încărcare sigură" și este un protocol care face parte din specificația grafică EFI.

Fig. 4 - Verificarea modului de operare Secure Boot prin linia de comandă în Windows 10

Specificație UEFI(Unified Extensible Firmware Interface, Unified Extensible Firmware Interface sau Extensible Firmware Interface), cunoscută anterior ca Extensible Firmware Interface (EFI), definește interfața dintre sistemul de operare și microcodul(ele) care controlează hardware-ul. Cu alte cuvinte, UEFI este o interfață care se află „pe deasupra” componentelor hardware ale computerului, care, la rândul lor, funcționează pe propriul firmware (microcod).

În titlu în sine Definiția UEFI„Interfață extensibilă” înseamnă că este un sistem modular care poate fi ușor extins și actualizat funcțional.

Pentru mai multa intelegere, UEFIÎn comparație cu BIOS, acesta este, în linii mari, un nou tip sau următoarea generație de firmware și nu se mai limitează doar la computerele personale x86 (PC-uri IBM), ci se pretinde și a fi un standard pentru toate platformele. Cu toate acestea, spre deosebire de BIOS, UEFI se bazează pe o topologie de cod fundamental nouă numită „pe bază de driver”.

  • Scopul principal al EFI este de a înlocui tehnologia BIOS îmbătrânită (pierderea relevanței) și limitările asociate acesteia.
  • Scopul principal al dezvoltării UEFI este de a standardiza interacțiunea sistemului de operare cu firmware-ul platformei în timpul procesului de pornire. În BIOS-ul clasic, întreruperile software și porturile I/O erau mecanismul principal de interacțiune cu hardware-ul în timpul fazei de pornire, dar sistemele moderne sunt capabile să ofere operațiuni I/O mai eficiente între hardware și software.
  • Sarcina principală a EFI este să inițialeze corect hardware-ul și să transfere controlul la încărcătorul sistemului de operare. În acest sens, sarcina nu este foarte diferită de sarcina unui BIOS tradițional, dar algoritmii sunt fundamental diferiți.

UEFI poate fi numit în siguranță un sistem de operare miniatural independent, care este o interfață între sistemul de operare principal al utilizatorului care rulează pe computer și microcodul hardware.

Să facem acum o scurtă excursie în istoria computerelor personale pentru a înțelege motivele care au condus la încercările de a înlocui BIOS-ul standard cu ceva fundamental nou.

BIOS vechi bun

Principii de bază ale funcționării BIOS ( sistem de bază input-output) pentru computerele personale au fost definite la sfârșitul anilor 70 ai secolului trecut. Pe o perioadă destul de lungă de timp care a trecut de atunci, industria calculatoarelor s-a dezvoltat intens, ceea ce a dus la faptul că în anumite etape Capabilitati BIOS nu a fost suficient, deoarece dispozitivele produse de producători aveau la bord noi tehnologii, adesea incompatibile cu versiunile actuale BIOS. Pentru a evita astfel de probleme, dezvoltatorii au trebuit uneori să modifice semnificativ codul BIOS, dar o serie de restricții au rămas neschimbate până în prezent. Și, dacă inițial arhitectura BIOS a fost destul de simplă, atunci cu timpul a devenit mai complexă, adaptându-se la tot mai multe tehnologii noi, prin urmare, la un moment dat, a început să semene cu o grămadă de diferite tipuri de cod învechit și care interacționează prost. Limitările care mai pot fi găsite în codul BIOS astăzi sunt explicate prin necesitatea de a menține compatibilitatea cu funcții de bază, necesar pentru funcționarea vechiului software. Toate acestea au dus la faptul că BIOS-ul a devenit în esență cea mai învechită componentă a PC-urilor moderne. Momentan moment BIOS putin indeplineste cerintele cele mai noi echipamenteși are următoarele dezavantaje:

  1. cod pe 16 biți, modul real. BIOS-ul este scris în limbaj de asamblare și funcționează pe cod pe 16 biți în modul real al procesorului, cu limitările sale inerente, dintre care cea mai semnificativă este limitarea spațiului de adrese de memorie de 1 Megaoctet.
  2. Lipsa accesului la hardware pe 64 de biți. BIOS-ul nu este capabil să interacționeze direct cu hardware-ul pe 64 de biți care domină în prezent piața.
  3. Lipsa unui standard uniform. Nu există o specificație unică pentru BIOS - fiecare producător oferă propriile variații de implementare.
  4. Complexitatea dezvoltării. Problema este că pentru aproape fiecare model nou de placă de bază, producătorul dezvoltă propria versiune BIOS, care implementează unic caracteristici tehnice a acestui dispozitiv: interacțiunea cu module de chipset, echipamente periferice etc. Dezvoltarea BIOS-ului poate fi împărțită în două etape. În prima etapă, este creat versiunea de bază microprogram care implementează acele funcții care nu depind de specificul echipamentului. Dezvoltatorii unui astfel de cod sunt bine cunoscuți, acestea sunt companii precum American Megatrends (AMIBIOS), Phoenix Technologies (+ legendarul Award Software (AwardBIOS) achiziționat de acesta) și altele. În a doua etapă, programatorii de la producătorul plăcii de bază sunt implicați în dezvoltarea BIOS-ului. Aici ansamblul de bază este modificat pentru a se potrivi cu specificul fiecărui model de placă specific, sunt luate în considerare caracteristicile acestuia. După ce placa de bază intră pe piață, lucrările la firmware continuă, se lansează în mod regulat actualizări care remediază erorile, adaugă suport pentru hardware nou (de exemplu, procesoare) și uneori chiar se extind funcţionalitate firmware.

Toate acestea, precum și unele altele, deficiențele modelului tradițional BIOS au dus la faptul că o coaliție de producători de hardware și software a început să lucreze la crearea specificației UEFI. Începând, conform propriilor mele observații, în jurul anului 2010, specificația UEFI a început să fie introdusă masiv în toate plăcile de bază nou lansate de la producători de top, așa că în acest moment este aproape imposibil să găsești un nou computer cu un BIOS tradițional. Cu toate acestea, nu ar trebui să fiți prea supărați de acest lucru, deoarece mulți producători mențin compatibilitatea cu funcționalitatea BIOS-ului tradițional de pe plăcile lor de bază. De exemplu, suportul pentru modul de pornire tradițional folosind MBR este un punct foarte important. În acest scop, a fost dezvoltat un modul pentru modul de emulare UEFI BIOS, care se numește Compatibility Support Module (CSM). Adevărat, cred că în timp, din ce în ce mai puțini producători vor suporta acest mod în firmware-ul lor.

Beneficiile UEFI

Aici aș dori să definesc avantajele interfeței UEFI:

  1. Suport pentru medii de stocare mari (discuri). A sustine discuri mari UEFI este obligat să respecte un nou standard de tabel de partiții numit GPT (GUID Partition Table). Metoda tradițională de pornire a BIOS a folosit sectorul de pornire Master Boot Record (MBR), care conținea un tabel de partiții care descria amplasarea partițiilor de disc. Intrările din tabelul de partiții din MBR au un dezavantaj semnificativ: numărul primului sector de la începutul partiției în format LBA (offset 08h de la începutul intrării partiției) are o lățime de numai 4 octeți (32 de biți), respectiv , doar 4 miliarde de sectoare pot fi abordate. Și aceasta, cu dimensiunea sectorului „clasic” de 512 octeți, este doar ~ 2 terabytes spațiu pe disc. UEFI, folosind GPT, face posibilă adresarea discurilor de până la 18 exaocteți.
  2. Suport direct pentru sisteme de fișiere și tabele de partiții. UEFI are module pentru suportarea sistemelor de fișiere și a tabelelor de partiții, adică poate funcționa atât cu tabelele de partiții, cât și cu sistemele de fișiere direct. Specificația implică suport pentru tabelul de partiții GPT, sistemele de fișiere FAT12, FAT16, FAT32 pe hard disk și sistemul de fișiere ISO9660 pe unitățile CD/DVD. Acest lucru ne scutește de a trebui să scriem cod bootstrap(similar cu MBR), care va încărca bootloadere din diferite etape de-a lungul lanțului.
  3. Fără alte restricții MBR tradiționale. De exemplu, nu mai trebuie să stoarceți codul de bootstrap într-un sector mic de 512 de octeți. Vă puteți concentra pe scrierea unui singur modul de încărcare care va combina toate etapele necesare.
  4. Drivere hardware independente de platformă. UEFI are acces la hardware-ul computerului prin drivere independente de platformă. Producătorul dispozitivului trebuie să scrie o singură versiune a driverului pentru toate platformele (x86, ARM, Itanium, Alpha), iar acest lucru simplifică foarte mult dezvoltarea și accelerează procesul de identificare a erorilor. Specificația UEFI descrie interacțiunea driverelor UEFI cu sistemul de operare, astfel, în cazul în care sistemul de operare nu are un driver, de exemplu, o placă video, dar în UEFI este prezent, încărcat și funcțional, atunci sistemul de operare are capacitatea de a scoate date către monitor prin interfețe standard UEFI.
  5. Suport de stivă protocoale TCP: IPv4/IPv6. Vă permite să utilizați capabilități bogate de rețea direct din interfața UEFI. Acum puteți dezvolta diverse descărcări folosind protocoalele http/ftp; o descărcare vine imediat în minte care indică adresa URL în care se află un modul EFI obișnuit sau o imagine ISO cu drepturi depline. A devenit posibil să ocoliți ceea ce a devenit deja singura opțiune posibilă, încărcarea prin rețea folosind PXE/TFTP. Unele, în special implementările avansate, pot implementa suport pentru PXE peste IPv6.
  6. Suport pentru modelul tradițional BIOS. UEFI nu necesită un BIOS clasic, dar mulți producători încorporează codul de emulare BIOS pentru a suporta sisteme de operare mai vechi. Acest modul se numește Compatibility Support Module (CSM). CSM include un modul de 16 biți (CSM16) implementat de producătorul BIOS și un strat care leagă CSM16 de instrumentație (interfață și hardware). Compatibilitatea presupune suport pentru bootarea prin MBR și suport la nivel de cod pentru întreruperi software (int 10h - serviciu video, int 13h - serviciu disc, int 15h - funcții de service, int 16h - serviciu tastatură, int 18h - serviciu ROM-BASIC, int 19h - serviciu de încărcare bootstrap). Prin urmare, acele sisteme de operare și software care aveau nevoie de vechiul BIOS pentru a funcționa ca aerul pot funcționa cu ușurință pe mașini cu UEFI.
  7. Interfață UEFI intuitivă. Așa-numita „ușurință de control”. Acesta este un punct destul de controversat; este imposibil să îl clasificați fără echivoc drept plus sau minus. Se presupune că gestionarea BIOS-ului nu a fost intuitivă, prezentând o interfață text ascetică, slab documentată, pe care doar un utilizator priceput la computer o putea înțelege. În schimb, multe shell-uri UEFI acceptă GUI, un manipulator de mouse, care pur și simplu nu sunt implementate în majoritatea BIOS-urilor. Cu toate acestea, dacă memoria îmi servește corect, în anii 90 am observat încercări de implementare a suportului mouse-ului în BIOS de la (cred) Phoenix. Interfața în sine poate fi grafică, în opinia unora - mai prietenoasă și intuitivă pentru majoritatea, dar poate fi și tradițională, adică similară unui text clasic, totul depinde de preferințele dezvoltatorului și de poziționare. a echipamentului. Este posibil să accepte mai multe limbi.
  8. Viteza UEFI. Codul UEFI este declarat că rulează mai rapid decât codul BIOS-ul tradițional (deși scris în C), datorită faptului că este scris în întregime „de la zero”, fără a fi nevoie să „trageți” în spatele dvs. un tren de cod învechit pentru a suporta diverse hardware non-standard și diverse anacronisme logice.
  9. Viteza de încărcare a sistemului de operare. Se pretinde că pornirea cu UEFI este semnificativ mai rapidă. Acest lucru se realizează prin paralelizarea inițializării dispozitivelor, spre deosebire de BIOS-ul, care a inițializat echipamentul în mod secvențial, precum și prin reducerea timpului de pornire din cauza absenței necesității de a căuta bootloader-ul prin enumerarea tuturor dispozitivelor (bootloader-ul este specificat în UEFI și sunat direct). Înclin să cred asta, deoarece nu pot confirma sau infirma momentan. Totuși, dacă măsori cât timp durează vechiul meu aparat pe un Celeron 450/GA-G31M-ES2L cu un SSD din momentul în care este pornit până când apare fereastra de autorizare pentru Windows XP optimizat, va fi doar 23 secunde. Acest lucru probabil nu va fi suficient pentru anumite categorii de dispozitive.
  10. UEFI este un mini OS. Puteți, desigur, să numiți UEFI un sistem de operare în miniatură, iar acest lucru, în parte, va fi corect, dar mai corect ar fi să îl considerați o platformă virtuală care oferă interfețe echipamentelor. Puteți lucra doar în consolă sau puteți scrie o interfață grafică completă. UEFI, dacă există module cu funcționalitatea necesară, poate, de exemplu, ajuta la înțelegerea problemelor de încărcare a sistemului de operare principal sau poate efectua alte funcții de serviciu.
  11. Module software suplimentare. Imediat înainte de a încărca sistemul de operare de pe mediul UEFI, vă permite să lansați propriile module și drivere UEFI în scopuri generale: pentru lucrul cu rețeaua, disc (arhivare/backup/antivirus), configurarea parametrilor, testarea echipamentelor. Evident, odată cu popularizarea standardului, lista aplicațiilor UEFI se va extinde doar. În zilele noastre, puteți chiar să scrieți un joc cu drepturi depline, să vă dezvoltați propria consolă pentru nevoile de service sub forma unui modul UEFI separat (exemplu: shell.efi), un browser de internet, să puteți lucra cu date media (vizionarea de filme, ascultarea muzicii). ) și organizați copii de siguranță ale discului.
  12. UEFI conține un manager de descărcare încorporat. Adică, implementează propriul încărcător de cod al sistemului de operare, care este foarte funcțional și poate acționa ca un analog al încărcărilor multiple ale mai multor sisteme de operare familiare nouă din trecutul nu atât de îndepărtat.
  13. Dimensiunea blocului I/O.În UEFI, la citire, se folosește o dimensiune specială a blocului EFI I/O, care permite citirea a 1 MB de date (în BIOS limita este de 64 KB).
  14. Siguranță. Se presupune că UEFI este protejat de codul rău intenționat în timpul fazei de pornire. Se presupune că codul rău intenționat nu se poate încărca înainte de pornirea sistemului de operare, preluând astfel controlul. Acest lucru se realizează atât prin semnarea totul în firmware-ul în sine, cât și printr-o procedură de pornire securizată numită „Secure Boot”.
  15. Funcționalitate ușor de scalat. Firmware-ul UEFI poate fi extins cu ușurință - trebuie doar să introduceți o unitate acceptată (de exemplu, o unitate flash USB). După aceasta, puteți conecta drivere suplimentare și aplicații UEFI de pe un dispozitiv extern. Dacă vă gândiți bine, acest lucru deschide oportunități mari de extindere a funcționalității care nu ar putea fi obținute folosind un BIOS tradițional, deoarece era limitat doar de codul conectat în ROM. În UEFI, puteți „strecura” driverul unei noi piese hardware direct în stadiul de operare UEFI, adică înainte ca sistemul de operare să înceapă să se încarce și să obțineți acces la funcționalitatea acestui dispozitiv.
  16. Codul UEFI funcționează în modul 32/64 de biți. Cu toate... avantajele care decurg. Pentru a fi complet sincer, UEFI încă folosește modul real la început pentru a efectua unele sarcini de inițializare a platformei, dar intră foarte repede în modul protejat/lung.
  17. Suport pentru mijloace alternative de introducere. UEFI oferă suport pentru medii de intrare alternative, cum ar fi tastaturi virtuale și ecrane tactile. Acest lucru este destul de relevant în era noastră a diverselor gadgeturi mobile.

Dezavantajele UEFI

Și acum aș dori să subliniez dezavantajele tehnologiei UEFI:

  1. Creșterea complexității arhitecturii. Toate avantajele EFI nu sunt atât de semnificative în comparație cu principalul său dezavantaj - complicația structurii codului. O creștere semnificativă a volumului de cod și complicația sa logică nu contribuie în niciun fel la ușurarea dezvoltării, dimpotrivă. Dar înainte și în paralel cu UEFI, au existat implementări deschise ca alternativă la modelul BIOS învechit, de exemplu OpenBIOS, care au fost respinse.
  2. Încărcare sigură. Aici, dezvoltatorii de sisteme de operare au rezolvat mai multe probleme deodată: parțial problema pirateriei, eliminarea ocolirii activării prin introducerea activatorilor în etapele de pornire, problema codului rău intenționat (virușii) din etapa de pornire și problema sistemelor de operare învechite. care rămân populare, pe care utilizatorii nu vor să-l părăsească :) De fapt, s-a dovedit că în unele dispozitive în special inteligente, datorită prezenței opțiunii „Secure Boot” care nu poate fi dezactivată, este adesea imposibil să instalați orice sistem de operare. altele decât sistemele Windows versiunea 8+, deoarece doar acestea din urmă au încărcătoare de boot certificate în acest moment. De acord, pare un mod destul de stângaci de a trata utilizatorii și concurenții zgârciți, deși Microsoft însuși neagă cu tărie o astfel de situație. Într-un cuvânt, tehnologia poate provoca multe neplăceri, dar cel puțin majoritatea vânzătorilor au această opțiune (deocamdată) dezactivată în setări.
  3. Incapacitatea de a instala sisteme de operare mai vechi (în unele cazuri). Nu este posibil să instalați sisteme mai vechi fără Modul de compatibilitate (CSM).
  4. Abatere de la standard. Fiecare producător de componente hardware modifică UEFI la propria discreție, creând astfel dificultăți suplimentare pentru utilizator, în mod esențial întorcându-ne în haosul BIOS-ului? De exemplu, pe diferite dispozitive, managerul de boot poate fi implementat diferit și, în același timp, are abateri destul de semnificative de la recomandările specificației UEFI. În practică, uneori am întâlnit UEFI-uri cu erori care ignorau parametrii listei de pornire a NVRAM și încărcau pur și simplu codul din \EFI\Microsoft\Boot\bootmgfw.efi sau EFI/BOOT/bootx64.efi . Sau managerul de pornire în unele implementări poate conține o listă combinată de dispozitive MBR și GPT, în timp ce în altele există liste de pornire diferite, ceea ce introduce o oarecare confuzie.
  5. Implementarea instrumentelor de control al conținutului. Standardul UEFI prevede prezența anumitor drivere care vor intercepta apelurile către sistemul de operare, astfel încât să poată fi implementat DRM (Digital Restrictions Management, mijloace tehnice de protecție a drepturilor de autor). Esența algoritmului este următoarea: unei persoane pentru care totul funcționează i se oferă, pe cheltuiala sa, să instaleze un astfel de software sau echipament astfel încât unele dintre funcțiile din sistemele sale de lucru pentru reproducerea conținutului digital (calculatoare, playere multimedia etc.) .) nu mai funcționează în mod obișnuit. Există temeri rezonabile că crearea UEFI este o modalitate voalată de a introduce funcții nedorite pentru utilizatorul final într-un computer.
  6. Posibilitatea introducerii modulelor nedorite. Este imposibil să garantezi că sistemul de operare are control 100% asupra computerului dacă pornește folosind UEFI!

Algoritm de operare UEFI

În timpul dezvoltării UEFI, dezvoltatorul, de la bun început, a stabilit limite stricte pentru fiecare proces implicat în execuție. Primele trei faze (SEC, PEI, DXE) pregătesc platforma pentru bootloader-ul OS, a patra fază (BDS) încarcă direct bootloader-ul OS. Să încercăm să analizăm algoritmul de operare UEFI și să aruncăm o privire mai atentă asupra tuturor fazelor sale.

  • faza SEC. (Siguranta de securitate). Faza de securitate. Totul trebuie semnat și verificat altfel nu va rula!
    • Stergerea memoriei cache a procesorului.
    • Rularea procedurii principale de inițializare în ROM.
    • Trecerea la modul protejat de funcționare a procesorului.
    • MTRR-urile (Registrele de interval de tip de memorie) pentru BSP sunt inițializate.
    • Rulați corecții de microcod pentru toate procesoarele instalate.
    • Noțiuni introductive cu BSP/AP. BSP = Board Support Package. AP = Procesor de aplicații. Fiecare nucleu poate fi reprezentat ca un BSP + AP. IIPI (Init Inter-processor Interrupt) este trimis la toate AP-urile, apoi SIPI (Start-up Inter-processor Interrupt).
    • Transfer de date și control în faza PEI.
  • faza PEI. (Pre-EFI Initialization, Pre-EFI Initialization). Pregătiți platforma (memorie și dispozitive descoperite) pentru procedura principală de inițializare a sistemului în faza DXE.
    • Transferarea datelor din ROM în cache.
    • Inițializarea CRTM (Core Rădăcină pentruÎncrederea în măsurare). Acesta este un set de instrucțiuni care este executat de platformă în timpul operațiunilor RTM.
    • Managerul PEI se încarcă. Dispeceratul încarcă o serie de module (PEIM) care variază în funcție de platformă. Aceste module completează sarcinile PEI rămase. Etapa se termină când toate modulele sunt încărcate.
    • PEIM: Modulele de inițializare a procesorului sunt încărcate și lansate. (exemplu: modulul cache al procesorului, modulul de selecție a frecvenței procesorului). Procesoarele sunt inițializate.
    • PEIM: Interfețele încorporate în platformă sunt inițializate (SMBus). MCH (Memory Controller Hub), ICH (I/O Controller Hub) sunt inițializate.
    • PEIM: inițializare memorie. Inițializarea memoriei principale și transferul datelor din cache în aceasta.
    • Se verifică modul S3. Nu - transferul controlului în faza DXE. Da - recuperare stare initiala procesor și toate dispozitivele și trecerea la sistemul de operare.
  • faza DXE. (Mediu de execuție a driverului, mediu de încărcare a driverului). Încărcarea componentelor în această fază se bazează pe resurse care au fost inițializate în faza PEI. Faza finală de inițializare pentru toate dispozitivele. Pornirea serviciilor UEFI: Servicii de pornire, Servicii de rulare și Servicii DXE.
    • Nucleul DXE este încărcat. Este creată infrastructura DXE: sunt create structurile de date necesare și o bază de date cu handle. Include interfețe DXE de bază. Lansează o serie de servicii: Servicii de pornire, Servicii de rulare, Servicii DXE.
    • Lansarea DXE Manager. Folosind structura Hand-off Block (lista HOB) transferată din PEI, determină Volumul Firmware disponibil (FV, o bază de date structurată de module executabile DXE: drivere și aplicații) și caută drivere în acestea, le lansează, observând dependențe. În acest moment, componentele rămase sunt activate, mai multe în același timp. Managerul încarcă toate driverele disponibile de pe toate mediile disponibile.
    • Se încarcă driverul SMM Init. Inițiază o subfază. SMM ( Managementul sistemului mod) este unul dintre modurile de execuție a codului privilegiate ale procesorului x86, în care procesorul comută la un spațiu de adrese independent, salvează contextul sarcinii curente, apoi execută codul necesar, apoi revine la modul principal. De ce avem nevoie de SMM? Dar pentru că în acest mod puteți face orice doriți cu sistemul, indiferent de sistemul de operare. Codul SMM poate fi executat după ce faza DXE s-a încheiat.
    • Începe UEFI Boot Administrator. Acest lucru se întâmplă după ce toți șoferii au pornit. Controlul este transferat în faza BDS.
  • faza BDS. (Selectare dispozitiv de pornire). Implementează politica de încărcare a platformei. Sarcina principală este să conectați dispozitivele necesare pentru pornire, să selectați (manual sau automat) dispozitivul de pornire și să porniți de pe acesta. Adesea, efectuează o căutare recursivă prin toate FV-urile disponibile și încearcă să găsească conținut disponibil pentru descărcare.
    • Dispozitivele de consolă sunt inițializate, descrise de variabilele de mediu ConOut (ConsoleOutHandle), ConIn (ConsoleInHandle), StdErr (StandardErrorHandle).
    • Driverele de dispozitiv UEFI listate în variabila de mediu DriverOrder (conținând opțiunile Driver#### în ordinea de pornire) sunt încărcate.
    • Aplicația UEFI este încărcată de pe dispozitiv cizme####. Listele de dispozitive sunt conținute în variabila de mediu BootOrder în ordinea de pornire.
    • Dacă nu am reușit să facem oricare dintre cele de mai sus, atunci sunați managerul DXE pentru a verifica dacă au fost furnizate dependențele driverelor suplimentare de la ultima dată când a fost apelat managerul. După care controlul revine din nou la faza BDS.

Algoritmul de funcționare UEFI Boot Manager

Concept Boot UEFI diferă semnificativ de cel similar din BIOS. Dacă vă amintiți BIOS-ul, codul de bootstrap int 19h (bootstrap loader) era responsabil pentru încărcarea acolo, a cărui sarcină era doar să încărcați înregistrarea principală de boot (MBR) de pe dispozitivul de pornire în memorie și să transfere controlul către acesta. În UEFI, totul este ceva mai interesant; conține propriul încărcător de pornire încorporat, care se numește UEFI Boot Manager (UEFI Boot Manager sau pur și simplu Boot Manager), care are o funcționalitate mult mai bogată.

UEFI Boot Manager este un modul UEFI generic standard.

Boot Manager implementează o gamă destul de largă de funcții, care includ încărcarea imaginilor UEFI, cum ar fi: încărcătoare de sistem de operare UEFI de primă etapă, drivere UEFI, aplicații UEFI. Pornirea se poate face de pe orice imagine UEFI aflată pe orice sistem de fișiere acceptat de UEFI situat pe orice mediu de stocare fizic acceptat de platformă. UEFI Boot Manager are propria sa configurație, ai cărei parametri sunt localizați sub forma unui număr de variabile într-o NVRAM comună (RAM non-volatile).

EFI NVRAM este o zonă de memorie partajată concepută pentru a stoca parametrii de configurare UEFI, disponibilă pentru utilizare de către dezvoltatorii de firmware, producătorii de hardware, dezvoltatorii de sisteme de operare și utilizatorii.

Parametrii UEFI sunt stocați în NVRAM ca variabile, care sunt reprezentați în mod clasic de perechea „nume parametru” = „valoare”. Aceste variabile conțin un număr mare de parametri care se referă la diferite părți funcționale ale UEFI, adică, pe lângă parametrii UEFI Boot Manager, NVRAM stochează mulți alți parametri UEFI.Totuși, în contextul acestui capitol ne interesează doar variabile legate de UEFI Boot Manager Aceasta este în primul rând variabila BootOrder, care indică variabilele descriptor de pornire numite Boot#### Fiecare element Boot#### este un pointer către un dispozitiv fizic și (opțional) poate chiar descrie un fișier reprezentând o imagine UEFI care ar trebui din asta dispozitiv fizic sarcină.

Toate dispozitive de boot sunt descrise ca o cale completă, adică conțin un nume care poate fi citit fișier de boot, astfel încât acestea să poată fi adăugate la meniul de pornire.

Cam așa îmi imaginez algoritmul pentru enumerarea media în timpul funcționării UEFI:

După cum putem vedea, UEFI Boot Manager analizează BootOrder , adică încarcă calea dispozitivului pentru fiecare element Boot#### în ordinea specificată în variabila BootOrder și încearcă să pornească de pe dispozitivul specificat. Dacă apare o eroare, managerul de pornire accesează elementul următor. În plus, este generată o așa-numită listă de descărcare. Această listă este relevantă pentru interfața de setări UEFI și arată ca meniul de pornire standard familiar ( Meniul de pornire). Lista de pornire UEFI este generată pe baza variabilei BootOrder și este utilizată pentru a permite utilizatorului să facă modificări în ordinea și configurația dispozitivelor de pornire.
Cum se formează BootOrder în sine? Și este foarte simplu, de exemplu, în timpul instalării sistemului de operare Windows, instalatorul creează o partiție ESP (dacă nu există) pe discul de instalare, formatează această partiție într-un fișier Sistemul FAT, apoi plasează încărcătorul de pornire (pentru Windows 7+ acesta este fișierul bootmgfw.efi ) și alte fișiere de-a lungul căii \EFI\Microsoft\Boot\ . Odată ce instalarea sistemului de operare este finalizată, Instalator Windows creează o variabilă în EFI NVRAM numită Boot#### (unde #### este un număr hexazecimal) care face referire la managerul de boot Windows numit bootmgfw.efi . Apoi, setează variabila BootOrder?

Cerințe pentru mediile de pornire UEFI

Specificația UEFI, printre altele, descrie anumite cerințe pentru regulile de plasare a partițiilor și încărcătoarelor de încărcare pe medii. Și pentru diferite clase de dispozitive, așa cum vom vedea mai târziu, acestea diferă semnificativ.

Cerințe pentru hard disk

Fiecare încărcați greu Discul trebuie să conțină o partiție de sistem EFI (ESP) specială. Partiția ESP trebuie să adere la ierarhia (structura) directorului predefinită de standard: directorul /EFI trebuie să fie situat la rădăcina partiției ESP. Dosarul /EFI, la rândul său, ar trebui să conțină subdirectoare ale furnizorilor de sisteme de operare, producătorilor de hardware, instrumente generale și drivere:

\EFI\<директория вендора ОС 1> <файл-загрузчик-ОС1>.efi\<директория вендора ОС 2> <файл-загрузчик-ОС2>.efi. . . \<директория вендора ОС N> <файл-загрузчик-ОСN>.efi\<директория производителя оборудования (OEM)> .efi\<директория BIOS вендора> <приложение-BIOS-вендора>.efi\<директория вендора стороннего ПО> <стороннее-приложение>.efi \BOOT BOOT(tip_arhitectură).efi

\<директория вендора ОС 1>

<файл-загрузчик-ОС1>.efi

\<директория вендора ОС 2>

Registrul subdirectoarelor.

Furnizorii ale căror directoare nu sunt descrise în subdirectorul furnizorului și care nu au propriile subdirectoare în folderul /EFI își plasează adesea bootloader-ul ca „bootloader implicit”. De exemplu, pentru sistemele x64 de-a lungul căii: /EFI/Boot/bootx64.efi.

Fișierul bootloader este o aplicație tipică UEFI, are formatul PE32+ și conține cod pentru etapa inițială de încărcare a sistemului de operare, adică începe procesul de pornire a sistemului de operare. Scopul său este de a pregăti structurile de date, de a încărca nucleul OS în memorie și de a transfera controlul către acesta.
Specificația descrie subdirectorul /EFI/Boot. Acest subdirector este folosit ca locație „implicit”, adică într-o situație în care, din anumite motive, un bootloader este pierdut (neconfigurat) în NVRAM. Pentru un astfel de caz, acest director conține așa-numitul „default bootloader”, care are un nume standardizat BOOT (architecture_type).efi

Unele implementări UEFI mai vechi au fost defectate, pur și simplu au ignorat lista de pornire din NVRAM și au încărcat direct modulele sau /EFI/BOOT/bootx64.efi. Alte opțiuni UEFI, nu mai puțin „directe”, nu au acceptat meniul de pornire și au încărcat întotdeauna /EFI/Boot/bootx64.efi sau /EFI/Microsoft/Boot/bootmgfw.efiîn funcție de preferințele tale misterioase.

Pornirea în modul Legacy

UEFI nu rulează niciun cod din MBR-ul clasic, indiferent dacă sectorul este prezent sau nu pe media instalată pe sistem. Excepție fac versiunile UEFI care implementează suport pentru „modul de compatibilitate”. Ca rezultat, pentru încărcarea tradițională (moștenită) a sistemelor de operare compatibile cu standardul de markup MBR, UEFI oferă module speciale, care poate fi (la discreția vânzătorului) inclusă în firmware. Puteți afla dacă firmware-ul UEFI specific acceptă „modul de compatibilitate” căutând în interfața UEFI parametri precum Legacy, Legacy CSM, Launch CSM, CSM Boot, CSM OS, Launch CSM sau CSM Support. De remarcat că în marea majoritate a firmware-ului este prezent acest mod, ceea ce simplifică foarte mult viața utilizatorilor care și-au cumpărat laptopuri sau plăci de bază noi, dar nu și-au schimbat obiceiurile în utilizarea sistemelor de operare „vechi” de la MS :)
Este logic să presupunem că, dacă există un modul CSM, codul firmware la pornirea în modul tradițional ar trebui să fie cât mai aproape posibil de caracteristicile funcționale similare ale BIOS-ului tradițional, emulând pur și simplu tehnologii cheie. Să aruncăm o privire la ceea ce face Modulul de suport pentru compatibilitate UEFI (CSM) când pornește în modul vechi.
Pentru moment, voi oferi aici doar un algoritm abstract de încărcare condiționată în modul Legacy/Compatibility Support Module (CSM):

  1. Este necesară pornirea în modul vechi? Dacă nu, atunci mergem la lanțul obișnuit UEFI Boot.
  2. Încărcați modulul Legacy Driver.
  3. Încărcați modulul Legacy BIOS.
  4. Este necesar suportul pentru funcțiile BIOS video tradiționale (implementarea funcțiilor de întrerupere int 10h)? Da - încărcăm.
  5. Este necesar suportul pentru alte extensii BIOS tradiționale (int 13h..)? Da - încărcăm.
  6. Încărcați un sistem de operare tradițional (vechi)? Nu - trecem la boot-ul normal UEFI.
  7. Formăm structuri SMBIOS.
  8. Formăm structuri Legacy Device.
  9. Formăm structura de întrerupere int 15h, structura API BBS (BIOS Boot Specification).
  10. Generam ACPI RSD PTR.
  11. Încărcați un cod SMM compatibil.
  12. Încărcăm codul din MBR și îi transferăm controlul.

Multiboot în UEFI

De la bun început distribuția de masă computere personale, din când în când a apărut sarcina de a implementa mai multe sisteme de operare pe un singur PC, care ar putea găzdui unul sau mai multe medii fizice. Nu cu mult timp în urmă, situația a fost schimbată semnificativ prin descoperirea tehnologiei de virtualizare, dar aceasta nu a eliminat complet problema. În sensul său clasic, în ceea ce privește stațiile care pornesc folosind metoda tradițională PC/AT BIOS folosind marcarea clasică MBR, multiboot era un cod terță parte în principal. sectorul de boot(MBR), care încarcă așa-numitul manager de boot (multi-booter), care stochează setările pentru fiecare sistem de operare instalat pe computer și oferă un meniu pentru selectarea modului de pornire a unui anumit sistem de operare. Dacă vorbim despre timpul nostru, adică despre multibooting în raport cu mediile care au fost deja rupte folosind Markup GPT, atunci multe s-au schimbat acum. După cum am observat deja, UEFI poate lucra direct cu discuri GPT, astfel încât sarcina de a instala mai multe sisteme de operare este mult simplificată. Acum toate funcțiile multibooter-ului sunt preluate de managerul de boot UEFI încorporat, ale cărui principii de funcționare le-am descris mai sus. Programul de instalare a sistemului de operare trebuie doar să facă ceea ce face deja foarte bine: plasați încărcătorul de pornire pe o partiție ESP specială în ierarhia directorului „sa”, după care acest încărcător devine „vizibil” în setările UEFI. Pe lângă programul de instalare a sistemului de operare, acum utilizatorul însuși, folosind setările (interfață grafică/text UEFI), poate adăuga manual un bootloader situat pe orice conectare și vizibil pentru sistem medii fizice. Toate acestea adăugate căi diferiteÎncărcătoarele de boot devin disponibile prin intermediul meniului de pornire, pe care utilizatorul îl poate configura/ apela direct în timpul funcționării UEFI, adică în stadiul inițial al pornirii computerului. Cu alte cuvinte, pornirea multiplă în UEFI este pur și simplu o chestiune de rulare a aplicațiilor UEFI (încărcătoare specifice sistemului de operare) situate pe medii montate pe o partiție ESP specială într-o ierarhie de directoare înrădăcinată la /EFI.

UEFI este un înlocuitor complet pentru cipul BIOS învechit. Scopul principal al UEFI nu mult diferit din BIOS standard - initializare echipamentul existent după pornirea computerului și a sistemului de operare.

Când porniți computerul, UEFI scanează hardware-ul computerului pentru orice defecțiuni sau probleme. Odată ce scanarea este completă, UEFI scanează hard disk-urile și unitățile externe pentru partiții GPT bootabile și lansează bootloader prioritar.

Utilizatorul nu va vedea nimic special. Pe plăcile de bază Asus, întregul proces va arăta cam așa:

Beneficiile UEFI

Ce diferențeȘi avantajeînainte de bios-ul standard?

  • Mai mult prietenos interfață cu utilizatorul, cu suport pentru un mouse de calculator;
  • Regulat Suport GPT partiționarea hard disk-urilor, astfel încât computerul să funcționeze normal cu toate unitățile, indiferent de dimensiunea unității. BIOS-ul standard funcționează foarte prost cu unități mai mari de 1 terabyte;
  • Disponibilitatea funcției " încărcare rapidă a”, care vă permite să accelerați lansarea sistemelor de operare moderne;
  • Disponibilitate protectie incorporata de la viruși și programe malware care se lansează înainte de pornirea Windows sau Linux;
  • A sustine partiții de pornire EFI, care vă va permite să utilizați mai multe sisteme de operare fără a instala descarcători terți(de exemplu grub).

Determinarea prezenței UEFI pe computer

Ele pot fi distinse prin mare listă semne:


Este posibil să actualizați BIOS-ul la UEFI?

Dacă pui întrebarea în acest sens, atunci răspunsul este clar - Nu. Nu îl veți putea actualiza pe cel obișnuit la UEFI, indiferent cât de mult doriți.

Pur și simplu nu poate fi instalat fizic pe o placă de bază veche.

Cum să introduceți UEFI și setările de bază

A intra uefi bios modul utilitar ez este foarte simplu. Imediat după pornirea sau repornirea computerului, trebuie să apăsați tasta de conectare UEFI (de obicei „ Șterge" sau " F2»);

După conectare, puteți începe setări. Toate setările vor fi discutate folosind exemplul unei plăci de bază Asus. UEFI-ul altor plăci de bază poate diferi, dar nu prea semnificativ.

setări de bază:

Pe Ecranul principal UEFI veți putea vizualiza informații despre computerul dvs. (modelul plăcii de bază, modelul și frecvența procesorului, cantitatea de RAM, temperatura componentelor PC-ului etc.).

Paragraful " performanta sistemului„va fi util pentru proprietarii de laptopuri sau dacă computerul rulează pe un UPS. Aici puteți alege între performanta ridicatași economisirea energiei.

Elementul „” vă va permite să selectați de pe ce hard disk sau unitate externă va fi încărcat sistemul de operare.

Butonul „” vă va permite, de asemenea, să selectați unitatea de pe care doriți să porniți computerul.

Făcând clic pe „ În plus", poți accesa setările avansate. A intra în setari aditionale, veți fi dus imediat la meniul principal. În el puteți schimba limba UEFI și puteți seta o parolă.

În meniu Ai Tweaker Puteți overclocka procesorul sau RAM, dar este mai bine să nu mergeți acolo pentru utilizatorii fără experiență. Overclockarea nu este disponibilă pe fiecare placă de bază.

În meniu " adiţional» puteți activa sau dezactiva diverse tehnologii CPU, activați anumite versiuni USB, selectați procesorul activ și efectuați alte setări similare. Conținutul acestui meniu depinde numai de producătorul și marca plăcii de bază.

În meniu " monitor» Puteți vizualiza informații mai detaliate despre temperatura componentelor PC-ului sau viteza de rotație a răcitoarelor (ventilatoare). Acest lucru este util în caz opriri bruște computer din cauza supraîncălzirii.

» contine toti parametrii legati de pornirea calculatorului. În el puteți selecta tipul de sistem de operare de pornire (Windows sau altele), activați suportul încărcare rapidăși selectați alte opțiuni similare.

În ultimul paragraf „ Serviciu» Puteți vizualiza informații detaliate despre placa de bază sau puteți actualiza UEFI de pe o unitate externă.

Cele mai bune articole pe această temă