Dynamic Memory Allocation & Fragmentation in C & C++ Web Seminar

Overview

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.

In this session the problems will be outlined in detail and an approach to deterministic dynamic memory allocation detailed.

What You Will Learn

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

About the Presenter

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

Who Should Attend

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

Technical Requirements

What do I need to watch and hear this web seminar?

Mentor Graphics’ web seminars are delivered using Adobe Connect. To watch the seminar all you need to have installed is the Adobe Flash Player, version 8 or later on Windows, Macintosh, Linux, and Solaris. The Flash Player is already installed on over 98% of internet connected computers worldwide so you will not have to install any software prior to attending the meeting. You will be able to login to the seminar room 15 minutes prior to the start time on the day of the presentation. You can hear the audio using your computer’s speakers via VoIP (Voice over IP) and background music will play prior to the beginning of the presentation.

Detailed system requirements

Microsoft® Windows Vista® Home Basic, Home Premium, Ultimate, Business, or Enterprise (32-bit edition)

  • Microsoft Internet Explorer 7 or later
  • Mozilla Firefox 2
  • Adobe Flash® Player 8 or later

Microsoft Windows® XP Professional or Home Edition with Service Pack 2

  • Microsoft Internet Explorer 6, 7
  • Mozilla Firefox 1.x, 2.x
  • Mozilla 1.x or later
  • Netscape 7.x
  • Adobe Flash Player 8 or later

Microsoft Windows 2000 with Service Pack 4

  • Microsoft Internet Explorer 5.x
  • Mozilla Firefox 1.x, 2.x
  • Mozilla 1.x
  • Netscape 8
  • Adobe Flash Player 8 or later

Windows hardware requirements

  • Intel® Pentium® II 450MHz or faster processor or equivalent (1GHz recommended when screen sharing)
  • 128MB of RAM

Mac OS X v10.4, 10.5 (Intel)

  • Firefox 1.5.0.3, 2.x
  • Safari 2.x
  • Adobe Flash Player 8 or later

Mac OS X v10.4 (PowerPC®)

  • Safari 1.x, 2.x
  • Firefox 1.x
  • Mozilla 1.x
  • Netscape 7.x or later
  • Adobe Flash Player 8 or later

Mac OS hardware requirements

  • PowerPC G3 500MHz or faster or Intel Core™ Duo 1.83GHz or faster processor
  • 128MB of RAM

Linux:

  • Red Hat® Enterprise Linux® (REHL) 3 update 8; RHEL 4 update 4 (AS/ES/WS); Novell SUSE® 9.x or 10.1
  • Mozilla Firefox 1.5.0.7, 2.x
  • Mozilla 1.7.x
  • SeaMonkey 1.0.5
  • Processor: Modern processor 800MHz or faster (1GHz recommended)
  • Memory: 512MB of RAM; 128MB of graphics memory
  • Adobe Flash Player 9 or later

Solaris™

  • Mozilla 1.7
  • Adobe Flash Player 9 or later

Additional requirements

  • Minimum bandwidth 56Kbps