Bellek Yönetimi (2) - Mehmet Mehdi KARAKOÇ

Download Report

Transcript Bellek Yönetimi (2) - Mehmet Mehdi KARAKOÇ

Bellek Yönetimi (2)
Bellek Bölümleme (Tahsisi)
• Bölmeleme (Partitioning)
– Sabit
– Dinamik
• Basit sayfalama (Paging)
• Basit Kesimleme (Segmentation)
• Sayfalamalı görüntü bellek (Virtual Memory)
• Segmanlamalı görüntü bellek
Basit sayfalama (Paging)
• Mantıksal ve fiziksel bellek eşit ve sabit
parçalara ayrılır.
• Prosesler parçalara ayrılır
• Mantıksal Bellek parçaları: Sayfa
• Fiziksel Bellek Parçaları: Çerçeve
• Proses parçaları, sayfalar ve çerçeveler eşit
boyda olur.
Sayfalama (2)
• Sayfa Tablosu: Hangi
sayfanın hangi
çerçevede tutulduğunu
gösteren tablo
Sayfalama(3)
• Bir bilgi/dosyanın bellek adresi iki kısımdan
oluşur:
– Sayfa numarası (p) fiziksel bellekteki her bir
sayfanın taban adresini tutan sayfa tablosundaki
göstergedir.
– Sayfa ofseti (d) taban adresi ile birleştirilerek
fiziksel bellekte sayfanın içerisindeki yerin
belirlenmesinde kullanılır.
Sayfalama(4)
• Ofset: sayfa içindeki satır numarası
Sayfalama(5)
• İşletim sistemi bu yöntemi kullanırken boş
çerçevelerin de listesini tutar.
Fiziksel Adresi Hesaplamak
• Fiziksel adresi hesaplamak için aşağıdaki
formül kullanılabilir:
fiziksel adres (FA)
çerçeve numarası (ÇN)
çerçeve boyutu (ÇB)
ofset (O) ise
FA=ÇN*ÇB+O
• 4 byte uzunluğunda sayfalardan
oluşan 32 byte’lık bir bellek
olduğunu varsayınız. Sayfa tablosu
yanda verilmiştir.
• Buna göre aşağıdaki mantıksal
adresler için fiziksel adresleri
bulunuz.
• 0, 3, 4, 13
Bellek Bölümleme (Tahsisi)
• Bölmeleme (Partitioning)
– Sabit
– Dinamik
• Basit sayfalama (Paging)
• Basit Kesimleme (Segmentation)
• Sayfalamalı görüntü bellek (Virtual Memory)
• Segmanlamalı görüntü bellek
Basit Kesimleme (Segmentation)
• Segmentation’da mantıksal bellek sabit
parçalara değil değişken boyutta mantıksal
parçalara ayrılır.
• Bir adres, kesim numarası (s) ve kesim
içerisindeki adresi belirten ofset
numarasından (d) meydana gelmektedir.
Bir kesimin başlangıç adresi ve
uzunluğu tutulur.
Segmentation (3)
• Fiziksel Adres (FA)
• Kesim Taban Adresi (TA)
• Ofset (d)
FA=TA+d
Segmentation (4)
Bellek Erişim Hatası:
• Bir mantıksal adresin ofset değeri, taban ve
tavan değerleri arasında olmalıdır.
• Eğer ofset değeri fazla olursa mantıksal
adresin kesimi aşması «bellek erişim hatası»
(segment fault) oluşur.
Segmentation (5)
• Kesim tablosunun yandaki
gibi olduğunu varsayınız.
• Aşağıdaki mantıksal
adreslerin (kesim no, ofset)
fiziksel adres karşılıklarını
bulunuz.
a) (0, 198)
b) (2, 156)
c) (1, 530)
d) (3, 455)
e) (0, 252)
Sayfalı ve Kesimli Bellek Yönetimleri
Arasındaki Farklar
• Kesimli bellek yönetiminin amacı adres
alanının mantıksal olarak dilimlenmesidir.
• Sayfalı bellek yönetiminde ise bellek fiziksel
olarak dilimlenip oluşturulur.
• Sayfalar makine donanımına bağlı olarak sabit
boyuttadır.
• Bölümler ise değişken boyuttadır.
Sayfalı ve Kesimli Bellek Yönetimleri
Arasındaki Farklar (2)
• Program adresinin sayfa ve ofset numaralarına
ayrılması donanımın bir işlevidir. (Bellek
Yönetim Birimi)
• Segmentation işlemi işletim sistemi tarafından
yapılır.
Sayfalı ve Kesimli Bellek Yönetimleri
Arasındaki Farklar (3)
• Sayfalamada Ofset numarasının sınırı aşması
otomatik olarak sayfanın çevrilmesine sebep
olur.
• Oysa kesim ve ofset numarasında bir sınır
aşması söz konusu değildir. Bu durumda bellek
erişim hatası oluşur.
Kesimlemenin Sayfalama ile Birlikte
Kullanılması
• Bu yöntemde bölümler (kesim) kendi
içerisinde sayfalara ayrılmaktadır.
• Mantıksal adres üç parçadan oluşmaktadır