ANA BELLEK YÖNETİMİ (MEMORY MANAGMENT)

Slides:



Advertisements
Benzer bir sunumlar
X86 Assembly Programlama Dilinde
Advertisements

Prof. Dr. Eşref ADALI Yrd. Doç. Dr. Şule Gündüz Öğüdücü Sürüm-A
YAPI İŞLERİ VE TEKNİK DAİRE BAŞKANLIĞI
Prof. Dr. Eşref ADALI Yrd. Doç. Dr. Şule Gündüz Öğüdücü Sürüm-A
Öğr.Gör. Dr. Şirin KARADENİZ
Algoritma ve Akış Diyagramları
Problemi Çözme Adımları
KÜTÜK YÖNETİMİ Ana bellek dışında saklanan veri kümeleri, kütük olarak adlandırılır. İkincil bellekler, daha geniş anlamıyla giriş/çıkış birimleri üzerinde.
Ana Bellek Yönetimi Bir bilgisayar sisteminin en önemli donanımsal kaynaklarından biri olan ana belleğin, görevler arasında paylaştırılması ana belleğin.
Öğr.Gör. Dr. Şirin KARADENİZ
ENERJİ, ENERJİ GEÇİŞİ VE GENEL ENERJİ ANALİZİ
Bellek Yönetimi Process H 2 KB
İş (Job): Proses ve/veya thread
Bölüm 1: Introductions (Tanıtım,Tanım)
Bellek Yönetimi.
AĞ PROTOKOLÜ.
BTP 108 BİLGİSAYAR AĞ SİSTEMLERİ AĞ KAVRAMI Birden çok bilgisayarın birbirine bağlı olarak kullanılmasıyla oluşturulan çalışma biçimine bilgisayar ağı.
8088 Kesme Operasyonu.
Görev Yönetimi GÖREV bir programın işletimi sırasında aldığı addır.
Görsel Okur-Yazarlık *
Chapter 9: Bellek Yönetimi
BÖLÜM 2: BİLGİSAYAR SİSTEM YAPILARI
Algoritma ve Akış Diyagramları
BUYRUK İşlem kodu İşlemci yazacı veri
BİLGİ TEKNOLOJİSİNİN TEMEL KAVRAMLARI
WİNDOWS XP GRUP İLKESİ.
Veri Tabanı Yönetim Sistemleri Ders başladıktan sonra öğrenciler sınıfa alınmayacak.
Register ve Türleri Nihal GÜNGÖR.
Temel Bilgisayar Yapısı ve Devreleri
(KARAR DESTEK SİSTEMİ) KULLANIMI
İŞLETİM SİSTEMLERİ Öğr. Gör. S.Serkan TAN.
İŞLETİM SİSTEMLERİ İşletim sisteminin, kolay ve hızlı kullanım, kaynak verimliliği gibi kıstasların dışında, ortamında saklanan bilgilerin, gerekse izinsiz.
PROCESS (GÖREV) GÖREV YÖNETİMİ
Aşağıdakilerden hangisi işletim sistemi değildir?
LD/LDI LD X0 LDI X0 X0 Y0 X0 Y1 Temel Komutlar
Bilgi Teknolojisinin Temel Kavramları
Bilgi Teknolojisinin Temel Kavramları
Yrd. Doç. Dr. Doğan AYDOĞAN
Algoritma Mantığı ve Akış Diyagramları
Bilgi Teknolojisinin Temel Kavramları
Raporlama Menüleri Emine TUNÇEL Kırklareli Üniversitesi, Pınarhisar Meslek Yüksekokulu.
BELLEK YÖNETİMİ Memory Management
İL GIDA TARIM VE HAYVANCILIK MÜDÜRLÜĞÜ ARAZİ EDİNDİRME ŞUBE MÜDÜRLÜĞÜ
BİLGİSAYAR MİMARİLERİ 6.Hafta: Sanal Bellek
BÖLÜM 9 Bellek Yönetimi.
İçindekiler İŞLETİM SİSTEMLERİNE GİRİŞ.
UNV13107 TEMEL BİLGİ TEKNOLOJİSİ KULLANIMI. Veri tabanı Bilgisayar ortamında saklanan düzenli verilerdir. Bilgisayar ve ağ ortamındaki bilginin temel.
DERS 4 MİKROİŞLEMCİ PROGRAMLAMA. Dr. Emin Argun Oral, Atatürk Üniversitesi 2008 Ders 4, Slayt 2İÇERİK Yüksek seviyeli programlama dilleri Düşük sevyeli.
KUYRUK (QUEUE).
FAT VE NTFS DOSYA YAPISI
VERİ ve BELLEK & DEĞİŞKENLERİN SAKLANMASI Asst.Prof.Dr.Misket YEKTAY Gizem AYIK.
Konu : WİNDOWSTA VERİ DEPOLAMA YÖNTEMLERİ Hazırlayan : Güray Mantar
Kütük Organizasyonu1 Dosyalarda Farklı Yaklaşımlar.
Algoritma ve Akış Şemaları
Bellek Yönetimi(Memory management)
PIC 16F84 ile ALT PROGRAMLARIN ve ÇEVRİM TABLOLARININ KULLANIMI
8086 Programlama – Kısım IV Stack’ler, Makro’lar
Problem Çözme Yaklaşımları
İşletim Sistemleri (Operating Systems)
İşletim Sistemleri (Operating Systems)
İşletim Sistemleri (Operating Systems)
İşletim Sistemleri (Operating Systems)
İşletim Sistemleri (Operating Systems)
Prof. Dr. Eşref ADALI Doç. Dr. Şule Gündüz Öğüdücü Sürüm-B
PROGRAMLAMAYA GİRİŞ FORTRAN 77.
Algoritma Nedir? Algoritmayı, herhangi bir problemin çözümü için izlenecek yolun adımlar halinde yazılması olarak tanımlayabiliriz. Algoritma, bir problemin.
İşletim Sistemleri (Operating Systems)
BİLİŞİM TEKNOLOJİLERİ
Prof. Dr. Eşref ADALI Doç. Dr. Şule Gündüz Öğüdücü Sürüm-B
Algoritma ve Akış Diyagramları
Sunum transkripti:

ANA BELLEK YÖNETİMİ (MEMORY MANAGMENT) Hazırlayan: Zeynep DEMİR Ders 3

ANA BELLEK YÖNETİMİ Ana belleğin görevler arasında paylaştırılması ana belleğin yönetimi olarak adlandırılır. İşletim sistemi içinde bu işlevi karşılayan kesime Ana Bellek Yöneticisi yada kısaca Bellek Yönetici denir.

ANA BELLEK YÖNETİMİ AİB yönünden bakıldığında ana belek bir sözcük dizisi gibi görülür. Ana bellekte her sözcüğün bir adresi birde içeriği bulunur. Bir sözcüğün adresi, bu sözcüğe erişimde, adres yolu üstüne yüklenen fiziksel adresidir. Yani ana bellekteki sözcüklere fiziksel adresleri kullanılarak erişilir. Ana belek sözcükleri komut kodları ile bu komutların işlenenlerini tutan öğelerdir.

ANA BELLEK YÖNETİMİ Ana bellek fiziksel adres evreni Programların mantıksal adres evreni

ANA BELLEK YÖNETİMİ İÇİN DEĞİŞİK YÖNTEMLER Tek ve bitişken bellek yönetimi Değişmez bölümlü bellek yönetimi Değişken bölümlü bellek yönetimi Yeri değişir bölümlü bellek yönetimi Sayfalı bellek yönetimi Kesimli bellek yönetimi Sayfalı Görüntü Bellek Yönetimi Kesimli Görüntü Bellek Yönetimi Sayfalı-Kesimli Görüntü Bellek Yönetimi

Ana Belleğin Yönetiminde Kullanılan Yöntem Grupları

1. Tek ve Bitişken Bellek Yönetimi ana bellek, işletim sisteminin yüklendiği kesim dışında tümüyle tek bir işe atanır. (TEK İŞ DÜZENİ ve TEK GÖREVLİ İŞLEM ortamlarında kullanılabilen bir yöntem) işletim sisteminin ana belleği paylaştığı kullanıcı programı tarafından bozulmasını önlemek üzere kimi önlemler alınır. Bunun için merkezi işlem birimi içinde sınır yazmacı olarak adlandırılan bir yazmaç öngörülür. Böyle bir durum ortaya çıktığında, kesilmeler işlenirken sözü edilen bir iç kesilme ile kullanıcı programının işletimi sonlandırılıp işletim sistemine geri dönülür. (Bellek Koruma Düzeneği)

1. Tek ve Bitişken Bellek Yönetimi

2. Değişmez Bölümlü Bellek Yönetimi Tek iş düzeninden çok iş düzenine geçiş, ana bellek yönetiminde de tek ve bitişken bellek yönetiminden değişmez bölümlü bellek yönetimine geçişi zorunlu kılmıştır. Bu yöntemde ana bellek, işletim sistemi alanı ve kullanıcı alanı olmak üzere salt iki bölüme ayrılmak yerine, işletim sistemi ile birden çok kullanıcı programı arasında paylaşılır. Değişmez bölümlü bellek yönetiminde ana bellek, işletim sistemi ve kullanıcı alanları olmak üzere irili ufaklı birden çok bölüm olarak düzenlenir. Her iş işletime alınmadan önce, ana bellekte kendisine, boyuyla uyumlu bir bölüm atanır.

2. Değişmez Bölümlü Bellek Yönetimi

2. Değişmez Bölümlü Bellek Yönetimi Tek ve bitişken bellek yönetiminde olduğu gibi, bu yöntemde de, kullanıcı programlarının işletim sistemine ayrılan alanı bozmalarının engellenmesi gereklidir. Ancak burada bir de, kullanıcı programlarının birbirlerine karşı korunması gerekir. Bu amaçla, merkezi işlem biriminde bir taban, bir de tavan yazmacı öngörülür. Bu yazmaçlar, çok iş düzeni çerçevesinde, MİB’i kullanan işin, ana belleğe erişimde aşmaması gereken alt ve üst adres değerlerini tutarlar. Taşma durumunda, bir önceki yöntemde olduğu gibi, ilgili işin işletimi sonlandırılır. MİB’in her yeni göreve (işe) anahtarlanışında bu yazmaçlar, işletim sistemi tarafından, ilgili işin taban ve tavan değerleriyle günlenmek zorundadır.

2. Değişmez Bölümlü Bellek Yönetimi Bu yöntem kapsamında, işletim sistemi, ana bellek düzeniyle ilgili bir çizelge tutar. BÖLÜM TANIM ÇİZELGESİ Bu çizelgede tüm bölümlerin Giriş Adresleri, Boyları Kullanımda olup olmadıkları gösterilir. Bir iş, toplu işlem kuyruğu üzerinden işletime alınacağı zaman bölüm tanım çizelgesi taranarak bölüm ataması yapılır. First Fit: Tarama sırasında rastlanan ilk boş bölümün atanması Best Fit: İşin gerektirdiği sığaya en uygun boydaki bölümün atanması

3. Değişken Bölümlü Bellek Yönetimi Bu yöntemin temel ilkesi, bölümlerin, konum ve boyları itibarıyla, işlerin görevlere dönüştürülüp sisteme sunuluşları aşamasında, devingen olarak yaratılmasıdır. Bu yöntemle bir görev hazır görevler kuyruğuna ilk kez bağlanacağı zaman, gerektirdiği büyüklükte bir alanın, ana bellekte kullanılmayan boş alanlar içinde bulunması ve yeni bir bölüm olarak bölüm tanım çizelgesine katılması gerçekleşmiştir. Görev iskeleti bu bölümle ilgili (bölüm başlangıç adresi, boyu gibi) değerlerle günlenir. Bu yöntemde görevlere atanan bölümlerin yanı sıra, bu bölümler arasında kalan boş alanların da izlenmesi gereklidir. Bu nedenle, bölüm tanım çizelgesinin yanı sıra, bir de boş alan çizelgesi tutulur. Bölüm tanım çizelgesi bölümlere atanan bölümlerin bilgilerini, boş alan çizelgesi de bölümler arasında boş bitişken alanlara ilişkin konum, boy gibi bilgileri tutar

ÇİZİM 5.6

3. Değişken Bölümlü Bellek Yönetimi Değişken bölümlü bellek yönetiminde yeni bir görev hazır görevler kuyruğuna bağlanacağı zaman, bu görevin gerektirdiği yer, boş alan çizelgesinden seçilirken çeşitli algoritmalar kullanılır. Bunlar genelde 3 tanedir. best fit (en uygun alan) first fit (ilk uyan alan) worst fit (en büyük alan) Değişken bölümlü bellek yönetiminde, şimdiye kadar anlatılan yöntemlerde olduğu gibi, bir görev işletimin başında kendisine atanan bellek alanını, işletimin sonuna değin korur. Yani yer değiştiremez.

BELLEĞİN PARÇALANMASI 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.

BİTİŞTİRME 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şken alan yaratma işlemine BİTİŞTİRME işlemi denir.

4. Yeri Değişir Bölümlü Bellek Yönetimi Yeri değişir bölümlü bellek yönetimi kapsamında, mantıksal adreslerden fiziksel adreslere geçişi işletim aşamasına taşıyabilmek amacıyla, MİB’e yer değiştirme taban yazmacı olarak adlandırılan özgün bir yazmaç eklenir. Yeri değişir amaç programlar ana bellekte kendilerine atanan bölümlere oldukları gibi hiçbir değişiklik yapılmadan yüklenirler. Başka bir deyişle, konuma duyarlı öğeler yükleme sonrası program başına (sıfıra) göreli adres değerlerini içermeyi sürdürürler. Her bellek erişim döngüsünde, bu adres değerleri, yer değiştirme taban yazmacı içeriğine eklenerek erişilen fiziksel adresler elde edilir. Bir görev ana  işlem birimine anahtarlanacağı zaman yer değiştirme taban yazmacının içeriği, ilgili bölüm başlangıç adresiyle günlenir. Böylece işletim sırasında program başına göreli içerikler, bölüm başlangıç adreslerine eklenerek bellek başına göreli saltık değerler elde edilmiş olur. Program başına göreli mantıksal adreslerden fiziksel adreslere geçiş adres dönüştürme işlemi olarak bilinir.

4. Yeri Değişir Bölümlü Bellek Yönetimi

BİTİŞTİRME İŞLEMİ NE ZAMAN UYGULANIR? Yeri değişir bölümlü bellek yönetiminde bellekte parçalanmayı önlemek üzere bitiştirme işlemi, ya her görevin işletiminin bitiminde ya da işletime sunulan işlere bellekte yer bulunamadığı durumlarda gündeme gelebilir. Bitiştirme işlemlerini her işletim bitişinde yinelemek, ana belleği çok verimli kullanmayı amaçlarken işletimi sık sık durdurarak sistem hızının ve kullanılabilirliğinin  aşırı düşmesine neden olur. Bitiştirme işlemlerine, ana bellekte yer ihtiyacı oluştukça başvurmak daha anlamlıdır. Bu ihtiyacın ortaya çıkışı bellek yöneticisi tarafından belirlenir.

SWAPPİNG (DİSKE TAŞIMA) 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. 

SWAPPİNG

5. SAYFALI BELLEK YÖNETİMİ (PAGING) Belleği küçük, eşit boylu parçalara böl. Prosesleri de aynı boyda parçalara ayır. Eşit boylu proses parçaları: sayfa Eşit boylu bellek parçaları: çerçeve İşletim sistemi her proses için sayfa tablosu (Sayfa Tanım Çizelgesi) tutar sayfa Numarası sayfa Başlangıç Adresi Erişim Hakkı İşletim sistemi hangi çerçevelerin boş olduğunu tutar. (Bellek Tanım Çizelgesi) Mantıksal adres, sayfa numarası ve sayfa içi offset değerinden oluşur Sayfalı bellek yönetiminde adres evrenlerinin kesijmesi durumunda erişm hakkı belirtecii (iki görevin aynı fiziksel adres alanını kullanması)

5. SAYFALI BELLEK YÖNETİMİ

5. SAYFALI BELLEK YÖNETİMİ

5. SAYFALI BELLEK YÖNETİMİ

5. SAYFALI BELLEK YÖNETİMİ

5. SAYFALI BELLEK YÖNETİMİ ÖRNEK

5. SAYFALI BELLEK YÖNETİMİ ÖRNEK

6. KESİMLİ BELLEK YÖNTEMİ (SEGMANLAMA) Programlar mantıksal bölümlerden oluşur. Program segmanlara ayrılır. Tüm programların tüm segmanları aynı boyda olmak zorunda değil. Bir program birden fazla segmandan oluşabilir Kullanıcı / derleyici program text ve veri alanlarını farklı segmanlara atar. Segman boyunun üst sınırı var Mantıksal adres: (s,d) s: segman adı d: segman içi offset her proses için segman tablosu segmanın taban adresi (base) Başlangıç Adresi segmanın uzunluğu (limit) Boyu erişim hakları biti segman tablosu başı bir saklayıcıda tutulur Segment Table Base Register (STBR)

6. KESİMLİ BELLEK YÖNTEMİ Kullanıcı Programının Görünümü

6. KESİMLİ BELLEK YÖNTEMİ

6. KESİMLİ BELLEK YÖNTEMİ

6. KESİMLİ BELLEK YÖNTEMİ ÖRNEK

6. KESİMLİ BELLEK YÖNTEMİ ÖRNEK SEGMENTLERİN PAYLAŞIMI ÖRNEĞİ

7. SAYFALI GÖRÜNTÜ BELLEK YÖNETİMİ Sayfalı bellek yönetiminde, amaç programlar, derleyiciler tarafından eşit uzunlukta sayfalar biçiminde hazırlanır. Görüntü bellek düzeni çerçevesinde, hazırlanan bu programların ana belleğe yüklenmeye hazır kopyaları, tümüyle diskte oluşturulur. Diskte yer alan sayfaların bir kesimi ana belleğe yüklenerek işletim başlatılır. Görüntü bellek düzeninde program sayfaları diskte saklandığından işletime alınan her görev için, Sayfa tanım çizelgesi yanında bir de Kütük tanım çizelgesi tutulur. Sayfa tanım çizelgelerinde ek olarak Durum Belirteci (Sayfanın bellkete olup olmadığını gösterir) Değişim Belirteci (Bellekteki ve diskteki kopya arasında fark olup olmadığı) Erişim Belirteci Erişim Hakkı

7. SAYFALI GÖRÜNTÜ BELLEK YÖNETİMİ

7. SAYFALI GÖRÜNTÜ BELLEK YÖNETİMİ

SAYFA ÇIKARMA ALGORİTMALARI İlk Giren Sayfayı Çıkarma En Erken erilmiş Sayfayı çıkarma En Geç Erişilecek Sayfayı çıkarma

8. KESİMLİ GÖRÜNTÜ BELLEK YÖNETİMİ Kesimli bellek yönetimine görüntü bellek özelliğini katabilmek için Kesim tanım çizelgelerinde, kesim başlangıç(base), boy(limit), erişim hakkı gibi bilgilerin yanı sıra P Present Biti : Kesim Bellekte Belirteci(0 veya 1) A Access Biti : Erişim Belirteci M Modified Biti : Değişim Belirteci

8. KESİMLİ GÖRÜNTÜ BELLEK YÖNETİMİ

8. KESİMLİ GÖRÜNTÜ BELLEK YÖNETİMİ

9.Kesimli-Sayfalı Görüntü Bellek Yönetimi Programların mantıksal adres evrenleri kesimlere, kesimler de sayfalara ayrılır Mantıksal Adresler 3 bileşenden oluşur: Kesim Numarası Kesime Göreli sayfa Numarası Sayfa içi adres Mantıksal adresten fiziksel adrese geçişte iki temel çizelge kullanılır: Kesim Tanım Çizelgesi Sayfa Tanım Çizelgesi

9.Kesimli-Sayfalı Görüntü Bellek Yönetimi Kesim Tanım Çizelgesi Kesim Numarası Başlangıç Adresi (Sayfa tanım Çizelgelerinin başlangıç adresi) Boyu (ilgili sayfa tanım çizelgesinin boy bilgisi) Kesime Erişim Denetim Kodu Sayfa Tanım Çizelgesi Sayfa Numarası Başlangıç Adresi Sayfa bellekte Belirteci Erişim Hakkı Belirteci Değişim Belirteci

9.Kesimli-Sayfalı Görüntü Bellek Yönetimi