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