Aracılığıyla paylaş


Sanal Bellek Ayırma

Sanal bellek işlevleri, bellek sayfalarını işler. İşlevler, belirtilen boyutları ve adresleri yuvarlamak için mevcut bilgisayardaki bir sayfanın boyutunu kullanır.

VirtualAlloc işlevi aşağıdaki işlemlerden birini gerçekleştirir:

  • Bir veya daha fazla boş sayfa ayırır.
  • Bir veya daha fazla ayrılmış sayfayı ayırır.
  • Bir veya daha fazla boş sayfayı ayırır ve taahhüt eder.

Ayrılacak veya taahhüt edilecek sayfaların başlangıç adresini belirtebilir veya sistemin adresi belirlemesine izin verebilirsiniz. İşlev, belirtilen adresi uygun sayfa sınırına yuvarlar. Ayrılmış sayfalara erişilemez, ancak taahhüt edilmiş sayfalar PAGE_READWRITE, PAGE_READONLYveya PAGE_NOACCESS erişimiyle ayrılabilir. Sayfalar işlendiğinde bellek tahsisi, disk üzerindeki RAM ve sayfalama dosyalarının genel boyutundan ayrılır, ancak her sayfa yalnızca bu sayfadan ilk okuma veya yazma denemesinde fiziksel bellekte başlatılır ve yüklenir. VirtualAlloc işlevi tarafından ayrılan belleğe erişmek için normal işaretçi başvurularını kullanabilirsiniz.