|
İŞLETİM SİSTEMLERİ
İşletim sistemleri konusu, bilgisayar bilimleri kapsamındaki en
temel konulardan birini oluşturmaktadır. İşletim sistemleri,
bilgisayar sistemlerinin gelişmesine paralel olarak gelişme
göstermiştir. Çünkü, yeni gelişen bilgisayar mimarisi, yeni istekler
ve ihtiyaç duyulan güvenliğe göre işletim sistemleri gelişmiştir. Bu
nedenle, kullanıcı ile bilgisayar arasında bir köprü görevi yürüten
ve donanıma en yakın yazılım birimi olan işletim sisteminin
ayrıntılarını incelemeye geçmeden önce, bir bilgisayar sisteminin
yapısını genel olarak ele almak gerekmektedir.
Bir bilgisayar sisteminin genel olarak 4 bileşeni vardır.
1.Donanım (İşlemci (CPU), belek ve I/O üniteleri gibi)
2.İşletim Sistemi (Ms-Dos, Unix, OS/2 gibi)
3.Sistem Yazılımları (Derleyiciler, Veritabanı ve Network
Yazılımları)
4.Uygulama Yazılımları (Kullanıcıların kendi geliştirdikleri
yazılımlar)
Bu noktada şu hususu açıklamak gerekir ki CPU (Central Processor
Unit) bilindiği gibi bir bilgisayar sisteminin en temel bileşeni
olup, aynı şekilde bilgisayar sistemlerindeki disk, printer, disket,
terminal (ana makineye bağlı, sıradan uç kullanıcılar) vs. gibi I/O
(Input/Output) üniteleri donanım kısmı olmaktadır.
Yazılım (software) ise, hem bilgisayar sistemini oluşturan donanım
birimlerinin yönetimini hem de kullanıcıların işlerini yapmak için
gerekli olan programlardır. Yazılım olmaksızın bir bilgisayar
sistemi, bir takım elektronik kartlar, kablolar ve mekanik bazı
parçalardan ibaret bir cihazdır. Bir bilgisayar sistemi, üzerine
işletim sistemi (Operating Systems) ve onun üzerine de diğer
yazılımların yüklenmesi ve çalıştırılmasından sonra gerekli
işlevleri yerine getirebilmektedir.
Bilgisayar yazılımları genel olarak 2 ana grupta incelenebilir.
· Sistem Yazılımları (System Software)
· Uygulama Yazılımları (Application Software)
Sistem Yazılımları (System Software); bilgisayarın kendisinin
işletilmesini sağlayan, işletim sistemi, derleyiciler (compilers)
(Yazılım programında, yazılan programı makine diline çeviren
program), çeşitli donatılar (facility) gibi yazılımlardır.
Uygulama Yazılımları (Application Software); bu kullanıcıların
işlerine çözüm sağlayan örneğin çek, senet, stok kontrol, bordro,
kütüphane kayıtlarını tutan programlar, bankalardaki müşterilerin
para hesaplarını tutan programlar vs. gibi yazılımlardır.
Bütün sistem programları içinde en temel yazılım işletim sistemidir
ki, bilgisayarın bütün donanım ve yazılım kaynaklarını kontrol
ettiği gibi, kullanıcılara ait uygulama yazılımlarının da
çalıştırılmalarını ve denetlenmelerini sağlar.
Modern bir bilgisayar sistemi, bir veya birden fazla işlemci (ya da
diğer bir söylemle “CPU”), gerçek bellek (RAM), saatler,
terminaller, diskler, bilgisayar ağı (network) birimleri, yazıcı
üniteleri, CD sürücüsü, disket ve teyp üniteleri gibi I/O
ünitelerinden oluşmaktadır. Doğal olarak bir bilgisayar sistemi
oldukça karmaşık bir yapıdadır.
Programcıları, donanımın bu karmaşık yapısından etkilenmemelerini
sağlamak ve disk gibi donanım ünitelerinin nasıl çalıştıklarını
anlamak zorunda bırakılmamaları için, donanımın üzerine ilave edilen
yazılımların katmanlar şeklinde (layered system) oluşturulmaları ve
bu sayede çok daha kolay bir şekilde, sistemin bütün parçalarının
yönetilebilmesi şeklinde bir yapılanma, uzun yıllar önce
geliştirilmiş bir yaklaşımdır.
Bu yapının en alttaki üç katmanı donanımı oluşturmaktadır. En
alttaki katman, fiziksel üniteler, entegre devreler, kablolar, power
(elektrik destek) üniteleri, disket sürücüleri, disk üniteleri ve
diğer benzeri donanım birimlerinden oluşmaktadır. Bu katmanın mimari
yapısı ile ilgilenmek ve bunları çalışma prensiplerini geliştirmek
elektronik mühendislerinin işidir.
Sekil 1. Bilgisayar Sistem Katmanları
Fiziksel üniteleri (donanım) doğrudan kontrol eden ve fiziksel
katmanın bir üstündeki en ilkel yazılım düzeyini oluşturan katman,
“microprogram” dır. Bu katman genellikle “read-only” (yalnızca
okunabilir) bellek (ROM) sahasında bulunur. Microprogram da ekleme
(add), taşıma (move), karşılaştırma (compare) gibi makine diline ait
temel komutları adım adım yerine getirir. Microprogram, örneğin, Add
işlemini yerine getirmek için eklenecek sayının nerede yer aldığını
saptar ve üzerine eklenecek sayıyı ilave ettikten sonra sonucu elde
eder.
Microprogramın yorumladığı komut seti (instruction set), makine dili
(machine language) katmanını oluşturur ki, bu gerçekte makinenin
gerçek bir donanım parçasını oluşturmakta ve bir bilgisayar da
donanımın gerçek bir parçasıymış gibi nitelenebilmektedir. Bu
nedenle bazı makinelerde Microprogram, donanımın içinde
varsayıldığından ayrı bir katman şeklinde bulunmaz.
Makine dili, genel olarak 50 ile 300 arasında komuta (intruction)
sahiptir. Veri taşıma, aritmetik işlem yapma ve değerleri kıyaslama
gibi işlevleri yerine getirir. Makine dili, yazıcı ve disket sürücü
gibi I/O (input/output) ünitelerinin denetimini özel yüklenmiş
bilgiler sayesinde yapmaktadır.
Bir bilgisayar sisteminin dördüncü katmanında yer alan işletim
sisteminin temel işlevi, donanımın karmaşıklığını kullanıcıya
yansıtmamak ve daha elverişli ortam hazırlayıp, kullanıcının kolayca
işini yapmasını sağlamaktır. Aşağıdaki gibi düşünecek olursak;
İşletim Sistemi Olmasaydı ; Diyelim ki, işletim sistemi olmayan bir
bilgisayarın önünde oturuyorsunuz ve bu bilgisayarın disket
sürücüsüne disketinizi taktınız ve bu disketteki “LATS” isimli oyun
programını çalıştırmak istiyorsunuz. İşletim sistemi olmaksızın
yapmanız gereken, daha doğrusu vermeniz gereken komutları şöyle bir
hayal etmeye çalışın.
1. Disket sürücüsü takılı mı?
2. Takılıysa disket sürücüde disket var mı? ve dönüyor mu?
3. Dönüyorsa doğru hızda mı dönüyor?
4. Disket sürücüsünün okuyucu kafası disketin neresinde duruyor?
5. “LATS” programının disket üzerindeki yeri neresi? Örneğin
üzerinde 80 kayıt izi bulunan bir diskette, programın kaydedilmeye
başladığı iz hangisi, toplam program uzunluğu kaç iz tutuyor?
6. Sürücünün kafasını uygun izin üzerine gönder...
7. Uygun izin üzerine geldi mi?
8. Geldiyse, izin başlangıç noktasının okuyucu kafanın altına
gelmesini bekle.
9. Disket sürücüdeki kayıtları okumaya başla ve belleğe taşı. (tabii
belleğin program yüklemeye uygun bir noktasından başlayarak,
bellekte boş yer yoksa bellekteki kullanılmayan bilgileri sil,
bilgiler kullanılıyorsa bu bilgileri diskin boş bir yerine geri
almak üzere kaydet ve belleği boşalt.)
10. Birinci iz bitince, okuyucu kafayı bilginin devam ettiği bir
sonraki izin üstüne gönder ve bu hareket tamamlanıncaya kadar
bekle...
11. İzleri okumayı ve belleğe yerleştirmeyi program dosyasının
sonuna gelinceye kadar tekrarla.
12. Disketten okuma tamamlanınca, disket sürücüyü durdur ve programı
çalıştırmaya başla.
Bu uzun liste bile abartılı şekilde kısaltılmış bir listedir.
Sürücünün okuyucu kafasının belirli izin üzerine gönderilmesi bile
başlı başına bir iştir aslında. Tabii birde bu işlemi makinenin
anlayacağı bir dille yapmak gerekiyor. Yani, ikilik düzende 1 ve 0’
ları kullanarak PROM’ daki temel bilgilerle (ekleme, çıkarma,
karşılaştırma, vs.) yapmak gerekiyor.
Oysa; işletim sistemi olan bir bilgisayarda, kullanıcının tek
yapması gereken çalıştırmak istediği programın adını klavyeden yazıp
ENTER tuşuna basmak veya simgesine (icon) tıklamaktır. Program
dosyasının disket sürücüdeki yerinin bulunması, sürücüyü denetleyen
kontrol devreleriyle gerekli görüşmeleri yapıp kafanın gerekli
hareketleri yapmasını sağlayarak kayıtların belleğe aktarılması
işinin sağlıklı bir şekilde yapılması, tamamen işletim sisteminin
sorumluluğundadır.
İşletim Sistemi, üzerinde yer alan bazı yazılımlar “Sistem Yazılımı”
olarak anılır. Örneğin derleyiciler (compilers) ; yazdığımız
programı makine diline çeviren ara program, editörler (editors),
yararlı programlar (utility) ; virüs temizleyen programlar gibi
gerçek iş için yardımcılardır, veritabanı yönetim sistemleri
(database management system) ve bilgisayar ağı yazılımları (network
software) yine birer sistem yazılımlarıdır. Ancak bu yazılımlar
İşletim Sisteminin kendi öz parçaları değildir.
Özet olarak İşletim Sistemi, aynı zamanda donanım üreticisi olan
veya yalnızca yazılım geliştiren özel bir firma tarafından yazılıp
pazarlanan ve bir bilgisayar sisteminin donanım ve yazılım
kaynaklarını kontrol eden ve kullanıcılarında kendi çözümlerini
geliştirebildikleri ortamı hazırlayan bir sistem yazılımıdır.
a) İşletim Sistemi Tanımı
En büyüğünden en küçüğüne, bütün genel amaçlı bilgisayarlarda
çalışan programlar, bir işletim sistemine gereksinim duyarlar. Bu
yüzden bilgisayarlarda herhangi program çalıştırılmadan önce İşletim
Sistemi ile programların ana belleğine (RAM) yerleştirilmeleri
gerekir. Bu işlem genellikle bilgisayar ilk açıldığı zaman otomatik
olarak yapılır ve HHD’ deki İşletim Sistemi ana belleğe yüklenir.
Bir işletim sisteminden beklenen hizmet, donanım ve yazılım
kaynaklarının uyumlu ve verimli bir şekilde birlikte işletilmesidir.
Örneğin kullanıcı Cobol veya Pascal dili ile geliştirdiği uygulama
programını, bir bilgisayar sisteminde çalıştırabilmesi için,
uygulama programı ve verilerini yazabileceği bir disk ünitesi,
verilerini yazdıracağı yazıcı ünitesi, bu programı işletecek işlemci
(CPU) ve gerçek bellek gibi donanım birimlerinin yanı sıra derleyici
(compiler), yükeyici (loader) ve network yazılımları gibi yazılım
birimlerine de ihtiyaç vardır.
İşletim sistemini, bir bilgisayar sisteminde kullanıcı ile iletişim
kurarak, donanım ve yazılım nitelikli kaynakların kullanıcılar
arasında adil bir biçimde paylaştırılmasını ve donanım ile yazılım
birimlerinin etkin bir biçimde kullanılmalarını sağlayan sistem
programları topluluğuna denir.
İşletim Sistemi, bilgisayar donanımı ile bilgisayar kullanıcısı
arasında bir arayüz (interface) görevini gören programlar
topluluğudur. Bu programlar topluluğunun genel amacı, bilgisayar
kullanıcılarına programlarını çalıştırabilecekleri ortamı yaratmak
ve bilgisayar sisteminin etkin ve verimli olarak kullanılmasını
sağlamaktır.
b) Bilgisayar Sistem Yapısı
Modern ve genel amaçlı bir bilgisayar sistemi, işlemci (CPU) ve
belleği paylaşmak için bir omurgaya (common bus) bağlanmış bulunan
bir çok ünite kontrol biriminden (device controllers) oluşur.
Bir bilgisayar sistemi açıldığında yani akım verildiğinde (power on)
veya “Boot” edildiğinde, bir başlatma programına gereksinim vardır.
Bu başlatma programı, sistemin bütün birimlerini başlama pozisyonuna
getirir.
Bu başlatma programı işletim sistemine nasıl yükleyeceğini
bilmelidir ve işletim sisteminin çalışmasını başlatabilmelidir. Bunu
gerçekleştirebilmek amacıyla da İşletim Sisteminin çekirdeğinde
(Kernel) yer almalı ve onu belleğe yerleştirmelidir. Sonra işletim
sistemi ilk işi (proses) işletmeli ve bazı işlevlerin tamamlanmasını
beklemeye başlamalıdır. Beklediği böyle bir işlev (olay) donanım
veya yazılımdan kaynaklanacak bir kesinti (interrupt) olabilir.
En basit anlamıyla Kesinti (interrupt), işletim sisteminin o sırada
yapmakta olduğu işi bırakıp, kesintiyi yaratan işe (proses)
anahtarlanmasıdır. Kesintiler, bir bilgisayar mimarisinin önemli bir
parçasını oluşturur. Her bilgisayar tasarımı kendi kesinti
mekanizmasına sahiptir. Fakat birkaç fonksiyon geneldir.
Dünya üzerindeki tüm arama motorlarına
kayıt...
Google -
Yahoo -
Altavista -
Dogpile -
Lycos
-
Msn
-
Netbul -
Arabul
Bizlere
info@tiannowebtasarim.com ,
webmaster@tiannowebtasarim.com
mail adreslerinden ve
İletişim formundan ulaşabilirsiniz...
|
|
E-Mail :
info@tiannowebtasarim.com
ve webmaster@tiannowebtasarim.com |
 |