Boot Process: BIOS

BIOS

Linux boot sürecinin ilk adımı, sistem bütünlüğü kontrollerini gerçekleştiren BIOS’tur. BIOS, günümüzde yaygın olarak kullanılan IBM PC uyumlu bilgisayarlarda bulunan bir firmware’dir. Muhtemelen BIOS firmware’ini, harddisk’lerinizin boot sırasını değiştirmek, sistem saatini kontrol etmek, makinenizin mac address’ini görmek vb. için kullanmışsınızdır. BIOS’un ana amacı sistem bootloader’ını bulmaktır.

BIOS hard drive’ı boot ettikten sonra, sistemi nasıl boot edeceğini anlamak için boot block’u arar. Diskinizi nasıl partition ettiğinize bağlı olarak master boot record (MBR) veya GPT’ye bakacaktır. MBR, hard drive’ın ilk sektöründe, ilk 512 byte’tadır. MBR, diskin bir yerinde başka bir programı yükleyecek kodu içerir, bu program da sırasıyla bootloader’ımızı gerçekten yükler.

Şimdi eğer diskinizi GPT ile partition ettiyseniz, bootloader’ın konumu biraz değişir.

UEFI

Sisteminizi BIOS kullanmak yerine boot etmenin başka bir yolu daha vardır ve bu da UEFI’dir (“Unified extensible firmware interface”ın kısaltmasıdır). UEFI, BIOS’un halefi olarak tasarlandı, günümüzdeki çoğu donanım UEFI firmware ile birlikte gelir. Macintosh makineler yıllardır EFI booting kullanmaktadır ve Windows da çoğunlukla her şeyini UEFI booting’e taşımıştır. GPT formatı, EFI ile kullanım için tasarlanmıştır. GPT bir diski boot ediyorsanız, mutlaka EFI’ye ihtiyacınız yoktur. Bir GPT diskinin ilk sektörü, BIOS tabanlı bir makinenin boot edilebilmesini mümkün kılmak için “protective MBR” için ayrılmıştır.

UEFI, başlangıçla ilgili tüm bilgileri bir .efi dosyasında saklar. Bu dosya, donanım üzerindeki EFI system partition adı verilen özel bir partition’da depolanır. Bu partition içinde bootloader bulunur. UEFI, geleneksel BIOS firmware’inden birçok iyileştirme ile gelir. Ancak biz Linux kullandığımız için çoğumuz BIOS kullanıyoruz. Bu nedenle, tüm bu dersler bu varsayımla devam edecektir.

Last updated