Malloc tembel Linux üzerinde bir ayırma (ve diğer platformlar için destek sayfaları oluşturur? | Netgez.com
SORU
26 Mayıs 2009, Salı


Malloc tembel Linux üzerinde bir ayırma (ve diğer platformlar için destek sayfaları oluşturur?

Linux üzerinde ise malloc(1024 * 1024 * 1024), ben malloc tam olarak ne yapar?

Ayırma (boş liste yürüyüş ve gerekiyorsa yeni bir eşleme oluşturmak için sanal bir adres atar eminim, ama aslında takas Sayfa 1 GiB değer yaratır? Veya mprotect adres aralığı ve aslında onlar gibi dokununca sayfaları oluşturmak mmap mı geliyor?

(the standard ayrıntılar bu tür sessiz olduğu için Linux belirterek değilim ama diğer platformlar da ne yaptığını merak ediyorum.)

CEVAP
26 Mayıs 2009, Salı


Linux ertelenmiş sayfa ayırma, aka. 'iyimser bir bellek ayırma'. Belleği geri gelen malloc değil desteklenen bir şey ve ne zaman sen dokun olabilir aslında bir OOM durumu (takas alanı için bu sayfayı açtığınız bu durumda, a process is unceremoniously terminated.

Örneğin http://www.linuxdevcenter.com/pub/a/linux/2006/11/30/linux-out-of-memory.html bkz

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 24 Канал

    24 КанаÐ

    5 ÅžUBAT 2006
  • Gavin Hoey

    Gavin Hoey

    21 Aralık 2007
  • SavageLuxxxGaming - Daily NBA 2K15 & NBA Live 15 Enjoy And Subscribe!

    SavageLuxxxG

    11 Ocak 2013