Sanal Bellek nedir?
Sanal Bellek , kullanıcıya çok büyük bir ana belleğe sahip olma yanılsamasını sunan bir depolama mekanizmasıdır. İkincil belleğin bir bölümünü ana bellek olarak ele alarak yapılır. Sanal bellekte, kullanıcı mevcut ana bellekten daha büyük boyutlu işlemleri depolayabilir.
Bu nedenle, ana belleğe bir uzun işlem yüklemek yerine, işletim sistemi ana bellekte birden fazla işlemin çeşitli parçalarını yükler. Sanal bellek çoğunlukla talep sayfalama ve talep bölümleme ile uygulanır.
Bu İşletim sistemi eğitiminde şunları öğreneceksiniz:
- Sanal Bellek nedir?
- Sanal Bellek Nasıl Çalışır?
- Talep Çağrıları nedir?
- Sayfa değiştirme yöntemlerinin türleri
- FIFO Sayfasının Değiştirilmesi
- Optimal Algoritma
- LRU Sayfa Değişimi
- Sanal Belleğin Avantajları
- Sanal Belleğin Dezavantajları
Neden Sanal Belleğe İhtiyacınız Var?
İşte sanal bellek kullanma nedenleri:
- Bilgisayarınız fiziksel bellekte yer olmadığında, hatırlaması gerekenleri sanal bellek olarak bir takas dosyasındaki sabit diske yazar.
- Windows çalıştıran bir bilgisayar daha fazla belleğe / RAM'e ihtiyaç duyuyorsa ve daha sonra sisteme takılıyorsa, bu amaçla sabit sürücünün küçük bir bölümünü kullanır.
Sanal Bellek Nasıl Çalışır?
Modern dünyada, sanal bellek bu günlerde oldukça yaygın hale geldi. Yürütme için bazı sayfaların ana belleğe yüklenmesi gerektiğinde ve bellek bu kadar çok sayfa için kullanılamadığında kullanılır.
Bu durumda, bu durumda, sayfaların ana belleğe girmesini önlemek yerine, işletim sistemi son zamanlarda kullanılan minimum RAM alanını veya ikincil belleğe atıfta bulunulmayan RAM alanını arar. ana hafıza.
Sanal bellek yönetimini bir örnek yardımıyla anlayalım.
Örneğin:
Bir işletim sisteminin çalışan tüm programları depolamak için 300 MB bellek gerektirdiğini varsayalım. Ancak, şu anda RAM'de depolanan yalnızca 50 MB kullanılabilir fiziksel bellek vardır.
- İşletim sistemi daha sonra 250 MB sanal bellek kuracak ve bu 250 MB'yi yönetmek için Sanal Bellek Yöneticisi (VMM) adlı bir program kullanacaktır.
- Dolayısıyla, bu durumda, VMM, gerekli olan ekstra belleği depolamak için sabit diskte 250 MB boyutunda bir dosya oluşturacaktır.
- İşletim sistemi şimdi, yalnızca 50 MB alan mevcut olsa bile, RAM'de depolanan 300 MB gerçek belleği dikkate aldığı için belleği adreslemeye devam edecektir.
- Yalnızca 50 MB gerçek bellek alanı mevcut olsa bile 300 MB belleği yönetmek VMM'nin görevidir.
Talep Çağrıları nedir?
Talep sayfalama mekanizması, ikincil bellekte depolanan işlemlerin ve sayfaların önceden değil, yalnızca talep üzerine yüklendiği takaslı bir sayfalama sistemine çok benzer.
Bu nedenle, bir bağlam anahtarı gerçekleştiğinde, işletim sistemi eski programın sayfalarını diskten veya yeni program sayfalarından herhangi birini ana belleğe asla kopyalamaz. Bunun yerine, ilk sayfayı yükledikten sonra yeni programı çalıştırmaya başlayacak ve referans verilen program sayfalarını getirecektir.
Programın yürütülmesi sırasında, program değiştirildiği için ana bellekte bulunmayabilecek bir sayfaya başvurursa, işlemci bunu geçersiz bellek referansı olarak değerlendirir. Bunun nedeni, sayfa hatası ve aktarımların kontrolü programdan işletim sistemine geri göndermesidir, bu da sayfanın belleğe geri depolanmasını talep eder.
Sayfa Değiştirme Yöntemlerinin Türleri
İşte bazı önemli Sayfa değiştirme yöntemleri
- FIFO
- Optimal Algoritma
- LRU Sayfa Değişimi
FIFO Sayfasının Değiştirilmesi
FIFO (İlk giren ilk çıkar) basit bir uygulama yöntemidir. Bu yöntemde bellek, belleğin sanal adresinde en uzun süredir bulunan değiştirme için sayfayı seçer.
Özellikleri:
- Ne zaman yeni bir sayfa yüklenirse, sayfa son zamanlarda hafızaya gelir. Bu nedenle, kimlik numarası her zaman FIFO yığınında olduğu için hangi sayfanın kaldırılması gerektiğine karar vermek kolaydır.
- Ana bellekteki en eski sayfa, önce değiştirilmek üzere seçilmesi gereken sayfadır.
Optimal Algoritma
En uygun sayfa değiştirme yöntemi, bir sonraki referansa kadar geçen sürenin en uzun olduğu bir değiştirme için o sayfayı seçer.
Özellikleri:
- Optimal algoritma, en az sayıda sayfa hatasıyla sonuçlanır. Bu algoritmanın uygulanması zordur.
- Optimal bir sayfa değiştirme algoritması yöntemi, tüm algoritmalar arasında en düşük sayfa hatası oranına sahiptir. Bu algoritma mevcuttur ve MIN veya OPT olarak adlandırılmalıdır.
- Daha uzun süre kullanmak istemeyen sayfayı değiştirin. Yalnızca bir sayfanın kullanılması gerektiği zamanı kullanır.
LRU Sayfa Değişimi
LRU'nun tam formu En Az Kullanılanlar sayfasıdır. Bu yöntem, işletim sisteminin kısa bir süre içinde sayfa kullanımını bulmasına yardımcı olur. Bu algoritma, bir sayacı bir çift sayfayla ilişkilendirerek uygulanmalıdır.
O nasıl çalışır?
- Ana bellekte en uzun süre kullanılmayan sayfa, değiştirilmek üzere seçilecek sayfadır.
- Uygulaması kolaydır, bir liste tutun, sayfaları geçmişe bakarak değiştirin.
Özellikleri:
- LRU değiştirme yöntemi en yüksek sayıma sahiptir. Bu sayaca ayrıca yaşlarını ve ilişkili sayfalarına ne kadar başvurulması gerektiğini belirten yaşlanma kayıtları da denir.
- Ana bellekte en uzun süre kullanılmayan sayfa, değiştirilmek üzere seçilmesi gereken sayfadır.
- Ayrıca bir liste tutar ve zamana bakarak sayfaları değiştirir.
Hata oranı
Hata oranı, tasarlanmış bir sistemin veya bileşenin başarısız olduğu frekanstır. Birim zaman başına arıza olarak ifade edilir. Yunanca λ (lambda) harfi ile gösterilir.
Sanal Belleğin Avantajları
Sanal Bellek kullanmanın avantajları / avantajları şunlardır:
- Sanal bellek, programın yürütülmesi için programın yalnızca belirli bir bölümü gerektiğinde hız kazanmaya yardımcı olur.
- Çoklu programlama ortamının uygulanmasında çok faydalıdır.
- Aynı anda daha fazla uygulama çalıştırmanıza izin verir.
- Birçok büyük programı daha küçük programlara sığdırmanıza yardımcı olur.
- Ortak veri veya kod, hafıza arasında paylaşılabilir.
- Süreç, tüm fiziksel bellekten bile daha büyük hale gelebilir.
- Veri / kod gerektiğinde diskten okunmalıdır.
- Kod, yeniden konumlandırma gerektirmeden fiziksel belleğin herhangi bir yerine yerleştirilebilir.
- Ana bellekte daha fazla işlem tutulmalıdır, bu da CPU'nun etkin kullanımını artırır.
- Her sayfa gerekli olana kadar bir diskte saklanır, bundan sonra kaldırılır.
- Aynı anda daha fazla uygulamanın çalıştırılmasına izin verir.
- Çoklu programlamanın derecesine ilişkin belirli bir sınır yoktur.
- Kullanılabilir sanal adres alanı fiziksel belleğe göre daha fazla olduğu için büyük programlar yazılmalıdır.
Sanal Belleğin Dezavantajları
Sanal bellek kullanmanın dezavantajları / eksileri şunlardır:
- Sistem sanal bellek kullanıyorsa uygulamalar daha yavaş çalışabilir.
- Uygulamalar arasında geçiş yapmak muhtemelen daha fazla zaman alıyor.
- Kullanımınız için daha az sabit disk alanı sunar.
- Sistem kararlılığını azaltır.
- Daha büyük uygulamaların, onları çalıştırmak için tek başına yeterli fiziksel RAM sunmayan sistemlerde çalışmasına izin verir.
- RAM ile aynı performansı sunmuyor.
- Bir sistemin genel performansını olumsuz etkiler.
- Aksi takdirde uzun süreli veri depolama için kullanılabilecek depolama alanını işgal edin.
Özet:
- Sanal Bellek, kullanıcıya çok büyük bir ana belleğe sahip olma yanılsamasını sunan bir depolama mekanizmasıdır.
- Bilgisayarınızda fiziksel bellekte yer olmadığında sanal belleğe ihtiyaç vardır
- Talep sayfalama mekanizması, ikincil bellekte depolanan işlemlerin ve sayfaların önceden değil, yalnızca talep üzerine yüklendiği takaslı bir sayfalama sistemine çok benzer.
- Önemli Sayfa değiştirme yöntemleri şunlardır: 1) FIFO 2) Optimal Algoritma 3) LRU Sayfa Değiştirme.
- FIFO (First-in-first-out) yönteminde bellek, belleğin sanal adresinde en uzun süredir bulunan bir değiştirme için sayfayı seçer.
- En uygun sayfa değiştirme yöntemi, bir sonraki referansa kadar geçen sürenin en uzun olduğu bir değiştirme için o sayfayı seçer.
- LRU yöntemi, işletim sisteminin kısa bir süre içinde sayfa kullanımını bulmasına yardımcı olur.
- Sanal bellek, programın yürütülmesi için programın yalnızca belirli bir bölümü gerektiğinde hız kazanmaya yardımcı olur.
- Sistem sanal bellek kullanıyorsa uygulamalar daha yavaş çalışabilir.