Pipedija - tautosaka, gandai, kliedesiai ir jokios tiesos! Durniausia wiki enciklopedija durnapedija!


Boot loader

Iš Pipedijos - durniausios enciklopedijos.
Jump to navigation Jump to search

Batų keltuvas arba Boot loader - tai tas daiktas, kuris pasikrauna po batų raištelių keltuvo, o paskui jau pats pakelia kokią nors operacinę sistemą. Savo esme - tai tokia specializuota programa, kuri yra kažkur tai tarpe tarp kompiuterio pirminių BIOS konfigūracijų ir OS.

Kai kurie išvystyti šiuolaikiniai boot loaderiai, kaip pvz., Grub, yra ganėtinai rafinuoti, savo bendru funkcionalumu galintys lygintis su tokia OS, kaip MS-DOS. Kitą vertus, kai kurios primityvios OS, kaip kad MS-DOS, praktikoje atliko boot loaderio funkciją tokioms OS, kaip kad Windows 9x.

Batų keltuvo analogija atsirado apie kokius gal 197x metus, nors gal ir anksčiau, nuo pasakojimo apie tokį baroną Miunhauzeną. Gi reikalas tas, kad tasai baronas kartą įstrigo pelkėje ir ėmė skęsti, ir niekaip negalėjo išsikapanoti. Tai tada jis sugriebė save už batų raištelių ir juos ėmė kelti į viršų. Batų raišteliai pakėlė į viršų batus, o batai pakėlė į viršų ir patį baroną Miunhauzeną. Taip pakilęs, baronas Miunhauzenas nuskrido kažkur tenai oru.

Tai štai kai kadaise prasidėjo operacinių sistemų kūrimas, tai paaiškėjo, kad pakelti operacinę sistemą į darbingą būseną būna labai komplikuota, nes operacinė sistema yra didelė, o tai reiškia, kad kol ją suprogramuos kažkas, tai kompiuteriai, kuriems ji buvo skirta, gerokai pasens, o atsiras nauji, kurie bus tos sistemos kūrėjams nežinomi, netgi jei suderinamos architektūros, nu ir žodžiu, niekaip rišliai nieko padaryti nesigaus.

Tai galų gale kilo programeriams mintis, kad vienintelis kelias taip padaryti - tai kompiuteryje turėti kokią tai labai mažą programėlę, kuri mokėtų nuskaityti kokį tai ribotą kiekį informacijos iš disko ar panašaus įrenginio, o tenai diske esanti jau sudėtingesnė programa mokėtų nuskaityti kokią tai esminę operacinės sistemos dalį ir ją paleisti, o tada jau toliau ta operacinė sistema save pati pakeltų kažkaip.

Realiai toksai procesas šiuolaikiniuose kompiuteriuose kartais išsiskaido į kokius penkis ar šešis skirtingus etapus, tačiau esminiai iš jų yra tokie, kur dirba atskiros tokios programos:

Praktikoje gi kiekvienas iš šitų irgi neretai būna sudarytas iš kelių dalių - pvz., batų raištelių keltuvas gali būti ROM programa, pasiekiama per JMP iš nulinio adreso, kuri pakelia pagal BIOS konfigūraciją nustatytą antrą bootstrap loaderį, kuris perskaito pirmą sektorių iš kokio nors disko ar paketą iš tinklo kortos, ar dar ko nors, kuriam perduoda valdymą, o jau šitas tada kelia normalų pirminį batų keltuvą, kuris pakelia antrinį batų keltuvą, kuris jau specifinis OS, o tada šitas pakelia OS keltuvą, kuris pakelia kernelio loaderį, kuris kelia ir generuoja kernelį, kuriam perduoda valdymą, o tada kernelis kelia konfigus, susijusius su pirmu runleveliu, o tada jau perduoda vykdymą kitam konfigų kėlimo skriptui, kuris jau perleidžia OS į kokį nors normalų runlevelį, pvz., trečią ar penktą ar whatever.

Žodžiu, ne taip jau paprasta tuos batus pakelti į orą.