Sanal Bellek, kullanıcıya çok büyük bir ana belleğe sahip olduğu yanılsamasını sağlayan bir depolama şemasıdır. Bu, ikincil belleğin bir kısmının ana bellek olarak ele alınmasıyla yapılır.
Bu şemada, Kullanıcı, işlemi yüklemek için belleğin mevcut olduğu yanılsamasına sahip olarak, mevcut ana bellekten daha büyük boyutlu işlemleri yükleyebilir.
İşletim Sistemi, büyük bir işlemi ana belleğe yüklemek yerine, birden fazla işlemin farklı parçalarını ana belleğe yükler.
Bunu yaparak çoklu programlama derecesi artacak ve dolayısıyla CPU kullanımı da artacaktır.
Sanal Bellek Nasıl Çalışır?
Modern anlamda sanal bellek bugünlerde oldukça yaygın hale geldi. Bu şemada, bazı sayfaların yürütülmesi için ana belleğe yüklenmesi gerektiğinde ve bellek bu kadar çok sayfa için uygun olmadığında, bu durumda, sayfaların ana belleğe girmesini durdurmak yerine işletim sistemi aşağıdakileri arar: Son zamanlarda en az kullanılan veya referans verilmeyen RAM alanını ikincil belleğe kopyalayarak ana bellekte yeni sayfalara yer açın.
Tüm bu prosedür otomatik olarak gerçekleştiğinden, bilgisayarın sınırsız RAM'e sahip olduğu hissini verir.
Talep Çağrısı
Talep Çağrısı, sanal bellek yönetiminin popüler bir yöntemidir. Talep sayfalamada, bir prosesin en az kullanılan sayfaları ikincil hafızada saklanır.
Bir sayfa talep edildiğinde veya sayfa hatası oluştuğunda ana belleğe kopyalanır. Değiştirilecek sayfaları belirlemek için kullanılan çeşitli sayfa değiştirme algoritmaları vardır. Her birini daha sonra ayrıntılı olarak ele alacağız.
Sanal bellek yönetim sisteminin anlık görüntüsü
P1 ve P2 olmak üzere 2 sürecin her birinin 4 sayfa içerdiğini varsayalım. Her sayfa boyutu 1 KB'tır. Ana bellek, her biri 1 KB'lık 8 çerçeve içerir. İşletim sistemi ilk iki bölümde bulunur. Üçüncü bölümde 1stP1'in sayfası saklanır ve diğer çerçeveler de ana bellekteki farklı işlem sayfalarıyla doldurulmuş olarak gösterilir.
Her iki sayfanın sayfa tabloları 1 KB boyutunda olduğundan her biri bir çerçeveye sığdırılabilir. Her iki işlemin sayfa tabloları da resimde gösterilen çeşitli bilgileri içerir.
CPU, P1 durumunda 5 ve P2 durumunda 7 olan sayfa tablosunun temel adresini içeren bir kayıt içerir. Bu sayfa tablosu temel adresi, gerçek ilgili girişe erişim söz konusu olduğunda Mantıksal adresin sayfa numarasına eklenecektir.
Sanal Belleğin Avantajları
- Çoklu Programlamanın derecesi artırılacaktır.
- Kullanıcı büyük uygulamaları daha az gerçek RAM ile çalıştırabilir.
- Daha fazla RAM satın almanıza gerek yoktur.
Sanal Belleğin Dezavantajları
- Değiştirme zaman aldığından sistem yavaşlar.
- Uygulamalar arasında geçiş yapmak daha fazla zaman alır.
- Kullanıcı, kullanımı için daha az sabit disk alanına sahip olacaktır.