Sanal Adres Alanı (Bellek Yönetimi)
İşlemin sanal adres alanı, kullanabileceği sanal bellek adresleri kümesidir. Her işlemin adres alanı özeldir ve paylaşılmadığı sürece diğer işlemler tarafından erişilemez.
Sanal adres, bir nesnenin bellekteki gerçek fiziksel konumunu temsil etmez; bunun yerine, sistem her işlem için bir sayfa tablosu tutar. Bu, sanal adresleri ilgili fiziksel adreslerine çevirmek için kullanılan bir iç veri yapısıdır. Bir iş parçacığı bir adrese her başvursa, sistem sanal adresi fiziksel bir adrese çevirir.
32 bit Windows için sanal adres alanı 4 gigabayt (GB) boyutundadır ve iki bölüme ayrılmıştır: biri işlem tarafından kullanılmak üzere, diğeri ise sistem tarafından kullanılmak üzere ayrılmıştır. 64 bit Windows'ta sanal adres alanı hakkında daha fazla bilgi için bkz. 64 bit Windows 'de Sanal Adres Alanı'nı.
Sanal bellek hakkında daha fazla bilgi için aşağıdaki konulara bakın:
- Sanal Adres Alanı ve Fiziksel Depolama
- çalışma kümesi
- Sayfa Durumu
- Ayrılmış Bellek Kapsamı
- Veri Yürütme Engelleme
- Bellek Koruması
- Windows Yayınları için Bellek Sınırları
32 bit Windows için varsayılan Sanal Adres Alanı
Aşağıdaki tabloda her bölüm için varsayılan bellek aralığı gösterilmektedir.
Bellek aralığı | Kullanım |
---|---|
Düşük 2 GB (0x00000000 ile 0x7FFFFFFF arasında) | İşlem tarafından kullanılır. |
Yüksek 2 GB (0x80000000 ile 0xFFFFFFFF arasında) | Sistem tarafından kullanılır. |
4GT ile 32 bit Windows için Sanal Adres Alanı
4 gigabayt ayarlama (4GT) etkinleştirilirse, her bölümün bellek aralığı aşağıdaki gibidir.
Bellek aralığı | Kullanım |
---|---|
Düşük 3 GB (0xBFFFFFFF ile 0x00000000) | İşlem tarafından kullanılır. |
Yüksek 1 GB (0xC0000000 ile 0xFFFFFFFF arasında) | Sistem tarafından kullanılır. |
4GT etkinleştirildikten sonra, görüntü üst bilgisinde IMAGE_FILE_LARGE_ADDRESS_AWARE bayrağı ayarlanmış bir işlem, düşük 2 GB'ın üzerindeki ek 1 GB belleğe erişebilir.
32 bit Windows için Sanal Adres Alanını Ayarlama
İşlem tarafından kullanılabilen bölümün boyutunu 2048 (2 GB) ile 3072 (3 GB) arasında bir değere yapılandıran bir önyükleme girişi seçeneği ayarlamak için aşağıdaki komutu kullanabilirsiniz:
BCDEdit /setincreaseuservaMegabytes
Önyükleme girişi seçeneği ayarlandıktan sonra, her bölüm için bellek aralığı aşağıdaki gibidir.
Bellek aralığı | Kullanım |
---|---|
Düşük (0x00000000 Megabayt) | İşlem tarafından kullanılır. |
Yüksek (Megabayt+1 ile 0xFFFFFFFF) | Sistem tarafından kullanılır. |
Windows Server 2003': boot.ini /USERVA anahtarını 2048 ile 3072 arasında bir değere ayarlayın.