Если у меня есть mmap (), некоторые ЧАСТНЫЕ и АНОНИМНЫЕ страниц, а затем расширяют их с помощью mremap (), новое пространство также инициализируется нулями?
Я попытался прочитать код для mremap ( mm / mremap.c ) в исходном коде linux, но он требует определенных знаний о предметной области, которых у меня сейчас нет (vma _ ### stuff ). Даже не уверен, что это правильное место, чтобы посмотреть ...
Но из того, что я понял, я думаю , что mremap () ed память будет очищена, это правильно?
Распределение делается так
list = mmap(NULL, newSize, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0)
и затем переназначение делается так
newList = mremap(list, oldSize, newSize, MREMAP_MAYMOVE)
А, наконец, это Linux специфический вопрос, работающий с последним ядром (> = 2.6.28) и libc (> = 2.11.1)