Как распечатать файл, начиная с n-го символа?

vmalloc()— это внутренняя функция ядра. Он недоступен для пользовательских программ. Это не влияет на выделение памяти для пользовательских программ. VmallocTotalограничивает выделение кода ядра, который вызывает vmalloc()(, а VmallocTotalне изменяется ни автоматически, ни вручную ).

Максимальный размер памяти, который может быть «выделен» пользовательскими программами, зависит от настроек overcommit. Я пишу «выделено» в пугающих кавычках, потому что «переполнение» несколько противоречит идее «выделения памяти». Одно объяснение здесь, вы можете искать по ключевым словам, которые он использует для других объяснений:https://serverfault.com/questions/606185/how-does-vm-overcommit-memory-work

Как сказано в документации по ядру , системные вызовы, такие как mmap()или старый sbrk(), по умолчанию не выделяют память. Они возвращают «адресное пространство». Реальная память будет отображена по требованию -, если/когда она будет записана. Память отображается в виде страниц (, обычно 4096 байтов ).

0
14.06.2020, 03:32
0 ответов

Теги

Похожие вопросы