Memory Pool Allocators from Jonathan Müller

After I have written a few posts about memory management in C++, I'm very glad to present Jonathan Müller, which will write a guest post about his implementation of the memory library. He will explain us his concepts about his design. Jonathan is known as an expert of memory management in the C++ community. In the  59 episode he presented his ideas to a world wide audiance.

Read more
Comments 1Views: 3301

Pros and Cons of the various Memory Allocation Strategies

In C++ you have the choice between various memory allocation strategies. In addition to the frequently used dynamic memory allocation you have the stack allocation. But you can preallocate the memory at the start time of your program. This can be a fixed sized block or one or more memory pools. Each of these strategies have its pros and cons. Which one, I will answer in this post.

 

Read more
Tags: memory
Comments 5Views: 3505

Strategies for the Allocation of Memory

There a lot of different strategies for allocating memory. Programming languages like Python or Java request their memory from the heap at runtime. Of course, C or C++ has also a heap but prefers the stack. But this are by far not so only strategies for allocating memory. You can preallocate memory at the start time of the program as a fixes block or as a pool of memory blocks. This preallocated memory can afterwards used at the runtime of your program. But the key question is. What are the pros and cons of the various strategies to allocate memory?

Read more
Tags: memory
Add CommentViews: 1920

Memory Management with std::allocator

What is common between all containers of the Standard Template Library? They have a type parameter Allocator that is by default std::allocator. The job of the allocator is it to manage the lifetime of its elements. That means to allocate and deallocate memory for its elements and to initialize and destruct them.

Read more
Add CommentViews: 2974

Overloading Operator new and delete 2

I overloaded in the last post operator new and delete. Therefore, it was possible to find memory leaks and get a first hint of the bad guys. My solution had two not so nice properties. With this post, I will overcome them.

Read more
Tags: memory
Add CommentViews: 1971

Overloading Operator new and delete 1

It happens quite to often that a C++ application allocates memory but don't deallocate it. This is the job for operator new and delete. Thanks to them both you can explicitly manage the memory management of an application.

Read more
Tags: memory
Add CommentViews: 1905

Explicit Memory Management

Explicit memory management has in C++ a high complexity but also provides a great functionality. Sad to say, but this special domain in not so known in C++. For example, you can directly create objects in static memory, in a reserved area, or even in a memory pool. That is functionality, that is often key in safety critical applications in the embedded world. Before the harvest is the work. Therefore, I will give in this post an overview, before I dive deeper into the details.

Read more
Tags: memory
Comments 6Views: 2196

My Newest E-Book

Latest comments

Subscribe to the newsletter (+ pdf bundle)

Blog archive

Source Code

Visitors

Today 423

All 252654

Currently are 199 guests and no members online