This content has been marked as final. Show 4 replies
Are you just using the regular malloc? I know some memory allocators create zones around their actual allocations so things can be checked that you're not reading past the malloc. I think libumem does that, but I didn't think the standard allocator did. That could be a reason for the offset.
thanks for your answer. I am currently using libmapmalloc, cause I discovered, that standard libc does not aktually give free the memory after calling free() (which, by the way, is another effect, I am not understandind....I'm really a beginner when it comes to development....).
Can you recommend any doc, that describes the "wrapping" you mentioned ??
Thanks in advance !
I don't know about documentation for libmapmalloc. That may just be saving some state in the mmap. So it maps space, stores some data at the top, and then hands back an address a little ways in to the application. I assume that's normal.
Here's an entry about some of the protection features I was trying to describe that libumem uses. I have no idea if libmapmalloc does anything like this, or if it's just a spot for its use.
The reason that standard malloc library doesnt "free" the memory released by free is that the default behaviour is to hang on to any "free" memory so it can hand it out again for future requests.