If-Koubou

Ce inseamna BIOS-ul meu dupa boot?

Ce inseamna BIOS-ul meu dupa boot? (Cum să)

Odată ce computerul finalizează procesul de încărcare și sunteți ferm în interiorul sistemului de operare, vă stă la dispoziție ceva pentru BIOS?

Sesiunea de întrebări și răspunsuri din ziua de astăzi vine de la amabilitatea programului SuperUser - o subdiviziune a Stack Exchange, o grupare de comunicații pe site-uri cu întrebări și răspunsuri.

Intrebarea

Editorul de aplicații Intel Indrek pune această întrebare legată de BIOS:

Întotdeauna m-am întrebat dacă BIOS-ul (în afară de efectuarea POST, pornirea bootloader-ului și trecerea controlului la sistemul de operare după ce apăsați butonul de pornire) are vreun scop sau funcție în timp ce sistemul de operare funcționează?

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

Intr-adevar? Ce functie are BIOS-ul pe langa rolul sau esential in pornirea calculatorului?

Raspunsurile

Courtesy of the Contributor SuperUser Melcul mecanic, o prezentare generală a modului în care rolul BIOS sa schimbat în timp și ce este și nu face astăzi:

Rolul BIOS-ului

Cu sistemele de operare 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 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 repede î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 sofisticate cod 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, în loc de apeluri către interfața completă BIOS. ACPI este o extensie BIOS care "aduce controlul de putere sub controlul sistemului de operare (OSPM), spre deosebire de sistemul central BIOS-ul anterior, care sa bazat pe firmware-ul specific platformei pentru a determina politica de gestionare a energiei și de configurare".

Rețineți că, oficial, "BIOS" se referă la o interfață firmware particulară, 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 BIOS-ul încă le face:

BIOS-ul și gestionarea energiei

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

  • modificarea ceasurilor de procesor și bus
  • activarea / dezactivarea dispozitivelor mainboard
  • controlul puterii portului de expansiune
  • suspend-to-disk și suspend-to-RAM
  • reluați setările pentru evenimente

Suspend-to-disk este implementat în sistemul de operare de cele mai multe ori, deoarece sistemul de operare poate restabili starea sa mai rapidă (numai starea kernel-ului este reîncărcată și starea programului schimbată când este necesar, ceea ce este mult mai rapid decât reîncărcarea întregii RAM). caracteristica rămâne în caietul de sarcini.

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

Interfața pentru sistemul de operare pentru toate serviciile BIOS este o piesă a codului mașinii virtuale care trebuie executată 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.

Aveți ceva de adăugat 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.