Symbian3/SDK/Source/GUID-C549EC51-D81F-5AEC-80EA-EF83B2D9AF51.dita
author Dominic Pinkman <dominic.pinkman@nokia.com>
Fri, 13 Aug 2010 16:47:46 +0100
changeset 14 578be2adaf3e
parent 13 48780e181b38
permissions -rw-r--r--
Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept id="GUID-C549EC51-D81F-5AEC-80EA-EF83B2D9AF51" xml:lang="en"><title>Structure
of a heap</title><shortdesc>A heap consists of two lists of cells; the list of allocated cells
and the list of free cells.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
<p>A heap simply consists of two lists of cells; one is the list of allocated
cells and the other the list of free cells. Each list is anchored in the heap
object.</p>
<p>A cell consists of a cell header followed by the body of the cell itself.
The body of the cell is the area of memory which is considered allocated.</p>
<p>The cell header is a struct of type <codeph>RHeap::SCell</codeph> defined
as part of the <codeph>RHeap</codeph> class in <filepath>e32std.h</filepath>.</p>
<p>The following diagram shows a typical mix of free and allocated cells.</p>
<fig id="GUID-A066C7F2-B6E9-5F64-8A00-F2AC5D16B585">
<title>Example of the allocated and free cells in a heap</title>
<image href="GUID-4B4110D9-0CAA-5CA1-A994-9DAF501119E4_d0e245253_href.png" placement="inline"/>
</fig>
</conbody></concept>