Bootloader и процес подизања оперативног система

У тренутку када укључите рачунар прве инструкције које се извршавају представљају BIOS (Basic Input/Output System). BIOS се састоји из два дела. Први део, POST (power-on self test) има задатак да провери сав хардвер. Други део BIOS-а, изворни сервиси (runtime services) треба да направи списак свих локалних уређаја и уради њихову иницијализацију. Након што обави свој део послa, POST се брише из меморије, а сервиси остају да би пружили услуге оперативном систему.

Да би бутовао (подигао, покренуо) оперативни систем, BIOS тражи уређаје који су активни и бутабилни. У те уређаје спадају: CD-ROM, хард диск, уређај на мрежи, флеш…

Уобичајено је да се оперативни систем бутује са хард диска, где MBR (Master Boot Record) садржи примарни Bootloader. MBR је област од 512 бајтова који се физички налази у првом сектору диска. Након што је MBR учитан у RAM, BIOS му препушта контролу.

У наставку је дат начин бутовања Linux оперативног система.

Bootloader – фаза један

Примарни Bootloader из MBR-а величине 512 бајта садржи и код и табелу партиција. Првих 446 бајтова представља примарни Bootloader који садржи изворни код и текст порука о грешкама. Следећа 64 бајта су таблела партиција која садржи податке о свакој од 4 примарне партиције (по 16 бајта за сваку). MBR завршава са 2 бајта која представљају магичну вредност по којој BIOS зна да ли је уређај бутабилан, али такође представља валидацију MBR-а.

1-28

Примарни Bootloader

Посао примарног Bootloader-а је да пронађе секундарни Bootloader. Ово се ради тако што примарни Bootloader претражује табелу партиција тражећи активну партицију. Када је пронађе, провери да ли су све остале партиције неактивне и копира бут запис активне партиције у RAM и извршава га.

Bootloader – фаза два

Секундарни Bootloader има задатак да учита кернел у меморију и опционо да учита RAM диск.

Примарни и секундарни Bootloader, код оперативног система Linux, заједно се зову Linux Loader (LILO) или GRand Unified Bootloader (GRUB). LILO има неке недостатке које су поправљене у GRUB-у.

Први корак у подешавању GRUB bootloader-a јесте његова инсталација, али пре саме инсталације битно је схватити начин на који GRUB ради и његове предности у односу на друге bootloadere.

Прво и најбитније је то да се GRUB извршава у фазама. Разлог за то је физичка немогућност MBR-a да садржи све информације које су неопходне за извршавање GRUB bootloadera.

Фазе при покретању GRUB bootloadera су:

  • Фаза 1 (Stage 1): Ова фаза подразумева покретање тзв. примарног bootloader-a који је записан у MBR, основна функција ове фазе је да обезбеди даље извршавање GRUB bootloader-a, односно прелазак на фазу 2.

  • Фаза 1.5 (Stage 1.5): Ова фаза може постојати у случају да су подаци неопходни за GRUB довољно мали да могу да стану одмах иза MBR-а.

  • Фаза 2 (Stage 2): Финална фаза која која доводи до извршавања GRUB bootloader-a и учитавања његове конфигурације (конфигурација се може налазити било где на хард диску). У овом тренутку, GRUB приказује листу доступних кернела и корисник бира који од њих хоће да учитa (може чак и да проследи неке параметре кернелу у овом тренутку). Сада се учитава кернел и initrd у RAM меморију и извршава се кернел (initrd је RAM диск – користи се за учитавање драјвера пре монтирања root партиције у случају да подршка за фајл систем root партиције није уграђена у кернел, или за учитавање драјвера који би се учитали тек у каснијим фазама boot procesa, а постоји потреба за њима и раније (нпр. usb мишеви и тастатуре), а такође се користи и за постављање графичког екрана при boot-у).

Главна предност оваквог приступа, поред заобилажења физичких немогућности MBR сектора, јесте прилагођавање GRUB bootloader-a потребама корисника и могућност покретања неограниченог броја инсталираних оперативних система услед недостатка просторног ограничења које намеће MBR.

GRUB такође подржава и покретања система преко мреже и може да покреће било који оперативни систем (UNIX, Linux, BSD, DOS, MS Windows).

Оставите одговор

Попуните детаље испод или притисните на иконицу да бисте се пријавили:

WordPress.com лого

Коментаришет користећи свој WordPress.com налог. Одјавите се /  Промени )

Google photo

Коментаришет користећи свој Google налог. Одјавите се /  Промени )

Слика на Твитеру

Коментаришет користећи свој Twitter налог. Одјавите се /  Промени )

Фејсбукова фотографија

Коментаришет користећи свој Facebook налог. Одјавите се /  Промени )

Повезивање са %s