UEFI vs BIOS: Hva er forskjellen?

Så du har kanskje hørt akronymer BIOS og UEFI kastet rundt, spesielt når du prøver å bytte operativsystem eller rote med overklokking.

Og du vet kanskje hva disse forkortelsene står for (henholdsvis Unified Extensible Firmware Interface og Basic Input / Output System). Men har du noen gang lurt på hvordan de brukes i et datasystem?

La oss avmystifisere disse begrepene og deres betydning nå.

Oppstartsprosedyre

Første ting først - jeg vet at vi avviker fra emnet, men jeg lover at dette vil hjelpe deg med noen konsepter senere.

Så, hvordan starter en datamaskin? La oss gå trinn for trinn:

  1. Du trykker på strømknappen på den bærbare / stasjonære datamaskinen.
  2. CPU-en starter opp, men trenger noen instruksjoner å jobbe med (husk at CPU-en alltid trenger å gjøre noe). Siden hovedminnet er tomt på dette stadiet, prøver CPU å laste instruksjoner fra firmware-brikken på hovedkortet og begynner å utføre instruksjoner.
  3. Firmwarekoden utfører en POST (Power On Self Test), initialiserer gjenværende maskinvare, oppdager tilkoblede eksterne enheter (mus, tastatur, pendrive osv.) Og sjekker om alle tilkoblede enheter er sunne. Du husker det kanskje som et "pip" som stasjonære datamaskiner pleide å lage etter at POST er vellykket.
  4. Til slutt sykler firmwarekoden gjennom alle lagringsenheter og ser etter en oppstartslaster (vanligvis plassert i første sektor av en disk). Hvis oppstartslaster er funnet, overgir firmwaren kontrollen til datamaskinen til den.

Vi trenger ikke å vite mer om dette emnet i forbindelse med denne artikkelen. Men hvis du er interessert, så les videre (ellers kan du hoppe til neste avsnitt).

  1. Så nå som boot-loader er lastet, er jobben å laste resten av operativsystemet. GRUB er en slik oppstartslaster som er i stand til å laste inn unix-lignende operativsystemer, og som også kan kjede Windows OS. Boot-loader er bare tilgjengelig i den første sektoren av en disk, som er 512 byte. Med tanke på kompleksiteten i moderne operativsystemer, har noen av disse opplastere en tendens til å utføre flertrinns-lasting, der hovedopplasteren laster den andre trinn-opplasteren i et miljø som ikke er begrenset til 512 byte.

  2. Boot-loader laster deretter kjernen inn i minnet. Unix-lignende operativsystemer kjører deretter initprosessen (hovedprosessen, hvorfra andre prosesser blir forked / utført) og initialiserer til slutt kjøringsnivåene.

  3. I Windows wininit.exeer lastet sammen med noen andre prosesser som services.exefor tjenestekontroll, lsass.exefor lokal sikkerhet og autoritet (ligner på run-levels) og lsm.exefor lokal øktadministrasjon.

  4. Etter alt dette, og etter at noen andre drivere er initialisert, lastes grafisk brukergrensesnitt (GUI) inn, og du får presentert påloggingsskjermen.

Dette var en veldig høy oversikt over oppstartsprosessen. Hvis du er interessert i operativsystemer, vil jeg anbefale deg å lese mer på osdev.net.

La oss nå komme tilbake til vårt opprinnelige tema.

BIOS:

BIOS står for Basic Input / Output System, fastvaren vi snakket om i oppstartsprosedyren ovenfor.

Den lagres på en EPROM (Erasable Programmable Read-Only Memory), slik at produsenten enkelt kan presse ut oppdateringer.

Det gir mange hjelpefunksjoner som gjør det mulig å lese oppstartssektorer for vedlagt lagring og skrive ut ting på skjermen. Du kan få tilgang til BIOS i de innledende fasene av oppstartsprosedyren ved å trykke på del, F2eller F10.

UEFI:

UEFI står for Unified Extensible Firmware Interface. Den gjør den samme jobben som en BIOS, men med en grunnleggende forskjell: den lagrer alle data om initialisering og oppstart i en .efi-fil, i stedet for å lagre den på fastvaren.

Denne .efi-filen lagres på en spesiell partisjon kalt EFI System Partition (ESP) på harddisken. Denne ESP-partisjonen inneholder også bootloader.

UEFI ble designet for å overvinne mange begrensninger i den gamle BIOS, inkludert:

  1. UEFI støtter stasjonstørrelser opptil 9 zettabyte, mens BIOS bare støtter 2,2 terabyte.
  2. UEFI gir raskere oppstartstid.
  3. UEFI har diskret driverstøtte, mens BIOS har stasjonsstøtte lagret i ROM-en, så det er litt vanskelig å oppdatere BIOS-firmware.
  4. UEFI tilbyr sikkerhet som "Secure Boot", som forhindrer datamaskinen i å starte fra uautoriserte / usignerte applikasjoner. Dette hjelper til med å forhindre rootkits, men hindrer også dual-booting, da det behandler andre operativsystemer som usignerte applikasjoner. For øyeblikket er bare Windows og Ubuntu signert OS (gi meg beskjed hvis jeg tar feil).
  5. UEFI kjører i 32bit eller 64bit modus, mens BIOS kjører i 16bit modus. Så UEFI er i stand til å tilby en GUI (navigering med mus) i motsetning til BIOS som bare tillater navigering ved hjelp av tastaturet.

Du trenger kanskje ikke UEFI

Selv om alle moderne datamaskiner er utstyrt med UEFI som standard, er noen grunner til at du kan velge BIOS fremfor UEFI:

  1. Hvis du er nybegynner og ikke bryr deg om å rote med noen form for fastvare, er BIOS noe for deg.
  2. Hvis du har <2 TB per harddisk eller partisjon, kan du gå med BIOS.
  3. BIOS tillater kjøring av flere operativsystemer uten å endre noen innstillinger. Dette kan være et sikkerhetsproblem fra et moderne synspunkt, men hei, ingen problemer for brukeren.
  4. BIOS gir systeminformasjon til operativsystemet. Så hvis operativsystemet kjører i 16-biters modus, trenger det ikke å skrive kode for å kommunisere med maskinvare. Det kan direkte bruke metoder levert av BIOS. Ellers hvis operativsystemet bytter til 32-biters eller 64-biters modus, må det gi sine egne underrutiner for å kommunisere med maskinvare.
  5. Hvis du er noen som foretrekker et tastatur og tekstbasert brukergrensesnitt fremfor navigering med mus og GUI, er BIOS noe for deg.

UEFI tar hensyn til disse begrensningene og gir en Legacy-modus. I den kan du kjøre alt som om du hadde en BIOS-firmware. Men husk at Intel har kunngjort at de ikke vil støtte tradisjonell BIOS fra 2020.

Konklusjon

Dette innlegget ga deg en oversikt over forskjellene mellom BIOS og UEFI. Det råder deg også når du skal velge en av dem og hvordan de er forskjellige fra hverandre.

Hvis du har spørsmål, vil jeg alltid være tilgjengelig på Twitter. Takk for tiden din.