2Aug

Ce inseamna BIOS-ul meu dupa boot?

Odată ce computerul finalizează procesul de încărcare și sunteți ferm în interiorul sistemului de operare cu buzzing de-a lungul timpului, este ceva de făcut pentru BIOS-ul?

Întrebarea de astăzi &Sesiunea de răspuns vine de la amabilitatea SuperUser - o subdiviziune a Stack Exchange, o grupare de comunicații cu unitățile de comunicații Q & A.

Intrebarea

SuperUser Reader Indrek pune aceasta intrebare legate de BIOS:

Intotdeauna ma intrebam daca BIOS( in afara de a conduce POST, pornirea bootloader-ului si trecerea controlului la OS dupa ce apasati butonul de pornire) are vreun scop sau functie in timp ce operatorulsistemul rulează?

Sistemul de operare comunică cu BIOS în timp ce rulează și, dacă da, cum?

Într-adevăr? Ce functie are BIOS-ul pe langa rolul sau esential in pornirea calculatorului?

Răspunsurile

Amabilitatea Contributorului SuperUser Snail mecanic, o prezentare generală a modului în care rolul BIOS sa schimbat în timp și ceea ce este și nu face astăzi:

Rolul BIOS-ului

Cu sistemele moderne practic nici unul .Linus Torvalds a afirmat că sarcina sa este să "încarce sistemul de operare și să plece dracului de acolo".

Sistemele de operare mai vechi, cum ar fi MS-DOS, s-au bazat pe BIOS pentru mai multe sarcini( de exemplu accesul pe disc), prin apelarea întreruperilor.

Cu sistemele de operare moderne, bootloader-ul trece rapid în modul 32- sau 64-bit și execută kernel-ul OS.Kernel-ul poate să-și înregistreze propriile handhetoare de întrerupere, care pot fi apelate de aplicațiile spațiului utilizator. Rutinele kernel-ului pot fi mai portabile( deoarece nu depind de hardware-ul specific), mai flexibile( vânzătorii de sisteme de operare le pot schimba la cerere mai degrabă decât să utilizeze ceea ce a venit cu hardware-ul), mai sofisticațicod mai degrabă decât ceea ce a fost programat în BIOS) și mai sigur( deoarece sistemul de operare poate controla accesul la resursele partajate și împiedică programele să se cludeze reciproc, implementând propriile scheme de permisiuni arbitrare).

Pentru a interacționa cu hardware-ul specific, OS-urile pot încărca și utiliza propriile drivere de dispozitive. Deci, nu este nevoie ca sistemul sau aplicațiile să apeleze la cele mai multe rutine BIOS.De fapt, din motive de securitate, întreruperile BIOS sunt chiar dezactivate. Deoarece BIOS-ul trăiește în modul real pe 16 biți, este mai greu să solicitați sisteme operaționale moderne.

În timp ce utilizarea BIOS-ului este foarte limitată în timp ce sistemul de operare funcționează, funcțiile sale sunt încă utilizate periferic. De exemplu, atunci când un computer doarme, sistemul de operare nu funcționează și în cele din urmă revine firmware-ului pentru a seta hardware-ul la starea corectă pentru a întrerupe și a relua sistemul de operare. Aceste utilizări sunt în general limitate la ACPIcalls, mai degrabă decât apelurile către întreaga interfață BIOS.ACPI este o extensie BIOS care "aduce managementul puterii sub controlul sistemului de operare( OSPM), spre deosebire de sistemul central BIOS-ului anterior, care sa bazat pe firmware-ul specific platformei pentru a determina politica de gestionare a energiei și de configurare".

Rețineți că BIOS-ul oficial se referă la o anumită interfață de firmware, dar termenul este folosit în mod obișnuit pentru a se referi la firmware-ul calculatorului în general. Unele computere recente( în special cele de la Apple) au înlocuit BIOS-ul( sensu strictu) cu UEFI, ceea ce, bineînțeles, este ceea ce este chemat să implementeze aceste funcții.

Pentru mai multe informații despre modul în care rolul BIOS-ului sa diminuat în timp, consultați Wikipedia.

Un alt contributor al SuperUser, Simon Richter, ne oferă o imagine de ansamblu asupra lucrurilor pe care le face încă BIOS-ul:

BIOS-ul și managementul de putere

BIOS-ul oferă o serie de servicii pentru sistemele de operare, cele mai multe fiind legate de managementul alimentării:CPU și ceasuri de autobuz

  • activarea / dezactivarea dispozitivelor de placă de bază
  • controlul puterii portului de expansiune
  • suspend-la-disc și suspend-la-RAM
  • setările de reluare a evenimentelor
  • Suspend-to-disk este implementat în OS de cele mai multe ori ca OSpoate restabili starea mai repede( numai starea kernel-ului este reîncărcată, iar starea programelor este înlocuită atunci când este necesar, ceea ce este semnificativ mai rapid decât reîncărcarea întregii RAM), dar caracteristica rămâne în caietul de sarcini.

    Suspend-to-RAM nu poate fi implementat de sistemul de operare, deoarece se bazează pe BIOS, depășind inițializarea și testul RAM, astfel încât sistemul de operare are nevoie de un API pentru a spune BIOS-ului că intenționează să fie reluat cu conținutul RAM curent. Pentru a furniza acest serviciu, BIOS cere OS să lase o anumită zonă RAM intactă.

    Interfața pentru OS pentru toate serviciile BIOS este o piesă a codului mașinii virtuale care trebuie rulată pe un emulator și care generează operațiile I / O necesare în hardware. Pentru suspend, acest lucru este în general implementat, astfel încât executarea uneia dintre fișierele hardware scrie apoi declanșarea unei întreruperi, care transferă controlul către BIOS.

    Trebuie să adăugați ceva la explicație? Sunați în comentariile. Doriți să citiți mai multe răspunsuri de la alți utilizatori de tehnologie Stack Exchange? Check out discuția completă aici.