İşletim Sistemlerine Giriş

advertisement
İşletim Sistemlerine Giriş
İşletim Sistemleri ve Donanım
İşletim Sistemlerine Giriş/ Ders01
1
İşletim Sistemi ?
Yazılım olmadan bir bilgisayar METAL yığınıdır.
Yazılım bilgiyi saklayabilir, işleyebilir ve daha önceden saklanmış
bilgiyi kullanabilir.
YAZILIM İKİYE AYRILIR:
1. Sistem Programları : Bilgisayarın kendisine ait
olan işleri yerine getirir.
2. Uygulama Programları: Kullanıcının
problemlerini çözer.
İşletim Sistemlerine Giriş/ Ders01
2
İşletim Sistemi ?
En temel SİSTEM PROGRAMI İŞLETİM SİSTEMİ dir.
Bilgisayarın tüm kaynaklarını kontrol
eder ve uygulama programlarının
yazılabilmesi için gerekli olan temeli
oluşturur.
Uygulama programları işletim sistemi
üzerine yazılır.
İşletim Sistemlerine Giriş/ Ders01
3
Bilgisayarın içerisinde neler vardır?
Bir ya da daha fazla işlemci,bellek,
monitör, diskler, ağ aygıtları, yazıcılar,
cd rom, dvd rom ve daha birçok
Giriş/Çıkış (I/O) aygıtı vardır.
PROBLEM :
Bilgisayarda çalışacak programın tüm bu
bileşenlerin nasıl çalıştığını ve bu
bileşenler ile nasıl haberleşeceğini
bilmesi gereklidir.
İşletim Sistemlerine Giriş/ Ders01
4
ÇÖZÜM
Bu problemi ortadan kaldırmak için
donanım ile programcılar arasına
karmaşıklığı azaltan ve programcıya
yardım eden bir katman konulması
tasarlanmıştır.
Bu katmanda bulunan yazılama
İŞLETİM SİSTEMİ denilir.
İşletim Sistemlerine Giriş/ Ders01
5
BİLGİSAYAR SİSTEMİ
UYGULAMA PROGRAMLARI
DERLEYİCİ
DÜZENLEYİCİ
KULLANICI
PROGRAMLARI
KOMUT YORUMLAYICI
İŞLETİM SİSTEMİ
SİSTEM
PROGRAMLARI
MAKİNE DİLİNDE PROGRAMLAR
MİKRO PROGRAM (ROM)
DONANIM
DONANIM
İşletim Sistemlerine Giriş/ Ders01
6
BİLGİSAYARIN DONANIMI
Bir işletim sistemi üzerinde çalıştığı
donanıma tamamen bağımlıdır.
İşlemci
(CPU)
Bellek
(Memory)
Monitör
Klavye
Disket
Harddisk
Video
Kontrolcüsü
Klavye
Kontrolcüsü
Disket
Kontrolcüsü
Disk
Kontrolcüsü
YOL (BUS)
İşletim Sistemlerine Giriş/ Ders01
7
İŞLEMCİLER (CPU)
Bilgisayarın beynidir.
Bellekten komutları (instruction) alır (fetch),
komutun anlamını çözer (decode) ve
çalıştırır (execute).
İşletim Sistemlerine Giriş/ Ders01
8
İŞLEMCİLER (CPU)
Her işlemcinin çalıştırabileceği komutlar
sınırlıdır ve o işlemciye özeldir.
Bu nedenle Pentium işlemci için yazılan
kod, SPARC işlemci üzerinde çalışmaz.
İşletim Sistemlerine Giriş/ Ders01
9
İŞLEMCİLER (CPU)
İşlemci üzerinde YAZMAÇ (REGISTER) adı
verilen saklama birimleri bulunur. Bu birimler
son derece hızlıdırlar.
İşlemcinin çalıştırdığı komutlar genelde
yazmaçlar üzerinde işlem yapar.
İşletim Sistemlerine Giriş/ Ders01
10
ÖZEL YAZMAÇLAR(REGISTERS)
Program Sayacı (Program Counter-PC):
getirilecek olan bir sonraki komutun bellek adresini tutar.
Yığın İşaretçisi (Stack Pointer-SP):
Bellekte bulunan yığın alanının en üst adres bilgisini tutar.
Program Durum Kelimesi(Program State
Word-PSW):
Çeşitli durum bilgilerinin tutar. Komutların işlenmesi
sonucunda oluşan çeşitli olayların bilgisini tutar. Ayrıca
kip(mode) bilgisini tutarlar.
Kullanıcı Kipi(User Mode) , Çekirdek Kipi (Kernel Mode)
İşletim Sistemlerine Giriş/ Ders01
11
CPU larda İki Kip Bulunur.
*Kullanıcı Kipi (User Mode)
*Çekirdek Kipi (Kernel Mode)
PSW deki 1 bit bunu kontrol eder.
CPU çekirdek kipinde tüm komutlarını
kullanabilir, kullanıcı kipinde belirli bir komut
alt kümesi kullanabilir.
Bu kipler donanıma direkt erişimi denetim
altında tutmak için kullanılır.
İşletim Sistemlerine Giriş/ Ders01
12
CPU larda İki Kip Bulunur.
İşletim sistemi Çekirdek Kipinde çalışır.
Kullanıcı programları kullanıcı kipinde çalışır.
Eğer kullanıcı Giriş/Çıkış işlemi, bellek ile
ilgili işlemler, ... yapacak ise bu işlemleri
işletim sistemi üzerinden yapar.
Bu şekilde sistem denetim altında korunmuş
olur.
İşletim Sistemlerine Giriş/ Ders01
13
BELLEK (MEMORY)
Bellek CPU hızına yakın hızlara sahip
depolama donanımlarıdır.
CPU bilgileri bellekten alır ve belleğe yükler.
Bellek hızları CPU hızına oranla yavaş
olduğu için katmanlar şeklinde tasarlanırlar.
İşletim Sistemlerine Giriş/ Ders01
14
BELLEK (MEMORY)
1 nano
saniye
2 nano
saniye
10 nano
saniye
10 mili
saniye
Yazmaçlar (Registers)
<1 KB
ÖN BELLEK (Cache)
ANA BELLEK (RAM)
DİSK
İşletim Sistemlerine Giriş/ Ders01
1 MB
64-512
MB
5-100
GB
15
BELLEK (MEMORY)
Bilgi önbellekte aranır orada varsa
yazmaçlara alınarak kullanılır, yoksa
bellekte aranır.
Bilgi bellekte de bulunmuyorsa diskten
önce belleğe daha sonra ön belleğe ve
oradan da işlemciye getirilerek kullanılır.
İşletim Sistemlerine Giriş/ Ders01
16
BELLEK (MEMORY)
Bir program derlenip, bağlandıktan
sonra fiziksel bellekte nereye
yerleştirileceğini, programın hangi
adresten başlayacağını bilemez.
Bu yüzden derleyici ve bağlayıcı programın 0
adresinden başlatırlar.
İşletim Sistemlerine Giriş/ Ders01
17
BELLEK (MEMORY)
Örneğin, bir komut 10000 adresindeki veriyi
yüklemek istesin. Program ve tüm verisi
bellekte 50000 adresinden itibaren
yerleştirilmiş olsun. İlk komut çalıştırığında
komut 10000 numaralı adrese erişmeye
çalışacaktır.
Bu adres doğru değildir. Erişimlesi gereken
gerçek adres 60000 dir.
İşletim Sistemlerine Giriş/ Ders01
18
BELLEK (MEMORY)
Bu problem için iki yazmaç kullanılır. Taban
yazmacı (base register), ve sınır yazmacı( limit
register). Program belleğe atıldığında ve
çalışmaya başladığında, taban yazmacı programın
başlangıç adresini, sınır yazmacı ise programın
tüm verisi ile birlikte bittiği adresi tutar.
Program tarafından kullanılan adrese sanal adres
(virtual address), belleğin kullandığı adrese ise
fiziksel adres (physical address) denilir. Bu
işlemleri ve çevrimi kontrol eden bellek yönetim
birimi MMU (memory
management unit) dir.
İşletim Sistemlerine Giriş/ Ders01
19
Giriş/Çıkış (I/O)
Bir I/O aygıtı, aygıtın kendisi ve bir
kontrolcü(controller) olmak üzere iki parçadan
oluşur.
Kontrolcü aygıtın kendi üzerinde yer alan bir çiptir.
Aygıtın çalışmasını kontrol eder. İşletim sistemi
yapmak istediği komutları kontrolcüye gönderir,
sonuçları da kontrolcüden alır.
Kontrolcü ile konuşan, komut gönderen ve
cevaplar alan yazılımı aygıt sürücüsü (device
driver) denilir.
İşletim Sistemlerine Giriş/ Ders01
20
Giriş/Çıkış (I/O)
Bu aygıtın kullanılması için işletim sistemine
eklenmesi gereklidir.
1.yöntem : işletim sisteminin çekirdeğine aygıt
sürücüsü eklenir ve yeni çekirdek oluşturulur.
2.yöntem: İşletim sisteminin sistem dosya sistemine
eklenir ve sürücünün nerede bulunacağı söylenir.
Sistem yeniden başlatılır. İşletim sistemi ihtiyaç
halinde yükler.
3.yöntem: İşletim sistemi sürücüyü çalışırken kabul
eder, yükler ve kullanır. (USB)
İşletim Sistemlerine Giriş/ Ders01
21
Giriş/Çıkış (I/O)
Kullanıcı I/O için bir istek yapar. Bu isteği işletim
sisteminin sunmuş olduğu özel prosedürleri
kullanarak yapar.
İşletim sistemi gelen isteği uygun aygıt
sürücüsünün ilgili prosedürüne gönderir.
I/O bitince sürücü veriyi ya da sonuç ne ise
belirtilen yere koyar.
Veri okunurken CPU bekler. Bu işleme yoğun
bekleme(busy waiting) denilir.
İşletim Sistemlerine Giriş/ Ders01
22
Giriş/Çıkış (I/O)
ikinci yöntem, sürücü başlatılır ve sürücüye işini
bitirdiğinde bir sinyal-kesme(interrupt) göndermesi
söylenir.
Sürücü komutu alır kendisi çalışmaya başlar ve
işletim sistemine geri döner. İşletim sistemi istekte
bulunan programı beklemeye alır ve başka birini
çalıştırır.
Kontrolcü işini bitirdiğinde bir bilgilendirme sinyali
-kesme (interrupt) gönderir. Bloklanan programa
geri dönülür.
İşletim Sistemlerine Giriş/ Ders01
23
Giriş/Çıkış (I/O)
üçüncü yöntem, özel DMA (Direct Memory
Access) çipleri kullanmaktır.
Bu çip CPU kullanılmadan kontrolcü ile bellek
arasındaki bir akışını yönetir.
CPU, DMA ya hangi aygıttan ne kadar veri
alacağını ve nereye koyacağını söyler. DMA
işlemleri kendisi yaparken CPU başka işler yapar.
DMA işini yaptığında bir kesme oluşturur ve CPU
yu bilgilendirir.
İşletim Sistemlerine Giriş/ Ders01
24
YOLLAR (BUSES)
L2
Önbellek
önbellek
yolu
SCSI
CPU
USB
Klavye
yerel
yolu
PCI
Bridge
bellek
yolu
ISA
Bridge
Ana Bellek (RAM)
IDE
Disk
Fare
Graphic
Adaptor
PCI YOLU
(BUS)
kullanılabilir
PCI yuvaları
Monitör
ISA YOLU
(BUS)
Modem
Ses
Kartı
Yazıcı
İşletim Sistemlerine Giriş/ Ders01
kullanılabilir
ISA yuvaları
25
YOLLAR (BUSES)
Bilgisayardaki aygıt ve donanımlar arasındaki hız
farkı nedeniyle farklı yollar vardır.
ISA – Industry Standard Architecture IBM
PCI- Peripheral Component Interconnect
İşletim Sistemlerine Giriş/ Ders01
26
İşletim Sistemlerine Giriş
İşletim Sistemleri ve Donanım
İşletim Sistemlerine Giriş/ Ders01
27
Download