12 Nisan 2012 Perşembe

İŞLETİM SİSTEMLERİ


Bilgisayar sistemleri donanım ve yazılım olmak üzere iki temel bileşenden oluşur. Yazılımlar ise uygulama yazılımları ve sistem yazılımları olarak ikiye ayrılır. İşletim sistemleri sistem yazılımlarıdır. Yani bilgisayar kaynakları ile uygulama yazılımları arasındaki bir yazılım katmanıdır. Kaynakların kolay, hızlı ve güvenli bir biçimde hizmet verecek şekilde kullanıcılara (programlara) paylaştırmayı amaçlar.
İşletim Sistemini Oluşturan Kesimler
1.     Ana İşlem Birimi Yönetimi: AİB’nin kullanıcılar arasında paylaştırılmasıdır. Görev yönetimi olarak ta anılır.
2.     Ana Belleğin Yönetimi: Bir işlemin çalışabilmesi için belleğe yüklenmesi gerekir. Ana Belleğin işlemler arasında paylaştırılmasıdır.
3.     Giriş / Çıkış Sistemi: İS yapmak istediği işlemi aygıtın controller’ına gönderir ve sonuçları alır. Bu işlemi yapan yazılım Aygıt Sürücüsüdür.
4.     Kütük Yönetimi: Bellek dışında saklanan veriler üzerinde hızlı ve kolay işlem yapma imkanı sağlar. Bunun için dosya sistemleri kullanılır.
5.     Zaman Uyumlama İşlevleri: Senkronizasyonun sağlanması ve uyumun sağlanmasıdır.
6.     Sistem Komut Yorumlayıcısı: Kullanıcıların girdikleri komutları yorumlayarak bu komutlar için tanımlanan işlemleri yerine getirir.

Ø GÖREV YÖNETİM ALGORİTMALARI
1.     İlk Gelen Önce Algoritması: İlk gelen önce algoritması, görevlerin eş öncelikli olarak ele alındığı ve görevlerin hazır görevler kuyruğuna geliş sırasında işletildiği çok yalın bir yönetim algoritmasıdır. 
2.     En Kısa İşletim Süresi Kalan Önce: Bu algoritmada görevlerin merkezi işlem birimine anahtarlanmasında göz önüne alınan kıstas görevlerin sonlanabilmeleri için arda kalan işletim süreleridir. En kısa işletim süresi kalan göreve öncelik sağlanarak biran önce sistemden çıkması ve bu yolla en kısa ortalama bekleme süresinin elde edilmesi amaçlanır.
3.     Öncelik Tabanlı Algoritma:  Yukarıda açıklanan algoritmaların genişletilmiş biçimidir. Bu algoritma için her görevin bir önceliği bulunur. Bu öncelik değeri görev iskeleti içinde öncelik alt alanında tutulur. Görev öncelikleri merkezi işlem birimini kullanım süresi, ana bellek gereksinimi, giriş/çıkış kanal kullanım sıklığı gibi görevin sistem kaynaklarına ilişkin ölçülebilir taleplerine, ait olunan kullanıcı grubunun özelliklerine, sisteme sunuluş biçimine dayalı olarak belirlenir. Bu algoritmaya göre işlemciye yeni bir görev anahtarlanacağı zaman en yüksek önceliğe sahip görev seçilir.
4.     Zaman Dilimli Algoritma: Zaman dilimli görev yönetiminde görevler eşit uzunluktaki zaman dilimlerinde merkezi işlem birimine sırayla anahtarlanırlar. Örneğin her 5 milisaniyede her gelen saat uyarılarıyla işlemciye anahtarlanan görev yönetici çalışmakta olan görevi hazır görevler kuyruğunun sonuna ekleyerek kuyruk başındaki görevi de işlemciye anahtarlar.
5.     Çok Kuyruklu Algoritma: Bu görevlerin hepsini aynı hazır görevler kuyruğunda bağlamak ve bunların tümüne aynı yöntem algoritmasını uygulamak tüm görevler için uygun olmayabilir.  Bu nedenle değişik yönetim algoritmalarının olumlu yönlerini biraraya getirerek ve sakıncalarını azaltarak çok uyruklu yönetim algoritması kullanılır.

Ø BELLEK YÖNETİM ALGORİTMALARI
1.     Tek ve Bitişken BY: İşletim sisteminin yüklendiği kısım dışında bellek tümüyle tek bir işe atanır.
2.     Değişmez Bölümlü BY: Ana Bellek işletim sistemi alanı ve kullanıcı alanı olarak ikiye bölünmek yerine paylaştırılır.
3.     Yeri Değişir Bölümlü BY:
4.     Sayfalı Bellek Yönetimi:
5.     Kesimli Bellek Yönetimi:
6.     Sayfalı Görüntü Bellek Yönetimi:
7.     Kesimli Görüntü Bellek Yönetimi:
8.     Değişken Bölümlü Bellek Yönetimi: Bir görev hazır görevler kuyruğuna ilk bağlanacağı zaman görev için gerekli alan ana bellekte ayrılır. Bu nedenle bellekteki dolu ve boş bölümler için çizelge tutulur. Gerekli alan aranırken çeşitli algoritmalar uygulanır. Bunlar “best fit” , “first fit” ve “worst fit”.

Belleğin Parçalanması Sorunu: Ana belleğin parçalanması, bitişen alanların görevlere atanan bölümlerle, zaman içinde ufalanması olarak tanımlanır. Belleğin parçalanması sonucu, bellekteki boş alanların toplamı, gereksenen sığaları karşılıyor olmasına rağmen yeni görevlere yer sağlanamaz durumlarla karşılaşılır. Sorunun temel nedeni görevlere gereksinim duydukları alanın bitişik bir bütün halinde işletime başlatıldığı anda sağlanması ve daha sonradan konumlarında değişiklik yapılamamasıdır.

Bitiştirme: Tüm bellek alanına dağılmış durumdaki bölümleri, yerlerini değiştirerek yan yana yerleştirme ve bu yolla bölümler arasında kalan boş alanları da yan yana getirerek tek bir bitişik alan yaratma işlemine denir.

Diske taşıma (Swapping) : Bazı durumlarda bitiştirme işlemleri de bellekte gerekli büyüklükte boş bitişken alan yaratmak için yeterli olmaz. Sisteme sunulan iş, o an sisteme işletimde olan işlerden daha öncelikli ise, görev tanımlarını yaparak hemen işletime alınmasını gerektirir. Kimi az öncelikli görevlerin, işletimleri sonradan tamamlanmak üzere geçici olarak diske taşınması boş bellek alanı oluşturmak için başvurulan bir yol olabilir. Bu yolla  açılan boş bellek alanları yeni görevlerin tanımlanabilmesine ve öncelikli işlerin çalışmasına olanak sağlar. İşletimi tamamlanmamış bir görevin, daha öncelikli görevlere ana bellekte yer açmak üzere, geçici olarak diskte, bu amaçla öngörülen alanlara taşınmasına diske taşıma denir. 


 

Hiç yorum yok:

Yorum Gönder