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