Большинство современных malloc
реализаций работают за счет выделения большого куска памяти, полученного из ОС.Если этот блок заканчивается, malloc
запрашивает у ОС новый большой блок.
Вы можете основывать свою собственную реализацию на существующей реализации malloc
(например, glibc one)и вместо получения блока из ОС вы используете один статический буфер.Когда это закончится, malloc
начнет давать сбой, так же, как это происходит, когда ОС не может предоставить какие-либо новые блоки.