BTÖ 303 İşletim Sistemleri Bellek Yönetimi

advertisement
İşletim Sistemleri
Operation Systems
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
Bu derste,
İşletim sistemleri mimarisi,
 İşletim sistemi katmanları ve işlevleri,
 İşletim sistemlerinin işlevleri,
 İşlem yönetimi,

◦ İşlem kontrol blokları,
◦ İşlem durum algoritmaları

Bellek yönetimi,
◦ Bellek yöneticisinin görevleri
◦ Sanal Bellek (virtual memory)
◦ Sayfalama (paging)
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
İşletim Sistemleri Mimarisi

Modern bilgisayar sistemleri Von Neumann ilke
ve bileşenlerine sahiptir.
Von Neumann
bileşenlerine sahip bilgisayar sistemlerinde
merkezi işlem birimi, ana bellek ve giriş/çıkış
birimlerinden oluşmaktadır. İşletim sistemlerinin
temel amaç bu kaynakların en verimli ve etkin
biçimde kullanılmalarını sağlamaktır.
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
Von Neumann Mimarisi
Merkezi İşlem Birimi
Aritmetik ve
Mantık Birimi
Kontrol Birimi
Adres yolu
Veri yolu
Ana Bellek
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
Donanım Aygıtları
İşletim Sistemleri Mimarisi
İşletim sistemlerini de daha önce; tek kullanıcılı (single user), çok
kullanıcılı (multi user), tek işlemli (single tasking) ve çok işlemli
(multi tasking) olarak sınıflamıştık. Tek kullanıcılı ve tek işlemli
yapılarda işletim sisteminin görevleri daha basit bir düzenekte
gerçeklemektedir. Ancak çok işlemli ya da çok kullanıcılı yapılarda
işletim sistemi daha karmaşık bir organizasyona sahiptir.
 Bu yaklaşımla; işletim sistemlerinin 3 katman ve işletim
sistemlerinin temel olarak 4 işlevi vardır.
İşletim sistemlerinin katmanları sırasıyla;


1. Kabuk (Shell)
2. Sistem Çağrıları (System Calls)

3. Çekirdek (Kernel)

Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
İşletim Sistemlerinin Katmanları
Kabuk (Shell): İşletim sisteminin kullanıcıya gözüken
yüzüdür. Bir çok kaynakta kabuk, komut yorumlayıcısı
olarak ta adlandırılmaktadır. Bir bakıma kullanıcı ile
çekirdek arasındaki arabirim olarak da tanımlamak
olanaklıdır.
 Bilgisayar açıldıktan bir süre sonra komut satırı
(prompt) görüntülenir. Kullanıcı tarafından komut
satırına girilen komutlar bilgisayar tarafından işleme
konulur. İşte bu nokta da kabuk (shell) olarak adlandırı
lan yazılım devreye girer. Öncelikle komutun geçerliliğini
inceler, kullanıcının ne yapmak istediğini çözümler ve bu
iş için gerekli olan programları belleğe yükler.
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
Kabuk…
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
Çekirdek
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
Çekirdeğin İşlevleri







Belleği yönetmek,
Bilgisayara ulaşımları kontrol etmek,
Dosya sistemini oluşturup, korumak,
İnterruptları (kesme) kullanmak,
Hataları kontrol etmek,
Girdi-çıktı birimlerini çalıştırmak,
Bilgisayarın kaynaklarını (işlemci, girdi-çıktı
birimleri gibi...) kullanıcılar arasında dağıtmak.
Kesmeler bir programın daha önemli başka bir görevin yerine getirilmesi için kesilmesine izin
veren bir mekanizmadır.
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
İşletim Sisteminin İşlevleri
1) İşlem Yönetimi (Process Management)
2) Bellek Yönetimi (Memory Management)
3) Dosya Yönetimi (File Management)
4) Giri/Çıkış Yönetimi (I/O Management)
Aygıt Yönetimi
Bellek Yönetimi
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
İşlem Yönetimi
Dosya Yönetimi
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
İşlem Yönetimi (Process Management)

Şu soruları cevaplar;
◦ İşlemlerin kaynaklara ulaşması sırasında nasıl
bir kaynak yalıtımı yapacağı,
◦ Bir kaynağı paylaşması gereken birden fazla
işlem olduğunda hangi politikaları kullanarak
bu kaynağı paylaştıracağı

Bunları yaparken de bellek yönetimi ile
birlikte çalışarak belleğin bu işlemler, iş
parçacıkları arasında paylaştırılmasını
sağlar.
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
İşlem Yönetimi (Process Management)

Birçok işletim sistemi işlem ve iş parçacığı
(Thread) ve kaynak yönetimini birlikte ele
almaktadır.
◦ İş parçacığı, bilgisayarda en düşük kaynağa
ihtiyaç duyan bir program parçasıdır.
Genellikle bir işlem ile birlikte kullanılır. İlgili
işleme ayrılmış disk alanı, dosyalar, bellek gibi
kaynaklarını kullanarak çalışır.
◦ Çoklu kullanım (multithreading) ise bir işlemin
birden fazla iş parçacığına bölünerek aynı anda
çalıştırılmasıdır. Bir işlem birden fazla iş
parçacığından oluşmaktadır.
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
İşlem Yönetimi (Process Management)
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
İşlem Kontrol Blokları
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
İşlem Kontrol Blokları
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
İşlem Durum Algoritmaları
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
İşlem Durum Algoritmaları
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
Bellek Yönetimi (Memory Management)
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
Bellek Yönetimi (Memory Management)

Bellek yönetimi işlem yönetimi ile birlikte çalışarak
ana bellekte işlemlerin yerleşimini sağlamaktadır.
◦ Her işlem bir bellek bölgesi istemekte ve bellek yönetimi de
bu işlemlerin çalışması için kaynak yalıtımını da sağlayarak
gerekli bellek bölümünü ayırmaktadır.

Modern bellek yönetimleri sanal bellek (virtual
memory) sağlayarak fiziksel bellekten çok daha büyük
bir bellek alanının kullanılmasını sağlamaktadır.
◦ Eğer işletim sistemi sanal belleği destekliyorsa bellek
yönetiminin bir kısmı aygıt ve dosya yönetimleri ile birlikte
çalışarak belleği yönetir.
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
Bellek Yöneticisin Görevleri
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
Sanal Bellek (Virtual Memory)
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
Sayfalama (Paging)
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
Sanal Bellek Algoritmaları
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
Ödev
Yrd. Doç. Dr. Zülfü GENÇ/ BTÖ 303 İşletim Sistemleri
Download