Management of free memory pages

Enterprise / PostgreSQL - Robert Haas [postgresql.org] - 2 December 2016 11:03 UTC

This is intended as infrastructure for a full-fledged allocator for dynamic shared memory. The interface looks a bit like a real allocator, but only supports allocating and freeing memory in multiples of the 4kB page size. Further, to free memory, you must know the size of the span you wish to free, in pages. While these are make it unsuitable as an allocator in and of itself, it still serves as very useful scaffolding for a full-fledged allocator.

Robert Haas and Thomas Munro. This code is mostly the same as my 2014 submission, but Thomas fixed quite a few bugs and made some changes to the interface.

Discussion: CA+TgmobkeWptGwiNa+SGFWsTLzTzD-CeLz0KcE-y6LFgoUus4A@mail.gmail.com Discussion: CAEepm=1z5WLuNoJ80PaCvz6EtG9dN0j-KuHcHtU6QEfcPP5-qA@mail.gmail.com

13e14a7 Management of free memory pages.
src/backend/utils/mmgr/Makefile | 2 +-
src/backend/utils/mmgr/freepage.c | 1886 +++++++++++++++++++++++++++++++++++++
src/include/utils/freepage.h | 99 ++
src/tools/pgindent/typedefs.list | 7 +
4 files changed, 1993 insertions(+), 1 deletion(-)

Upstream: git.postgresql.org


  • Share