|
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-684F99F3-7C7D-5B50-8EC0-BE14E22C33BE" xml:lang="en"><title>ROM |
|
13 Compression of Executable Files</title><shortdesc/><prolog><metadata><keywords/></metadata></prolog><conbody> |
|
14 <p>Both EKA1 and EKA2 both allow compression of files in non-XIP ROM images. |
|
15 EKA2 can also compress executables in XIP ROM images. </p> |
|
16 <p>When an executable file is built into the release directory, it is either |
|
17 in a compressed or an uncompressed state, depending on whether the <codeph>compresstarget</codeph> or <codeph>uncompresstarget</codeph> keyword |
|
18 is specified in the <filepath>.mmp</filepath> file that describes how the |
|
19 executable is built. This does not change in EKA2. </p> |
|
20 <section id="GUID-A1E4CBAE-46A8-5CCE-8C87-EC2E44CB4F7E"><title>Non-XIP ROM |
|
21 image</title> <p>The general rule for an executable file in a non-XIP ROM |
|
22 image is the same in both EKA1 and EKA2, i.e. the file is in the same state |
|
23 as in the release directory, unless it is overridden by specifying the <xref href="GUID-D9FA2894-D7B6-58EE-AEE3-39E6BECF144E.dita">compress</xref> option on |
|
24 the <codeph>ROM_IMAGE</codeph> keyword in the <filepath>.oby</filepath> file |
|
25 that you pass to <codeph>BUILDROM</codeph>. (Note that this gets translated |
|
26 to the command line option <codeph>‑compress</codeph>, and passed to the appropriate |
|
27 tool: <xref href="GUID-77C17C57-6BC7-5C9F-9F2C-7DC57B45F774.dita">rombuild or rofs |
|
28 build</xref> . </p> </section> |
|
29 <section id="GUID-566898A8-4655-598F-8430-9E54B440F21E"><title>XIP ROM image</title> <p><b>EKA1</b> </p> <p>In EKA1, an executable file is always uncompressed in |
|
30 a XIP ROM image. The uncompressed file has had all of its symbols resolved, |
|
31 and can only be executed in its location within the XIP ROM. Files are specified |
|
32 by using the <codeph>file</codeph> keyword in the <filepath>.oby</filepath> file. |
|
33 The following diagram summarises the situation for EKA1. </p> <fig id="GUID-F781B307-B816-5E86-A92F-81A96D513451"> |
|
34 <image href="GUID-6E4BA263-5A75-5E8F-9E3A-5517C52DF67E_d0e374676_href.png" placement="inline"/> |
|
35 </fig> <p><b>EKA2</b> </p> <p>In |
|
36 EKA2, executables can be placed in the ROM in: </p> <ul> |
|
37 <li id="GUID-6830D039-F67A-5409-9805-ACC34C5AF9C4"><p> <i>uncompressed</i> form |
|
38 with all of its symbols resolved, and able to be executed in its location |
|
39 within the XIP ROM. The executable is usually specified by using the <codeph>file</codeph> keyword |
|
40 in the <filepath>.oby</filepath> file. </p> </li> |
|
41 <li id="GUID-6C573DBF-BF29-5BC7-A427-4818DB00A768"><p>in <i>uncompressed</i> form, |
|
42 but with all of its relocatable information still present; this is specified |
|
43 by using the new <codeph>fileuncompress</codeph> keyword in the <filepath>.oby</filepath> file. </p> </li> |
|
44 <li id="GUID-1E6EEA8B-9AAD-5B77-A8CB-317F57F35266"><p>in <i>compressed</i> form, |
|
45 but with all of its relocatable information still present; this is specified |
|
46 by using the <codeph>filecompress</codeph> keyword in the <filepath>.oby</filepath> file. </p> </li> |
|
47 </ul> </section> |
|
48 </conbody></concept> |