Mine sisu juurde

Baasvahetussüsteem

Allikas: Vikipeedia
AMIBIOS 686. BIOS on salvestatud PLCC-pesas asuvale kiibile

Baasvahetussüsteem (inglise keeles basic input/output system ehk BIOS) on personaalarvuti riistvara juhtimiseks mõeldud madala taseme tarkvara, mis toimib liidesena riistvara ja operatsioonisüsteemi vahel.[1]

Baasvahetussüsteem on mälus käitatav tarkvara ja see hõlmab riistvara operatsioonisüsteemiga liidestavaid seadmedraivereid. BIOS erineb muust tarkvarast selle poolest, et lisaks muutmällu laaditud süsteemiosale on osa süsteemist eellaaditud püsimällu.[1]

Baasvahetussüsteem on esimene programm, mis arvuti sisselülitamisel käivitub. Selle ülesanne on tuvastada, käivitada ja testida riistvara (näiteks kõvaketas, videokaart jne) ning viia arvuti seisu, kus on võimalik kasutaja tarkvara käivitada. Arvuti kasutajal ei ole baasvahetussüsteemile juurdepääsu, kuid tavaliselt on arvutil olemas vahendid BIOS-i konfigureerimiseks.

Personaalarvuti baasvahetussüsteem võib asuda kolmes kohas:

Esimesed baasvahetussüsteemid

[muuda | muuda lähteteksti]

Personaalarvuti algusaegadel hõlmas baasvahetussüsteemi tarkvara kõiki süsteemi jaoks vajalikke draivereid ja asus emaplaadi püsimälu kiipidel kõrvuti käivitustesti (inglise keeles power-on self test ehk POST) ja alglaaduriga (inglise keeles bootstrap loader). Draiverid olid iseseisvad ja püsimälust igal ajal kasutatavad. Alglaadeprogramm oli disainitud disketil või kõvakettal asuva alglaadesektori olemasolu kontrollimiseks ja sellelt operatsioonisüsteemi laadimiseks. Pärast operatsioonisüsteemi laadimist võis see välja kutsuda baasvahetussüsteemis asuvaid madala taseme arvutiprogramme (seadmedraivereid) riistvaraga suhtlemiseks. Algselt säilitati kõik baasvahetussüsteemi seadmedraiverid emaplaadi püsimälus. Nendeks olid draiverid klaviatuuri, videokaardi, jada- ja rööpvärati, disketiseadme ja kõvaketta kontrolleri, juhtkangi ning kella jaoks.[1]

UEFI ja BIOS-i areng

[muuda | muuda lähteteksti]
Traditsiooniline tekstipõhine BIOS-i seadistusliides
Kaasaegne UEFI-põhine graafiline seadistusliides

Traditsioonilise baasvahetussüsteemi järglasena on tänapäeval laialdaselt kasutusel UEFI (Unified Extensible Firmware Interface), mis pakub mitmeid täiustusi võrreldes klassikalise BIOS-iga. UEFI võimaldab kasutada graafilist kasutajaliidest, hiire tuge ning paremat riistvaratuvastust ja turvalisust.[2]

Erinevalt BIOS-ist, mis töötab 16-bitises režiimis, suudab UEFI töötada 32- või 64-bitises keskkonnas, võimaldades seeläbi kasutada rohkem mälu ja pakkuda kiiremat alglaadimist. Samuti toetab UEFI GPT partitsiooniskeemi, mis võimaldab kasutada suuremaid kui 2 TB kõvakettaid.[2]

UEFI sisaldab ka funktsiooni nimega Secure Boot, mille eesmärk on takistada pahavara laadimist süsteemi käivitamise ajal, lubades käivitada ainult usaldusväärselt allkirjastatud tarkvara. See parandab süsteemi turvalisust, kuid võib piirata mõningate operatsioonisüsteemide või tarkvara kasutamist.[2]

Emaplaadi püsimälu baasvahetussüsteem

[muuda | muuda lähteteksti]

Personaalarvuti emaplaadil asub püsimälukiip, mis sisaldab baasvahetussüsteemi (BIOS). See koondab süsteemi käivitamiseks ja riistvara liidestamiseks vajalikud alglaadimisprogrammid ja draiverid. Süsteemi sisselülitamisel tehakse käivitustest (power-on self test ehk POST), mille käigus kontrollitakse peamiste riistvarakomponentide töökorras olekut.[1]

BIOS võimaldab käivitada ka seadistusprogrammi, mille abil saab muuta süsteemi konfiguratsiooni. Seaded salvestatakse CMOS-mällu (complementary metal-oxide semiconductor), mida toidab emaplaadil asuv liitiumpatarei. CMOS-mälu voolutarve on väga väike ning see suudab andmeid säilitada ka siis, kui arvuti on välja lülitatud.[1]

Emaplaadi püsimälu sisaldab programmikogumit, mis käivitub enne operatsioonisüsteemi laadimist. Enamik BIOS-e täidab järgmisi põhifunktsioone:

  • Käivitustest (POST) – kontrollib protsessorit, mälu, kiibistikku, videokaarti, kettaseadmeid ja teisi komponente;
  • Häälestamine – võimaldab muuta süsteemi seadeid, nagu kuupäev, kellaaeg, alglaadimisjärjekord, paroolid ja riistvara konfiguratsioon. Seadistusprogramm käivitatakse tavaliselt spetsiaalse klahvi abil süsteemi käivitamisel;
  • Alglaadimine – otsib salvestusseadmetelt alglaadimissektori (nt MBR) ja käivitab sealt operatsioonisüsteemi laadimise;
  • BIOS-i teenused – pakuvad madala taseme liidest operatsioonisüsteemi ja riistvara vahel, eriti süsteemi alglaadimise faasis.[1]

Vanemates süsteemides paiknes seadistusprogramm mõnikord eraldi andmekandjal, kuid tänapäeval on see tavaliselt integreeritud BIOS-i. Mõned süsteemid võimaldavad seadistamist ka operatsioonisüsteemist spetsiaalse tarkvara abil.[1]

Püsimälu riistvara

[muuda | muuda lähteteksti]

Püsimälu (ROM) on mälu tüüp, mis suudab andmeid säilitada püsivalt või poolpüsivalt. Seda nimetatakse püsivaks, kuna sellele kirjutamine on kas võimatu või keeruline. Püsimälu tuntakse ka säilmäluna, sest selles talletatud andmed säilivad ka siis, kui arvuti on välja lülitatud. Seetõttu sobib see hästi arvuti käivitamisjuhiste ehk alglaadimistarkvara salvestamiseks.[1]

Arvuti käivitamisel alustab protsessor tööd kindlalt määratud mäluaadressilt (FFFF0h), kust ta leiab esimesed täidetavad instruktsioonid. See aadress asub vahetult enne esimese megabaidi lõppu. Püsimälukiibi paigutamine sellele aadressile võimaldab tagada, et vajalik alglaadimiskood on alati kättesaadav, sõltumata sellest, kas süsteemile on toide sisse või välja lülitatud.[1]

Tavaliselt paikneb BIOS-i sisaldav püsimälu aadressivahemikus E0000h või F0000h. Kuna püsimälu maht võib ulatuda 128 kB või enamani, võib see hõlmata märkimisväärse osa süsteemi ülemisest mälupiirkonnast. Mõnel juhul sisaldab sama püsimälu ka teiste seadmete, näiteks integreeritud videokaardi või SCSI-kontrolleri, draivereid.[1]

Laienduskaartidel (nt videokaardid ja kontrollerid) võivad samuti olla oma püsimälud. Süsteemi käivitamisel otsib emaplaadi BIOS spetsiaalsest mälupiirkonnast (aadressid C0000h–DFFFFh) selliseid laiendusmälusid, tuvastades need kindla signatuuri (55AAh) alusel.[1]

Iga laienduskaardi püsimälu algab signatuuriga 55AAh, millele järgneb teave selle suuruse kohta ning programmikood. BIOS kontrollib nende mälude terviklikkust kontrollsumma abil. Kui kontrollsumma ei vasta ootustele, märgitakse vastav püsimälu vigaseks.[1]

Käivitamise käigus initsialiseerib BIOS kõik tuvastatud laienduskaartide püsimäludes olevad programmid. Seda protsessi on võimalik jälgida näiteks arvuti käivitamisel, kui videokaardi BIOS annab oma olemasolust märku.[1]

Püsimälu varjutamine

[muuda | muuda lähteteksti]

Püsimälu kiibid on väga aeglased, omades 150-nanosekundilist pöördumisaega, võrreldes dünaamilise muutmälu (inglise keeles dynamic random access memory ehk DRAM) pöördumisajaga, mis on enamikus süsteemides alla 10 nanosekundi. Seetõttu on praktiliselt kõikides süsteemides olevad püsimälud varjutatud, mis tähendab, et nad on kopeeritud muutmällu alglaadimise ajal, seda kiirema juurdepääsu saavutamise eesmärgil tavapärase kasutamise ajaks. Varjutamise protseduur kopeerib püsimälu muutmällu ja määrab siis muutmälule sama aadressi, mida püsimälu eelnevalt kasutas, blokeerides protsessi käigus tegeliku püsimälu. Seda võib vaadelda ka kui püsimälu, mis töötab muutmälu kiirusega.[1]

Jõudluse kasv laienduskaartide varjutamisel on väga vähene ja võib tekitada probleeme, kui see pole korrektselt seadistatud. Seetõttu oleks enamasti mõistlik varjutada ainult emaplaadi püsimälu (ja võib-olla ka videokaardi oma) ja jätta teised rahule.[1]

Tüüpiliselt on varjutamine kasulik ainult 16-bitiste operatsioonisüsteemide kasutamisel, näiteks DOS ja Windows 3.x-i puhul. Kui käitada 32-bitist või 64-bitist operatsioonisüsteemi, siis on varjutamine praktiliselt kasutu, sest need operatsioonisüsteemid ei kasuta töötamise ajal 16-bitist püsimälu koodi. Selle asemel need operatsioonisüsteemid laadivad draiverid muutmällu, mis asendavad 16-bitist püsimälu koodi, mida kasutatakse ainult alglaadimisel.[1]

Püsimälukiibi tüübid

[muuda | muuda lähteteksti]

Personaalarvutites kasutatavad põhilised püsimälutüübid on järgmised:

  • püsimälu (ROM);
  • programmeeritav püsimälu (PROM);
  • ümberprogrammeeritav püsimälu (EPROM);
  • elektriliselt ümberprogrammeeritav püsimälu (EEPROM), tuntud ka välk-püsimälu (flash ROM) nime all.

Olenemata püsimälu tüübist, mida süsteem kasutab, on selles salvestatud andmed püsivad ja jäävadki selliseks, juhul kui neid meelega ei kustutata või üle ei kirjutata (nendes, kus on see võimalik).[1]

Kuni 1990. alguseni salvestati BIOS ROM- ja PROM-kiipide peale, mida ei saa ümber programmeerida. Kui süsteemid läksid keerulisemaks ja ümberprogrammeeritavad mälud muutusid odavamaks, hakati kasutama EEPROM- ja flash-mäluseadmeid.

Püsimälu baasvahetussüsteemi tootjad

[muuda | muuda lähteteksti]

Mitmed baasvahetussüsteemide tootjad varustavad emaplaatide ja arvutisüsteemide tootjaid püsimälus kasutatava BIOS-i koodiga.[1]

Mitmed ettevõtted on spetsialiseerunud ühilduvate BIOS-i lahenduste arendamisele. Kolm tuntumat tootjat on American Megatrends, Inc. (AMI), Phoenix Technologies ja Award Software (mis kuulub nüüd Phoenix Technologies'ile). Need ettevõtted litsentsivad oma BIOS-i emaplaaditootjatele, võimaldades neil keskenduda riistvara arendamisele.[1]

Originaalseadmete tootjad (original equipment manufacturer ehk OEM) peavad BIOS-i kasutamiseks esitama teavet oma süsteemi disaini kohta, mille alusel kohandatakse sobiv lahendus. BIOS-i arendus on keerukas protsess ning iga lahendus on tavaliselt optimeeritud konkreetse emaplaadi või süsteemi jaoks.[1]

Aja jooksul on toimunud mitmeid muutusi BIOS-i tootjate turul. Näiteks on Intel kasutanud erinevatel perioodidel nii Phoenixi kui ka AMI BIOS-i lahendusi oma emaplaatidel. Need lahendused on alati kohandatud vastavalt konkreetsele riistvarale.[1]

Oluline muutus toimus 1998. aastal, kui Phoenix Technologies omandas Award Software'i. Seejärel on Phoenix pakkunud nii Phoenixi kui ka Awardi BIOS-i erinevate toodetena. Awardi BIOS-i on sageli käsitletud standardlahendusena, samas kui Phoenixi BIOS-i kasutatakse keerukamates süsteemides.[1]

Tänapäeval on suurem osa BIOS-i turust jagatud AMI ja Phoenixi vahel.[1]

Baasvahetussüsteemi tark- ja riistvara

[muuda | muuda lähteteksti]

Süsteemi alglaadimise tagamiseks peavad olulised draiverid olema aktiivsed juba käivitamise ajal. Seetõttu peab minimaalne hulk kettaseadmete draivereid olema eellaaditud kas emaplaadi või laienduskaardi püsimällu.[1]

Paljud laienduskaardid on varustatud oma püsimäluga, mis sisaldab BIOS-i või sellega seotud alglaadimiskoodi:

  • Videokaart – sisaldab tavaliselt oma BIOS-i, mis vastutab graafikaseadme initsialiseerimise eest;
  • RAID-kaardid – võimaldavad hallata mitut kettaseadet ning parandada töökindlust ja jõudlust. Nende BIOS võimaldab kettamassiivilt alglaadimist;
  • Võrgukaardid – võivad sisaldada alglaadimis-ROM-i (boot ROM), mis võimaldab süsteemi käivitada võrgu kaudu (nt failiserverist);
  • ATA/SATA kontrollerkaardid – laiendavad salvestusseadmete ühendamise võimalusi ning vajavad alglaadimise toetamiseks oma BIOS-i;
  • SCSI adapterid – võimaldavad alglaadimist SCSI-seadmetelt;
  • Y2K-kaardid – sisaldasid BIOS-i parandusi, mis lahendasid aastatuhande vahetusega seotud kuupäevaprobleeme vanemates süsteemides.[1]

Sellised laienduskaartide BIOS-id initsialiseeritakse süsteemi käivitamise ajal ning need võimaldavad vastavat riistvara kasutada juba enne operatsioonisüsteemi laadimist.[1]

BIOS-i seadistamine

[muuda | muuda lähteteksti]

BIOS-i seadistusprogramm (BIOS Setup Utility) võimaldab kasutajal muuta arvuti riistvaraga seotud põhilisi seadeid. Seadistusprogrammi saab tavaliselt avada arvuti käivitamisel, vajutades kindlat klahvi (nt Delete, F2 või F10).[1]

Üks olulisemaid seadistusi on alglaadimisjärjekord (boot order), mis määrab, millisest seadmest operatsioonisüsteem käivitatakse (näiteks kõvaketas, USB-mälupulk või optiline andmekandja). Seda kasutatakse näiteks operatsioonisüsteemi paigaldamisel.[1]

Lisaks saab BIOS-is seadistada süsteemi kuupäeva ja kellaaega, riistvara parameetreid, protsessori ja mälu tööseadeid ning energiasäästufunktsioone. Mõnes süsteemis on võimalik muuta ka turvaseadeid, näiteks määrata BIOS-i parool.[1]

Vale seadistus võib põhjustada süsteemi ebastabiilsust või käivitumisprobleeme, mistõttu soovitatakse muudatusi teha ettevaatlikult. Vajadusel on võimalik BIOS-i seaded taastada vaikeseadetele (Load Default Settings).[1]

BIOS-i uuendamine

[muuda | muuda lähteteksti]

Baasvahetussüsteemi saab vajadusel uuendada (inglise keeles flashing), et parandada vigu, lisada tuge uuele riistvarale või täiustada süsteemi stabiilsust. BIOS-i uuendamine toimub tavaliselt emaplaadi tootja poolt pakutava tarkvara abil ning see võib toimuda kas operatsioonisüsteemi sees või spetsiaalses alglaadimiskeskkonnas.[3]

Uuendamise käigus kirjutatakse olemasolev püsimälu sisu üle uue versiooniga. Kuna protsess on kriitiline, võib selle katkestamine (näiteks voolukatkestuse tõttu) muuta arvuti töövõimetuks. Seetõttu soovitatakse BIOS-i uuendada ainult siis, kui selleks on selge vajadus.[3]

Paljud kaasaegsed emaplaadid pakuvad ka turvalisemaid uuendusmeetodeid, näiteks võimalust taastada BIOS varukoopiast või uuendada seda ilma protsessori ja mäluta (USB BIOS Flashback).[3]

BIOS-i turvafunktsioonid

[muuda | muuda lähteteksti]

Baasvahetussüsteem sisaldab mitmeid turvafunktsioone, mille eesmärk on kaitsta arvutit loata juurdepääsu ja pahavara eest. Üks levinumaid on BIOS-i parool, mille abil saab piirata ligipääsu süsteemi seadistustele või takistada arvuti käivitamist ilma õige paroolita.[4]

Kaasaegsetes süsteemides kasutatakse lisaks UEFI-põhiseid turvamehhanisme, nagu Secure Boot, mis kontrollib alglaadimise käigus käivitatava tarkvara usaldusväärsust. See aitab vältida pahavara laadimist enne operatsioonisüsteemi käivitumist.[4]

Samuti toetavad paljud emaplaadid TPM-i, mis on eraldi turvakiip krüpteerimisvõtmete hoidmiseks ja süsteemi tervikluse kontrollimiseks. TPM-i kasutatakse näiteks ketta krüpteerimisel ja turvalise autentimise tagamisel.[4]

  1. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Scott Mueller, Upgrading and Repairing PCs, 19th edition, Que Publishing, 2010
  2. 1 2 3 UEFI Forum, Unified Extensible Firmware Interface Specification, https://uefi.org/specifications
  3. 1 2 3 ASUS, How to update BIOS, https://www.asus.com/support/FAQ/1008276/
  4. 1 2 3 Microsoft, Secure Boot and TPM overview, https://learn.microsoft.com/en-us/windows/security/

Välislingid

[muuda | muuda lähteteksti]