2Aug

Co dělá BIOS po zavedení?

click fraud protection

Jakmile váš počítač dokončí zaváděcí proces a jste pevně uvnitř operačního systému bzučení, je něco pro BIOS něco udělat?

dnešní otázka &Odpověď na odpověď nám přichází s laskavým svolením SuperUser - rozdělení Stack Exchange, seskupení webových serverů Q & A na úrovni komunity.

Otázka

čtečka zařízení SuperUser Indrek vyvolává tuto otázku týkající se systému BIOS:

Vždycky jsem se zajímal o to, zda BIOS( kromě provádění POST, spuštění bootloaderu a předávání ovládacího prvku do OS po stisknutí tlačítka napájení) má nějaký účel nebo funkci,systém běží?

Operační systém komunikuje s BIOSem při běhu a pokud ano, jak?

Opravdu? Jakou funkci má BIOS vedle své rozhodující role při spuštění počítače?

Odpovědi

s laskavým svolením spolupracovníka SuperUser Mechanical Snail, přehled o tom, jak se role BIOSu časem změnila a co to je a co nedělá dnes:

Role BIOSu

S moderními operačními systémy prakticky žádný .Linus Torvalds údajně uvedl, že jeho úkolem je "stačí načíst operační systém a dostat se z toho k čertu".

instagram viewer

Starší operační systémy jako MS-DOS se spoléhaly na systém BIOS pro mnoho úkolů( např. Přístup k diskům) voláním přerušení.

S moderními operačními systémy se bootloader rychle přepne do režimu 32 nebo 64 bitů a spustí jádro operačního systému. Jádro může zaregistrovat své vlastní obslužné programy přerušení, které mohou být volány aplikací uživatelského prostoru. Rutiny jádra mohou být více přenosné( protože nezávisí na konkrétním hardwaru), flexibilnější( dodavatelé OS je mohou změnit na požádání, než aby museli používat vše, co bylo s hardwarem použito), složitější( mohou spouštět libovolně komplexníkód, spíše než to, co bylo naprogramováno do systému BIOS) a bezpečnější( protože systém OS může řídit přístup ke sdíleným zdrojům a zabránit tomu, aby se programy zbytečně hromadily a implementovaly své vlastní schémata libovolných oprávnění).

K interakci s konkrétním hardwarem mohou operační systémy načíst a používat vlastní ovladače zařízení.Není tedy nutné, aby operační systém nebo aplikace volaly většinu rutin BIOSu. Ve skutečnosti jsou z bezpečnostních důvodů přerušení systému BIOS dokonce zakázány. Protože BIOS žije v 16bitovém reálném režimu, je těžší zavolat na moderní operační systémy.

Během používání systému BIOS je systém BIOS velmi omezen, jeho funkce jsou stále používány periferně.Například, když počítač spí, operační systém neběží a nakonec klesne na firmware, aby hardware nastavil do správného stavu, aby pozastavil a obnovil operační systém. Tato použití jsou obecně omezena na volání ACPIcalls, nikoli volání na úplné rozhraní BIOSu. ACPI je rozšíření systému BIOS, které "přináší správu napájení pod kontrolou operačního systému( OSPM), na rozdíl od předchozího systému BIOS-central, který se spoléhal na firmware specifické pro platformu, který určuje politiku správy a konfigurace napájení".

Všimněte si, že oficiálně "BIOS" odkazuje na konkrétní firmware rozhraní, ale termín je běžně používán odkazovat se na firmware počítače obecně.Některé nedávné počítače( zejména Apple) nahradily systém BIOS( sensu strictu) s UEFI, což je samozřejmě také, co se nazývá implementovat tyto funkce.

Další informace o tom, jak se úloha systému BIOS časem zmenšuje, naleznete na webu Wikipedia.

Dalším přispěvatelem SuperUseru Simonem Richterem je přehled všech věcí, které BIOS stále dělá:

Systém BIOS a řízení spotřeby

Systém BIOS poskytuje řadu služeb operačním systémům, z nichž většina se týká správy napájení:

  • modifikujícíprocesorové a sběrnicové hodiny
  • zapnutí / vypnutí zařízení na základní desce
  • řízení výkonu rozšiřujícího portu
  • pozastavení na disk a pozastavení paměti RAS
  • obnovení nastavení události

Suspend-to-disk je implementován v operačním systému většinu času jako OSmůže obnovit svůj stav rychleji( pouze stav jádra je znovu načten a programový stav je v případě potřeby vyměněn, což je podstatně rychlejší než opakované načtení celé paměti RAM), ale funkce zůstává ve specifikaci.

Operační systém Suspend-to-RAM nemůže být implementován operačním systémem, protože se spoléhá na to, že systém BIOS přeskočí inicializaci a testování paměti RAM, takže operační systém potřebuje rozhraní API, které informuje systém BIOS o tom, že zamýšlí pokračovat s aktuálním obsahem RAM.Za účelem poskytnutí této služby systém BIOS vyzývá operační systém, aby nechal určitou oblast paměti RAM neporušenou.

Rozhraní pro systém OS pro všechny služby BIOS je kód virtuálního stroje, který musí být spuštěn na emulátoru a který generuje nezbytné vstupně-výstupní operace do hardwaru. Pro pozastavení je toto zpravidla implementováno tak, že spuštění jedné z hardwarových zápisů spustí přerušení, které přenese řízení do systému BIOS.

Musíte něco přidat k vysvětlení?Vypadněte v komentářích. Chcete se dozvědět více odpovědí od ostatních uživatelů technologie Stack Exchange? Podívejte se na celý diskusní příspěvek zde.