выделять в ней кусочки по порядку, после освобождения кусоча / кусочков подряд будет пытаться уместить в него новое выделение памяти, и, если не получится, выделать дальше, и, если и это не получится, захватывать очередной кусок у ОС?
ты же вроде расписал, что хочешь) осталось сесть, и написать это на С++, если будут конкретные вопросы по конкретным кускам кода - приходи
https://en.cppreference.com/w/cpp/memory/monotonic_buffer_resource
Как хранить какие участки выделены, с минимальным дерганьем ОС?
Это не совсем то, что он хочет, в конце концов он хочет сначала зарезервировать пространство адресов, потому что "по порядку"
Если списком, то дорого ведь будет?
Это не получится сделать как обертку над malloc?
Теперь я не понимаю, чего ты хочешь
Я хочу один раз получить 2 Мегабайта, чтобы не делать сотни системных вызовов по несколько байт.
Проси память у системы и дели еë
Вот. Я и спрашиваю, как это делать, когда никаких АТД нет.
А, ну тебе правильно посоветовал Александр -> почитай как стандартные пулы комбинировать
malloc это уже обёртка над системными распределителями
И кто-то мешает попросить у malloc или new сразу 2 мегабайта?
Это не сложно, тебе нужен default -> monotonic_memory_pool -> synchronized_memory_pool
Обсуждают сегодня