Mitä BIOS: en aloitetaan käynnistyksen jälkeen?

Sisällysluettelo:

Mitä BIOS: en aloitetaan käynnistyksen jälkeen?
Mitä BIOS: en aloitetaan käynnistyksen jälkeen?
Anonim
Kun tietokoneesi käynnistää käynnistysprosessin ja olet kiinteästi käyttöjärjestelmän sisällä ääneen, onko BIOS: lle vielä mitään jäljellä?
Kun tietokoneesi käynnistää käynnistysprosessin ja olet kiinteästi käyttöjärjestelmän sisällä ääneen, onko BIOS: lle vielä mitään jäljellä?

Tämän päivän kysymys- ja vastausistunto tulee meihin SuperUserin ansiosta. Tämä on Stack Exchange -jako, joka on Q & A-sivustojen yhteisöjoukkoyhtymä.

Kysymys

SuperUser-lukija Indrek esittää tämän BIOS-kysymyksen:

I always wondered whether the BIOS (apart from conducting POST, starting the bootloader and passing control to the OS after one presses the power button) has any purpose or function while the operating system is running?

Does the operating system communicate with the BIOS while running and if so, how?

Todellakin? Mitä toimintoa BIOS: lla on kriittisen roolinsa lisäksi tietokoneen käynnistyessä?

Vastaukset

SuperUser-avustaja Mechanical Snail -konsultti, yleiskatsaus siitä, miten BIOSin rooli on muuttunut ajan myötä ja mitä se on ja ei toimi tällä hetkellä:

BIOS: n rooli

Nykyaikaisilla käyttöjärjestelmillä, käytännöllisesti katsoen mitään. Linus Torvalds ilmoitti sanoneen, että sen tehtävänä on "vain ladata käyttöjärjestelmä ja saada helvetti pois sieltä".

Vanhemmat käyttöjärjestelmät, kuten MS-DOS, perustuivat BIOSiin monien tehtävien (esim. Levyn käytön) yhteydessä soittamalla keskeytyksiksi.

Nykyaikaisilla käyttöjärjestelmillä käynnistyslataaja vaihtaa nopeasti 32- tai 64-bittiseen tilaan ja suorittaa käyttöjärjestelmän ytimen. Kernel voi rekisteröidä omat keskeytyskäsittelijät, joita voidaan kutsua käyttäjävaruussovelluksilla. Järjestelmän rutiinit voivat olla siirrettävämpiä (koska ne eivät ole riippuvaisia tietylle laitteistolle), joustavammat (OS-toimittajat voivat vaihtaa niitä kysyntään sen sijaan, että tarvitsisivat käyttää mitä tahansa laitteistosta tulevia), kehittyneempiä (ne voivat suorittaa mielivaltaisesti monimutkaisia koodia pikemminkin kuin BIOSin ohjelmointi) ja turvallisempi (koska käyttöjärjestelmä voi ohjata yhteisten resurssien käyttöä ja estää ohjelmia käyttämästä toisiaan toteuttamalla omia mielivaltaisia käyttöoikeusjärjestelmiään).

Jotta vuorovaikutuksessa tiettyyn laitteistoon, käyttöjärjestelmät voivat ladata ja käyttää omia laiteohjaimiaan. Joten OS tai sovellukset eivät ole tarpeellisia useimpien BIOS-rutiinien kutsumiseksi lainkaan. Itse asiassa turvallisuussyistä BIOS-keskeytykset ovat jopa vammaisia. Koska BIOS elää 16-bittisessä reaalitilassa, on vaikeampaa kutsua nykyaikaisia käyttöjärjestelmiä.

Vaikka BIOS-käyttö on hyvin rajoitettua, kun käyttöjärjestelmä toimii, sen toiminnot ovat yhä kehällä käytössä. Esimerkiksi kun tietokone nukkuu, käyttöjärjestelmä ei ole käynnissä ja se lopulta kuuluu laiteohjelmistoon, jotta laitteisto asetetaan oikeaan tilaan keskeyttämään ja palauttamaan käyttöjärjestelmän. Nämä käyttötarkoitukset rajoittuvat yleensä vain ACPI-yhteyksiin sen sijaan, että kutsuttiin koko BIOS-käyttöliittymään. ACPI on BIOS-laajennus, joka "tuo virranhallinnan käyttöjärjestelmän hallintaan (OSPM) verrattuna edelliseen BIOS-keskusjärjestelmään, joka perustui alustekohtaiseen firmware-ohjelmaan virranhallinta- ja konfigurointipolitiikan määrittämiseksi".

Huomaa, että virallisesti "BIOS" tarkoittaa tiettyä firmware-liitäntää, mutta termiä käytetään yleisesti tietokoneohjelmisto-ohjelmiston yleiseen viittaamiseen. Jotkut viimeaikaiset tietokoneet (etenkin Apple-tietokoneet) ovat korvanneet BIOS: n (sensu strictu) UEFI: n kanssa, mikä tietysti kutsutaan näiden toimintojen toteuttamiseksi.

Lisätietoja siitä, miten BIOS: n rooli on vähentynyt ajan myötä, katso Wikipedia.

Image
Image

Toinen SuperUser-avustaja, Simon Richter, antaa meille yleiskuvan BIOS: n tekemistä asioista:

BIOS ja virranhallinta

BIOS tarjoaa useita palveluita käyttöjärjestelmille, joista suurin osa liittyy virranhallintaan:

  • CPU- ja väyläkellojen muuttaminen
  • päälaitteiden ottaminen käyttöön / poistaminen käytöstä
  • laajennuspaikan tehonsäätö
  • keskeyttää levylle ja keskeyttää-to-RAM
  • palauta tapahtumien asetukset

Suspend-to-disk on toteutettu OS: ssä suurimman osan ajasta, koska käyttöjärjestelmä voi palauttaa tilansa nopeammin (vain ytimen tila ladataan uudelleen ja ohjelmatila vaihdetaan tarpeen mukaan, mikä on huomattavasti nopeampaa kuin koko RAM-muistin uudelleenlataus). ominaisuus säilyy määrittelyssä.

Järjestelmä ei voi toteuttaa Suspend-to-RAM-muistia, koska se tukeutuu BIOS-ohjelmaan ohittamalla RAM-alustuksen ja testin, joten käyttöjärjestelmä tarvitsee API: n kertoa BIOS: lle, että se aikoo jatkaa nykyisen RAM-sisällön avulla. Jotta tämä palvelu voidaan tarjota, BIOS pyytää käyttöjärjestelmää jättämään tietyn RAM-alueen ehjänä.

Kaikkien BIOS-palveluiden käyttöliittymä on osa virtuaalikoneen koodia, jota on käytettävä emulaattorissa ja joka tuottaa tarvittavat I / O-operaatiot laitteistoon. Järjestelmän keskeyttämistä varten tämä toteutetaan yleensä siten, että jonkin laitteiston kirjoittaminen käynnistää sen jälkeen keskeytyksen, joka siirtää ohjauksen BIOSiin.

Onko jokin asia lisättävä selitykseen? Kuulkaa kommentit. Haluatko lukea lisää vastauksia muilta tech-tajuilta Stack Exchange-käyttäjiltä? Katso koko keskusteluketju täältä.

Suositeltava: