You are on page 1of 8

BIOS NEDİR? NASIL YAPAR?

Donanım üzerine yazacağım yazı serinin 1. yazısı “BIOS Nedir? Nasıl Yapar?” konusuna değineceğiz. Bu

bağlamda Bios’un ne olduğundan, alt birimlerinin ne olduğundan Bios’un sistemi başlatma aşamasında neleri

nasıl yaptığından bahsetmeye çalışacağım.

Bilgisayarın en önemli ama en sessiz parçası. Marka amblemlerinin ardına saklanmış gizli kahraman. Alt

tarafı bir çip, nasıl bu kadar değerli ve önemli olabilir?

Bios, Basic I/O System ( Temel Giriş/Çıkış Sistemi ) kelimelerinin baş harflerinden oluşmuş, EEPROM(

Electrically Erasable Programmable Read-Only Memory ) üzerine yazılmış, bilgisayarın donanımsal olarak

başlangıç parametrelerini içeren bir sistemdir. Bilgisayarda güç ünitesini bile başlatan Bios‘tur. Bios,

donanımları başlatmakla, MBR‘leri taramakla yükümlüdür. MBR bulunamadığında veya hatalı bir donanım

algıladığında sistemi başlatmaması gerekir. Böyle durumlarda eğer hata, temel bileşenlerdeyse (RAM,CPU,GPU

vs.) bip sesinin kombinasyonlarıyla kullanıcıyı uyarması gerekir. 2 uzun bip 1 kısa bip gibi.

Bios basit gibi görünen fakat temel olarak iki kısımdan meydana gelen bir yapıdır. Asıl Bios sisteminin

bulunduğu EEPROM kısmı ve CMOS denilen ve sanılanın aksine Bios‘un değil sadece Bios ayarlarının

tutulduğu kısım. Fakat burada şu unutulmamalıdır. Bios‘un varsayılan ayarlarının

yedeği Bios‘un EEPROM kısmında tutulur. CMOS‘da meydana gelen herhangi bir veri kaybı

olduğunda EEPROM kısmındaki ayarları CMOS‘a kopyalar veya CMOS‘un herhangi bir nedenden dolayı

devre dışı kalması halinde Bios ayarları EEPROM kısmındaki yedekten okur. CMOS‘un içinde bulunan
verilere örnek vermek gerekirse boot öncelikleri, saat-tarih, işlemci frekansı vb. CMOS denilen kısımdaki

ayarlar bir pil beslemesiyle tutulur. CMOS‘un ayarlarının pil ile tutulmasının mantığı ise yanlış ayarlanan bir

değer için komple CMOS değişikliği yapmamak içindir. Örneğin yaptığınız ayarlardan dolayı bilgisayar

açılmıyor. Bios‘un ayarları okuduğu yerin CMOS olduğunu bildiğimiz için CMOS pilini çıkarıp bekleyip

taktığımızda genellikle bilgisayarımız açılır.

Peki ya CMOS verileri pil ile korunmuyor olsaydı ayarları nasıl sıfırlardık? Bu durumda tek çözüm yeni

bir CMOStakmak olurdu. Fakat şöyle bir soru var ortada. Madem Bios Read-only bir bellek, Bios updateler

nasıl Bios’a veri yazabiliyor? Bunun cevabı Bison önceden ROM olup daha sonrada EEPROM’lara

dönüştürülmesidir. EEPROM‘lar da read-only’dir fakat elektrik ile silinebilir/yazılabilir

özelliktelerdir. EEPROM‘lar elektrik yoluyla kendini programlanması için sisteme izin veren bir yapıdır.

Bios’un ne olduğunundan bahsettikten sonra neyi nasıl yaptığından bahsedelim. Bunun için Bios’un amacı

olan bir bilgisayarın nasıl başladığına değinelim.

Ön Yükleme Süreci (Boot)


1- ) Bilgisayarınızın güç düğmesine bastık. Saniye içinde ekrana görüntü geldi fakat aslında işin arkaplan öyle

değildir. Düğmeye basıldıktan sonra anakartın chipseti, güç ünitesine veya şarj aletine sinyal

gönderir. Durumun ne? veya Voltaj bilgisayara zarar vermez değil mi?.olduğuna dair bir sinyal gönderir. Bu

sinyale Power Good Signal denir. Bu sinyalden sonra chipset, işlemciye elektriği verir.

2- ) İşlemciye elektrik geldi fakat işlemci hiç bir şey hatırlamıyor. Bir şey hatırlamadığı için işlem de

yapmıyordur. Başlangıç durumunda yani işlemci ne yapacağını bilmediği durumlarda Bios‘un sonundaki

16byte’a bakar ve oradan Bios‘un başlangıç adresini alarak o adresteki kodları işlemeye başlar.

İşlemciye Bios‘un son 16byte’ına gitmesini söyeleyen kod, işlemc üreticilerinin tamamı tarafından standart

olarak kodlanır. Fakat burada bir soru var. Hani işlemci Bios‘un nerde olduğunu bilmiyordu? İşlemci fiziksel

olarak anakartta Bios‘a direkt bağlıdır fakat burada unutulmaması gereken şey Bios‘un da bir bellek olduğu.
Yani kodlar ve veriler belirli adreslerde. Bu yüzden başlangıç kodunun nerede başladığının işlemciye

bildirilmesi gerekir.

3- ) İşlemci Bios‘un adresini aldı ve Bios‘u işlemeye başladı. Burada artık bütüm kontrol Biosta. Bios’un ilk

komutu Power-On Self Test (POST)’tur. Bunun anlamı şudur. Bios, artık ayağa kalmış ve etrafındaki bütün

bileşenlere (ram, gpu,hdd, usb vb.) Durumun ne, sağlam mısın? diye sorar. Eğer bir hata oluşmuşsa

Yine Bios’un içindeki acil durum senaryoları devreye girer, Bios beep(bip) sesleri çıkarmaya başlar. Bunların

kombinasyon olduğunu ve her bir kombinasyonun başka bir anlamı olduğunu daha önce söylemiştik.

4- ) Bios bütün herkesi kontrol etti ve herkesten olumlu cevap aldı. İlk başlatacağı donanım Grafik Kartıdır.

Fakat Bios direkt olarak Grafik kartını başlatmaz, Grafik kartının üstünde bulunan Bios‘u Grafik kartını

başlatması için uyarır. Bunun nedeni Grafik kartının kendine ait işlemcisi, Ram’i ve anakarttan bağımsız farklı

hız ve frekanslarda veri yollarının bulunması. Grafik kartının Bios’u kartı başlatırsa Anakart Bios’una olumlu

başlatamazsa olumsuz cevap verir. Olumsuz bir cevap durumunda anakart Bios’u yine beep sesleriyle

kullanıcıyı bilgilendirir.

5- ) Bu aşamada Bios kendi başlangıç ekranını gösterir. Bu ekranda Bios’un üreticisi, versiyonu, sistem

logosu, Biosayarlarına ulaşabileceğiniz tuşların bilgisi gibi bilgiler yer alır. Dizüstü bilgisayarlarda bu aşamada

genelde üreticinin logosu görünür ama bunu Biostan bunu değiştirmek mümkündür.

6- ) Grafik kartından sonra anakartı tarayarak, başka Bios’u olan bir donanım olup olmadığına bakar. Mesela

sabit disklerin kendi Bios’ları vardır. Bulduğu Bios’lu donanımların Bios’larını tetikleyerek başlamalarını

sağlar.

7- ) Ekranda yazılar çıktı. Bu yazılar Bios mesajlarıdır. Eski tip bilgisayarlarda genellikle ekrana yazılar çıkar

fakat yeni nesillerde ürecinin logosu çıkmaktadır. (“Toshiba”,”Acer” gibi.) Bunu Bios‘tan ufak bir ayarla

değiştirmek mümkün olabilir. Ekrandaki bu mesajların bir kısmı Bios ile etkileşime geçebilmeniz için basmanız

gereken tuşu/tuşları göstermektedir. Bios‘u açabilmeniz, Boot aygılarını elle Boot edebilmeniz veya Recovery

işlemine başlayabilmeniz bu etkileşimlere örnek olarak verilebilir.

8- ) Bios’u olan donanımlar başladı. Bios’u olmayan veya Tak-Çalıştır olan cihazlar ise bu aşamada başlatılır.

Cihazların durumuyla ilgili ekranda yazılar çıkar.

9- ) Bütün donanımlar başladı ve sağlıklı. İyi ama Bios‘un artık işi devretme vakti geldi. Kime devredecek?

Tabi ki işletim sistemine. Ama Bios‘ta işletim sistemler, yok veya hangi donanımda işletim sistemi var bilmiyor.

Bu yüzden burada Boot öncelikleri devreye girer. Önceliklere göre başlatılır. Öncelik Optik

Okuyucuysa Boot edilecek “Boot File” aranır. Bulunamazsa bir sonraki Boot aygıtına geçilir. Eğer Sabit

Disk Boot edilecekse, Sabit Diskte bulunan Master boot record (MBR) kaydını arar. MBR kaydı için ise
diskin başlangıç noktasına yani Diskin ilk sektörüne bakar. Diskin ilk sektörü demek Sektor : 1 – Blok : 0 –

Cylindr : 0 – Cluster : 0

Eğer Bios aradığı MBR kaydını bulursa ve MBR sağlam ise MBR, Bios‘tan görevi alarak işlemciye

gönderdiği parametlerler ile işletim sistemini başlatır. Eğer Bios, MBR kaydı bulamazsa önyükleme önceliği

sırasına göre bir sonraki cihaza geçer.

Eğer Bios önyüklenecek bir medya veya sürücü bulamazsa doğal olarak hata verir. Bu hata mesajı Bios’tan

Bios’a göre değişse de genelde “No bootable media found” benzeri bir yazı olur.

MBR NEDİR?
Donanım konulu yazı serimizin 2. yazısından merhaba. Geçen yazımızda Bios Nedir? konusundan yola

çıkarak Boot sürecinden bahsetmiştik.

Boot sürecinden sonra Bios, işlemciyi Sabit Disk’in 0. adresi yani Plaka 0, Kafa 0, Sektör 1 konumuna

yönlendirir ve oradan sonra işlemi orada bulunan dosya sisteminin içindeki kodlara bırakır demiştik.

Blogumuzda anlatacağımız 2 disk bölümlendirme mantığı (dosya sistemi diye bahsettiğimiz)

vardır. MBR ve GPT . Bugün MBR üzerinde duracağız.


MBR Nedir?

MBR, IBM tarafından kullanılmaya başlayan bir disk bölümleme sistemidir. İlk başta sadece IBM sistemleriyle

kullanılmak üzere tasarlanan MBR, 1983 yılında PC DOS 2.0 ile bütün bilgisayarların kullanımına sunulmaya

başlandı. MBR, diğer adıyla Master Boot Record, sabit diskin başlama noktasıdır. Eğer MBR ya da MBR gibi

bir başlama noktası olmasaydı, işlemci BIOS kodlarından sonra ne yapacağını bilemezdi. MBR‘nin adresi asla

değiştirilemez ve bu noktaya işletim sistemleri tarafından kurulum sırasında veriler eklenebilir.

Temel olarak MBR iki bölümden oluşur diyebiliriz.

1-) Master Boot Code

2-) Master Partition Table

MBR‘nin başında 440 byte boyutunda Master Boot Code (Bootstrap) vardır. Bu kod, BIOS’un bootable bir

cihaz ararken varlığına baktığı ve eğer var ise sistemi başlatma işini teslim ettiği kodlardır. Burada var olan

kodlar işletim sistemlerine özel olabilir. Buradaki kod direkt işletim sistemini de başlatabilir, çoklu boot var ise

boot ekranını oluşturacak programının kodlarını da içerebilir. Windows üzerine Ubuntu yüklediğinizde

buradaki kod değişir, Windows’un bootlader’ından Ubuntu’unu GNU GRUP bootloader’ına geçer.

Master Boot Code‘un ardından 4 byte disk imzası alanı gelir. Disk imza alanının ardından 2 byte boş alan gelir.

Bunun nedeni Eğer Master Boot Code, 440 byte alanına sığmaz ise, disk imzası ve bu boş alan

eklenerek Master Boot Code‘un 446 byte değerine ulaştırılabilmesi içindir.

MBR’yi asıl önemli kılan Master Boot Code‘dan ziyade Master Partition Table‘dır. 64Byte boyutuna sahip

bu tablo, boyutundan dolayı sadece 4 adet Primary Partition şeması içerebilir. İsterseniz devam etmeden önce

bir parantez açıp Sabit Disklerde bulunan Partition kavramında bahsedelim.


Partition Nedir?
Partition (bölüm), aynı sabit disk üzerinde yer alan bölümlerdir. Bir sabit disk, birden fazla partition

bulunduruyorsa işletim sisteminde sabit diski birden fazla ayrı disk olarak görünebilir. Örnek vermek gerekirse:

Primary Partition(Birincil Bölüm), MBR‘de şeması bulunan sabit disk bölümlerinin adıdır. Birincil

Bölüm işletim sistemi ve/veya veri depolayabilir ve Birincil Bölümlerin MBR üzerinde direkt şeması bulunur.

Birincil Bölümlerin birinin active ya da boot disk olarak işaretlenmesi gerekir. Bu işaretleme direkt anlamda

işaretleme değildir. Master Boot Code içine işletim sisteminin ve bootloader’ın bu diskte olduğunu belirten bir

kod eklenir. Eğer hiç bir diskte active işareti yok ise BIOS Post Ekranından hemen sonra Master Boot Code

tarafından ekrana bir hata mesajı yazdırılır .Bu mesaj genellikle “No bootable media found” gibi olur. Birincil

Bölümlere yer yer Gerçek Bölüm de denilir.

MBR depolama sistemine sahip bir sabit diskte diğer bölüm şekli de Genişletilmiş Bölüm (Extended

Partition) dür.Birincil Bölümler işletim sistemi veya veriyi depolayabilirken, Genişletilmiş Bölüm işletim

sistemi veya veri depolayamaz. Peki ama o zaman bu bölüm ne iş yapar? Genişletilmiş Bölüm sadece 1 tane

olur ve Mantıksal Bölümlerin (Logical Partitions) bilgilerini üzerinde barındırır. Genişletilmiş Bölümlerde

veriyi Mantıksal Bölümlerdepolar. Yani Genişletilmiş Bölümü Master Partition Table‘a benzetebiliriz.

Genişletilmiş Bölümler sınırsız sayıda Mantıksal Bölüme ayrılabilir.


Açtığımız parantezi kapatalım ve Master Partition Table‘dan devam edelim. Master Partition Table, Birincil

Bölümlerin bilgilerini tutar. Fakat MBR sisteminde Master Partition Table‘da Birincil Bölümlerin şeması

için 64byte ayrılmıştır. Bu yüzden Master Partition Table sadece 4 Birincil Bölümün şemasını içerebilir.

Yani MBR depolama sistemine sahip bir disk maksimum 4, minimum 1 Birincil Bölüm içerebilir.

Peki yukarıda Genişletilmiş Bölüm diye bir bölümden bahsetmiştik burada ondan

bahsetmedik. Windows ortamında 3 tane Birincil Bölümden oluşan bir disk üzerine bir bölüm daha eklemek

istediğinizde Windows, direkt olarak 4. Bölümü Genişletilmiş Bölüm olarak oluşturur ve oluşturduğu

bölüm Mantıksal Bölüm içerecektir. Yani Windows, son bölümün şemasını tutmak için son bölümü Birincil

Disk alanına olarak açar ama onu Genişletilmiş Disk olarak kullanır.

Master Partition Table‘ın alanı kısıtlı dedik ama şimdi de Master Partition Table içine genişletilmiş bölüm

ekledik. Genişletilmiş Bölüm demek sınırsız bölüm oluşturabilmek demektir. Madem Master Partition Table’a

sınırız bölüm sığıyor o zaman genişletilmiş bölüme neden ihtiyaç var? dediğinizi duyar gibiyim.

Genişletilmiş Bölümün sadece bilgisi yani adresi, boyutu gibi bilgileri Master Partition Table üzerinde

tutulur. Mantıksal Bölümlerin yani Genişletilmiş Bölümler üzerinde oluşturulan bölümlerin şeması

Genişletilmiş Bölümün içindeki tabloda tutulur.

MBR mantıksal bölümlerin şemasını barındırmaz sadece tek bir Genişletilmiş Bölümün şemasını barındırır.

Genişletilmiş Bölümün içerdiği Mantıksal Bölümlerin şeması ise sabit diskin

daha ilerideki sektörlerinde bulunur ve buradan bu şemaların bulunduğu sonraki sektörlere link verilir.

Volume Boot Record Nedir?

MBR gibi küçük bir alanda her bölüme ait detaylı bilgilerin ve detaylı dosya şemalarının tutulması imkansızdır.

Bu yüzden MBR mantığına sahip sabit disklerde her bir bölüm, Birincil ya da

Mantıksal farketmeksizin MBR’den ayrı olarak kendi MBR’sine yani özel adıyla Volume Boot Sector’üne

sahiptir. Volume Boot Sector, sadece üzerinde bulunduğu bölümü kontrol eder, üzerinde bulunduğu bölümün

bilgilerini içerir. Bazı kaynaklarda Partition Boot Sector diye bir şeyden bahsedilir. Volume Boot Sector,

Partition Boot Sector ikisi de aynı şeyi ifade eder.

Volume Boot Sector, Disk Parameter Block ve Volume Boot Code‘dan oluşur. Disk Parameter

Block içerisinde ait olduğu bölüme ait boyut, sektör adeti, bölüm adedi ve şeması gibi bilgileri

barındırır. Volume Boot Code ise MBR’de bulunan Master Boot Code ile yaklaşık olarak aynıdır.

Fakat Volume Boot Code‘un aktif olabilmesi iki şart vardır o da bulunduğu Bölümün active olarak
işaretlenmiş olması ve MBR’nin içinde bulunan Master Boot Code tarafından tetiklenmesi gerekir. Active

olmayan diğer bölümlerde de Volume Boot Code bulunur fakat bu kodlar kullanılamazlar yani etkisizdirler.

Son olarak anlattıklarımızın hepsini bir şemada özetlersek:

Herkese iyi çalışmalar dilerim.