Информация об изменениях

Сообщение Re[6]: Менеджер памяти от 27.07.2021 13:32

Изменено 27.07.2021 13:35 TailWind

Re[6]: Менеджер памяти
AG>Другая: распеделять разные размеры аллокаций по разным блокам. Например аллокации до 16 байт, до 32 байт, до 64 байт и т.д. Т.е. аллокация 17 байт будек как 32 байта.
AG>На каждую выделен блок самих для данных плюс битовый массив, какой блок занят/свободен. Ну и предусмотрена возможность выделения ещё одного большого блока для такого же размера, когда текущий заполнится.

Да, вот что-то вроде этого нужно

Может есть какая-то литература на эту тему?
Или что забить в гугле чтобы найти известные подходы?

AG>Да, если есть необходимость, чтобы всё было в конкретном файле, думаю, идея в том, чтобы пережить перезапуск программы.

Просто save, load сделать
Плюс файл формируется не последовательно, а заполняется постепенно
Выделенные блоки увеличиваются в размере
Re[6]: Менеджер памяти
AG>Другая: распеделять разные размеры аллокаций по разным блокам. Например аллокации до 16 байт, до 32 байт, до 64 байт и т.д. Т.е. аллокация 17 байт будек как 32 байта.
AG>На каждую выделен блок самих для данных плюс битовый массив, какой блок занят/свободен. Ну и предусмотрена возможность выделения ещё одного большого блока для такого же размера, когда текущий заполнится.

Да, вот что-то вроде этого нужно

Может есть какая-то литература на эту тему?
Или что забить в гугле чтобы найти известные подходы?

AG>Да, если есть необходимость, чтобы всё было в конкретном файле, думаю, идея в том, чтобы пережить перезапуск программы.

С одной стороны нужен save, load
С другой стороны в память 32-bit C++ application это не лезет

Плюс файл формируется не последовательно, а заполняется постепенно
Выделенные блоки увеличиваются в размере