Boot sektor
Boot sector (někdy zvaný Bootblock) je vyhrazený oddíl nebo oblast v pevném disku, diskety nebo jiného podobného zařízení, obsahující krátký a pro běžné uživatele nepřístupný program pro zavedení operačního systému. Zpřístupní se pouze po zavedení do počítače jako bootovací mechanismus a provede se reboot.
Na počítačích kompatibilních s IBM vybere BIOS spouštěcí zařízení, poté z něj zkopíruje první sektor (což může být MBR, VBR nebo jakýkoli spustitelný kód) na adresu 0x7C00.
Termín Bootblock je také používaný pro označení zvláštního druhu malých programů, obvykle spouštěných po zapnutí nebo restartu počítače z energeticky nezávislých pamětí jako je Flash ROM. Po skončení restartu se CPU a hardware dostane do přednastaveného stavu a kód se spustí. Zaváděcí program je obvykle úplně první program, který CPU provádí. Vzhledem k této skutečnosti, Flash ROM (zejména NOR Flash) má často zvláštní sektory speciálně určené pro uchování tohoto typu programů. Tyto sektory se často nazývají Boot sektory, ale tento pojem spíše označuje určitý druh sektorů, které mají lepší hardwarovou ochranu proti náhodnému smazání a přepsání, aby se zamezilo situacím kdy selže zavádění operačního systému na samém začátku zaváděcí sekvence.
Typický Bootblock uložený v Flash ROM má velikost od 1kB do 512kB a obvykle: provede extra hardwarové inicializace, provede minimální test hardwaru a pak zkontroluje zda je dostupný nějaký propracovanější Bootloader, zavaděč OS nebo jestli nelze spustit jiný program, který spustí další zaváděcí program nebo vstoupí do zvláštního režimu určeného pro pomoc při zotavení systému. Například na PC kompatibilních s IBM s BIOSem Award a biosem AMI mají určenou malou oblast, o velikosti asi 8kB, zvanou Bootblock která se spustí první, zkontroluje zdali je přítomná hlavní část BIOSu a jestli je validní, poté spustí hlavní část BIOSu, nebo přepne do zotavovacího režimu, který obnoví hlavní část BIOSu ze zvláštní diskety (nebo z jiného média).
Pojem Bootblock obvykle znamená to samé co zavaděč. Rozdíl mezi pojmy Bootblock a zavaděčem není definován. Oba termíny popisují stejný typ programů. Obecně platí že menší a jednodušší programy jsou označovány jako Bootblock, zatímco chytřejším a dokonalejším programům se říká zavaděče. V některých systémech,které používají paměti ROM se stejné programy označují pojmem Boot ROM.
Typy bootovacích sektorů
Na pevných discích kompatibilních s IBM PC, disketách a podobných úložných zařízeních se můžeme setkat s několika hlavními druhy bootsektorů:
- Master Boot Record (MBR) je první sektor úložného zařízení, které bylo rozděleno na Diskové oddíly. MBR může obsahovat kód pro nalezení aktivního oddílu a vyvolání jeho VBR.
- Volume Boot Record (VBR) je první sektor úložného zařízení, které nebylo rozděleno na diskové oddíly, nebo první sektor jednotlivých diskových oddílů. Obsahuje kód pro nahrání a spuštění operačního systému (nebo jiného samostatného programu) nainstalovaného na tomto zařízení nebo v diskovém oddílu.
Aby byl boot sektor platný, musí být zakončen dvoubajtovým hexadecimálním číslem 0xAA55 (tzv. Boot sektor Signatura). Pokud není nalezeno, BIOS nebo MBR ohlásí chybu a zastaví načítání Operačního systému.
- CD-ROMy mají svou vlastní strukturu boot sektoru, u PC kompatibilních s IBM je popsána ve specifikaci El Torito.
- PC nekompatibilní s IBM mají na svých discích jiný formát boot sektoru.
- Někdy je pojmem boot sektor označen sektor s pamětí NOR Flash ROM, který je určen pro uložení počátečních zaváděcích programů (obvykle bootblock nebo bootloader). Tato paměť je, na rozdíl od běžného uložení na discích, navíc vybavena ochranou proti náhodnému smazání a přepsání dat.
Popis činnosti
Na PC kompatibilních s IBM, BIOS nerozlišuje mezi VBR a MBR. Firmware načte a spustí první sektor na úložném zařízení. U disket to je VBR, u pevných disků je to MBR. V MBR je uvedeno rozdělení disku a MBR se postará o načtení a spuštění VBR aktivního oddílu. VBR načte druhořadý bootloader z jiného umístění na disku.
Mimoto v prvním sektoru diskety, USB zařízení, pevného disku nebo jiného zařízení nemusí být uložen program zavádějící operační systém. BIOS pouze zkontroluje, zda to co je tam uloženo je zakončeno signaturou bootrecordu (0xAA55) v posledních dvou bytech. Proto lze nahradit obvyklý zaváděcí program propracovanějším zavaděčem, nebo dokonce multifunkčním správcem zavádění (programy uložené někde jinde na disku, které lze spustit bez operačního systému), umožňujícím uživateli spoustu nastavení. Ale s takovou svobodou je tu také možnost zneužití, spouštění virů.
Boot sektory a počítačové viry
Jednou z možností šíření počítačových virů je, že jsou nahrány do boot sektoru a pokud počítač spustí tento boot sektor, tak ho infikují. Toto bylo časté v době před masovým rozšířením internetu. Infikovaná disketa zapomenutá v jednotce byla častým zdrojem nákazy, jelikož kód na ní uložený byl automaticky zaveden po novém startu počítače, čímž tvůrce viru obešel operační systém i případný antivirus.
Související články
- Bootovací disk