 | Level: Intermediate Arpan Sen (arpan@syncad.com), Technical lead, Synapti Computer Aided Design Pvt Ltd Rahul Kumar Kardam (rahul@syncad.com), Senior Software Developer, Synapti Computer Aided Design Pvt Ltd
19 Feb 2008 Performance optimization of code is serious business. It's fairly common to see a
piece of functionally correct software written in C or C++ that takes way
too much memory, time, or, in the worst case, both. As a developer, one of the most
powerful tools that C/C++ arms you with to improve processing time and prevent
memory corruption is the control over how memory is allocated or deallocated in your
code. This tutorial demystifies memory management concepts by telling you how to
create your very own memory manager for specific situations.
Objectives
In this tutorial, you'll learn what considerations you need to take before
designing a memory manager, the specific techniques available for creating such a memory manager,
and, finally, the method for creating it. You'll also learn about the advantages and disadvantages of various types of memory manager designs.
Prerequisites
This tutorial is written for Linux® or UNIX® programmers whose skills and
experience are at a beginning to intermediate level. You should have a general
familiarity with using a UNIX command-line shell and a working knowledge of the
C/C++ language. Any additional knowledge of internal workings of routines such
malloc, calloc, free, memcpy, and memset (that is, routines that deal with memory allocation, deallocation, and content modification) is a plus.
System requirements
To run the examples in this tutorial, you need a Linux or UNIX box that has the g++
compiler toolchain installed on it. A sufficiently large amount of RAM (approximately 256 MB)
is also required.
Duration
2 hours
Formats html, pdf
|  | |  |