YBS116 Bilgisayar Donanımı ve İşletim Sistemleri Bilgisayar Açılış İşlemleri Dr. Öğr. Üyesi Fırat YÜCEL Akdeniz Üniversitesi Enformatik Bölüm Başkanlığı Ver. 1.0 / 22-03-19
İçerik POST İşlemleri Disk Önyüklemesi
Power-On Self-Test (POST) İşlemleri Bilgisayarın güç (power) düğmesine basıldığında, tüm donanımlara elektrik verilir. CPU ya enerji verildiğinde, ilk olarak işlemci yongasının iç belleğindeki veriler temizlenir. Program sayıcı adı verilen alandaki veri de temizlenmiş olur. Böylece program kodlarının baştan başlaması sağlanır. Program sayıcı temizlenince, CPU ilk çalıştıracağı kodu aramaya başlar. Bu kod, anakartın üzerinde bir yonga içerisinde bulunmaktadır. Bu yonga, çok küçük bir program ve bilgisayarın nasıl çalışacağını belirlemek üzere bazı ayarları saklar. Bu yongaya BIOS adı verilir. Diğer adıyla; temel giriş/çıkış sistemi (basic input/output system).
POST Şimdi artık bilgisayarın bileşenlerini uyandırmak için BIOS kontrolü ele alır. Power-On Self-Test (POST) adı verilen süreçte, bilgisayarın en olmazsa olmaz parçaları tek tek denetlenir. POST işlemi sırasında sürücülerden bazı sesler duyulabilir veya bazı LED lerin yanıp söndüğü görülebilir. Fakat ekran ilk başta siyahtır. BIOS ilk başta CMOS (complementary metal oxide semiconductor) yongası içerisindeki RAM belleğin küçük bir bölgesini (64 bayt) kontrol eder. Bu RAM bellek içerisindeki veriler, BIOS pili yardımıyla hafızada tutulur. CMOS, bilgisayarda kurulu donanımlar hakkında kayıtlar içerir. BIOS, POST işlemine bu bilgileri kullanarak devam eder.
POST Donanım bileşenleri belirlendikten sonra, BIOS ve CPU donanım bileşenlerinin düzgün çalışıp çalışmadığını kontrol eder. Bunun için, BIOS, değişik lokasyonlardaki kodları okuması için CPU ya direktif verir ve CPU bu kodları BIOS yongası üzerinde önceden tanımlı kayıtlarla karşılaştırır. BIOS, sistemdeki temel donanımlardan klavye, fare, sabit disk veya disket sürücü gibi aygıtların aygıt sürücülerini ve kesme işleyicilerini belleğe yükler. Bir tuşa basıldığında, klavye, o tuşa özgü bir kod üretir ve aygıt sürücüsü bu kodu CPU nun anlayabilmesi için başka bir koda dönüştürür. Kesme işleyicisi ise, mikroişlemcide çalıştırılmak üzere bekleyen kodları CPU nun dikkatine sunma görevini üstlenir.
POST Bilgisayarın tüm işlemlerinin, senkronize edilmiş bir şekilde yerine getirildiğinden emin olunduktan sonra, sırasıyla, CPU, sistem zamanını veya gerçek zamanlı saati kontrol eder. BIOS, sistem veriyolu üzerinden, tüm temel bileşenlerin çalıştığını bildiren bir kodu CPU ya gönderir. Veriyolu, anakart üzerindeki baskılı elektrik devrelerden oluşur. Veriyolları sayesinde bütün bileşenler birbirine bağlanır. POST, ekran kartında bulunan belleği ve görüntü sinyallerini test eder. BIOS kodları ve bellek konfigürasyonu bilgisayarın ekranında görünen ilk şeylerdir. BIOS, belleğin 0000:0472 adresinden soğuk önyükleme (cold boot) ve sıcak önyükleme (warm boot) olup olmadığını kontrol eder. Soğuk önyükleme, bilgisayarın daha önceden kapatıldığını, sıcak önyükleme ise yeniden başlatıldığını ifade etmektedir. Eğer bu bellek adresinde 1234 değeri varsa, BIOS yeniden başlatma olduğunu anlayıp POST işlemini yapmadan geçer.
POST Soğuk önyükleme için, RAM yongalarının düzgün çalıştığından emin olmak için birçok test gerçekleştirir. Tesler, her yongaya yazıp, sonra okuma ve önceki yazılanla karşılaştırma şeklinde yapılır. Bu noktada, bazı kişisel bilgisayar ekranlarında hızla değişen bir sayaç gözükür. POST işlemi, dahili disket sürücü, optik sürücü ve sabit disk sürücülerinin özel adreslerine sinyaller gönderir ve daha sonra sürücülerin kullanımda olup olmadığını belirlemek üzere cevaplarını izler. POST işleminin sonunda, BIOS kontrolü bilgisayarın işletim sistemine bırakır. Bu işleme önyükleme (boot) işlemi adı verilir.
BIOS ile CMOS Farkı BIOS CMOS Önyükleme sürecini yürütür. Aygıt yazılımı (firmware) BIOS konfigürasyon ayarlarını tutar. Özel bellek BIOS Temel giriş/çıkış sistemi Kalıcı bellek Tümleşik metal oksit yarıiletken Geçici bellek CMOS Önyükleme sırasında donanımları ayarlar ve çalışma zamanı servislerini belirler. Tüm BIOS ayarlarını tutar.
BIOS Disk Önyüklemesi BIOS tüm donanımları kontrol ettikten sonra, bilgisayarın ROM BIOS unda bulunan önyükleme programı, işlemciden, C: sürücüsünün (CD-ROM, flash bellek veya disket sürücü vb. olabilir) ana önyükleme sektöründe (master boot sector) bulunan bir programı çalıştırmasını ister. NTLDR (NTLoaDeR) adı verilen bu kod, sürücüde önyükleme kodlarının nerede olduğunu söyler. Eğer birden fazla işletim sistemi varsa, bilgisayarda yüklü işletim sisteminin seçimi ekranı gelir. Windows açılış ekranı gelmeden önce, bilgisayar donanımlarının tanımlanması için NTDETECT.COM dosyası çalıştırılır. Tüm donanımları, Windows Kayıt Defteri (Registry) den kontrol eder. Kayıt defteri, bazı düşük seviye programları belleğe yükler. Bu programlar, makine düzeyinde donanımı kontrol eden bazı kodlardır. Sonrasında tak-çıkar aygıtların sürücüleri belleğe yüklenir. Sabit disk sürücüleri belleğe yüklenir. Ekran kartı sürücüleri belleğe yüklenir. Önemli servis yazılımları (disk birleştiricisi, bölümlendirme yöneticisi, ) belleğe yüklenir. Windows kullanıcı giriş ekranı görüntülendiğinde önyükleme işlemi tamamlanır.
UEFI (Unified Extensible Firmware Interface) Önyükleme UEFI Firmware CPU ve yonga seti yüklemesi, sürücülerin yüklemesi vb. işlemler gerçekleştirilir. UEFI Önyükleme Yöneticisi UEFI aygıt sürücüleri yüklenir, önyükleme uygulaması yüklenir. Windows Önyükleme Yöneticisi (bootmgfw.efi) Kullanıcı tarafından seçilen Windows işletim sistemi yüklenir. Windows İşletim Sistemi Yükleyici (winload.efi) Windows işletim sistemi yüklenir, ExitBootServices() rutini çağırılır. Kernel (ntoskrnl.exe)
Merkezi İşlem Birimi Temel Çalışma Mantığı
Temel Kavramlar Mikroişlemci Mikrodenetleyici Mikrobilgisayar 12
Mikroişlemci (Microprocessor) Mikroişlemcinin yapısı Mikroişlemci; aritmetiksel ve mantıksal işlemlerin yapıldığı birimdir. Diğer adı, merkezi işlem birimi (central processing unit) dir. Mikroişlemci aşağıdaki kısımlardan oluşur; Aritmetik Mantık Birimi (ALU): Aritmetiksel ve mantıksal işlemler bu birimde gerçekleştirilir. İşlemcinin çekirdeğidir. Saklayıcı (Register): İşlemci içinde verinin kaydedildiği bellektir. Kontrol Birimi (Control Unit): İşlemci içerisinde veri işlemlerinin/iletiminin kontrolünü sağlar. Veriyolu (Bus): Verilerin taşındığı yollardır. Adres, data ve kontrol veriyolları bulunur. Komut Çalıştırma Aşamaları: Fetch (Getir) Decode (Çöz) Execute (Çalıştır) Store (Sakla) 13
VERİYOLLARI (BUSES) Genel Amaçlı Saklayıcılar Accumulator (AC): ALU da yapılan işlemler sırasında kullanılan en temel saklayıcıdır. Program Counter (PC): Program satırlarının numarasını saklar. Instruction Register (IR): Komutların tutulduğu saklayıcıdır. µp Other registers Memory Address Register Memory Data Register Address bus Data bus Main Memory ALU Control Unit Control bus (read / write) Clock 14
Mikrobilgisayar (Microcomputer) Bir mikrobilgisayar, bilgisayarın tüm bileşenlerinin (işlemci, bellek, giriş/çıkış birimleri) küçük bir devrede birleştirilmiş halidir. Tek bir yonga içerisinde olmasına gerek yoktur. Mikrobilgisayarın temel bileşenleri 15
Mikrodenetleyici (Microcontroller) CPU (Mikroişle mci) Adres Data Kontrol Adres Data Kontrol Adres Data Kontrol Bellek G/Ç Aygıtları Mikrodenetleyiciler, mikroişlemcinin yanı sıra çevresel bileşenlerin de tek bir yonga içerisinde yer aldığı cihazlardır. Mikroişlemci ile mikrobilgisayar arasında bir yerdedir. Data veriyolu Mikrodenetleyicinin temel bileşenleri 16
Mikrodenetleyici Mimarileri Bellek organizasyonu açısından Von Neuman Harvard Mikrodenetleyici Mimarileri CISC Komut işleme tekniği açısından RISC 17
Bellek Mimarileri (1) Von Neumann Program ve verinin aynı bellek üzerinde saklandığı bellek mimarisidir. Veriler kod olarak ya da kodlar veri olarak saklanabilir. Von Neumann mimarisi 18
Bellek Mimarileri (2) Harvard Program belleği ve veri belleğinin ayrı olduğu bellek mimarisidir. En iyi avantajı, hem program belleğine hem de veri belleğine eşzamanlı olarak erişim sağlanabilmesidir. Harvard mimarisi 19
Komut Mimarileri (1) CISC CISC: Complex Instruction Set Computer Daha az komutla daha çok işlem yapılabilir. Komutlar uzun olduğundan çözme ve çalıştırma süresi uzar. Intel, AMD türü işlemciler CISC yapısına sahiptir. Ama RISC şeklinde işlemleri parçalara bölerek işlem yaparlar. 20
Komut Mimarileri (2) RISC RISC: Reduced Instruction Set Computer Daha az sayıda komut içerir. Sabit uzunlukta komut yapısı vardır. Doğrudan bellek üzerinde işlem yapan komutlar olmayıp, işlemler iç saklayıcılarda çalıştırılır. Belleğe sadece okuma/yazma işlemleri için erişilir. RISC işlemcilerde çok sayıda saklayıcı bulunur. 21