2013-07-01

2013-07-01 - Memory Manager (Version 2)

My recent long train journey provided an opportunity to write down the implementation of a memory manager, one which uses a linked list of free blocks and where every block has a header and a footer.  I read about something like this somewhere, but I don't remember where.  It should work very well for lots of things, however, for small allocations, the size of the header and footer introduce a significant space inefficiency.

Anyway, I'll get the implementation in and see how it goes.  I think I have a problem with my footer structure not being a multiple of 16 bytes, and I'm not sure if I should worry about putting the used blocks into a linked list of their own, or only worrying about the free blocks.  If I need a map of the memory, I can walk the structures.

No comments:

Post a Comment