Dynamic Memory Allocation & Fragmentation in C & C++

Overview

During this webinar we will discuss the challenges of dynamic memory to embedded software and how a deterministic memory allocator may be designed.

In C and C++, it can be very convenient to allocate and de-allocate blocks of memory as and when needed. This is certainly standard practice in both languages and almost unavoidable in C++. However, the handling of such dynamic memory can be problematic and inefficient. For desktop applications, where memory is freely available, these difficulties can be ignored. For embedded - generally real time - applications, ignoring the issues is not an option.

Dynamic memory allocation tends to be non-deterministic; the time taken to allocate memory may not be predictable and the memory pool may become fragmented, resulting in unexpected allocation failures.

What You Will Learn

  • Why dynamic memory is a problem to embedded software
  • How a deterministic memory allocator may be designed

Who Should View

  • Embedded software engineers and designers
  • Technical managers concerned with sourcing embedded software tools

Presenter Image Colin Walls

A Technical Marketing Manager, Colin has over twenty-five years experience in the electronics industry, largely dedicated to embedded software. A frequent presenter at conferences and seminars and author of numerous technical articles and two books on embedded software, Colin is a member of the marketing team of the Mentor Graphics Embedded Systems Division, and is based in the UK.

Book: Embedded Software: The Works
Blog: The Colin Walls Blog

Products Covered

Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.