Describes the steps required in producing a ROM that will work with Writable Data Paging (WDP).
Writable Data Paging (WDP) allows allocated memory that is to be written e.g. stacks and heaps to be paged in and out of the RAM pool.
The output of this tutorial will be a configuration that allows the ROM build to use demand paging.
Below is a typical OBY file that uses data paging, XIP ROM and code paging:
// MyDPConfig.oby // // The section below is used to specify if XIP ROM paging is to be implemented. #if !defined PAGED_ROM #define PAGED_ROM #endif // The section below is used when code paging is to be implemented. #if !defined USE_CODE_PAGING // Comment out the next line if code paging is wanted #define USE_CODE_PAGING #endif #if !defined CODE_PAGING_FROM_ROFS // Comment out the next line if code paging from primary rofs is wanted #define CODE_PAGING_FROM_ROFS #endif // The section below is used to configure the RAM pages for writable data paging. ROM_IMAGE[0] { pagedrom compress // Min Max Young/Old // Live Live Page // Pages Pages Ratio demandpagingconfig 256 512 3 pagingoverride defaultpaged // The section below specifies if the default paging policy is to used. #if defined USE_CODE_PAGING && !defined USE_DATA_PAGING codepagingpolicy defaultpaged #endif #if defined USE_DATA_PAGING #if defined USE_CODE_PAGING codepagingpolicy defaultpaged #endif datapagingpolicy defaultpaged #endif } #if defined CODE_PAGING_FROM_ROFS || defined USE_DATA_PAGING ROM_IMAGE[1] { pagingoverride defaultpaged } #endif
The OBY file that determined the start of the primary ROFS partition, for example base.iby, would then be adjusted thus:
#if defined(_NAND) || defined(_NAND2) #if !defined PAGED_ROM || defined CODE_PAGING_FROM_ROFS || defined USE_DATA_PAGING REM Start of ROFS image ROM_IMAGE[1] { #endif #endif
This tutorial only covers the configuration of the general demand paging parameters. To see how to make individual executables pageable see (the mmp configuration tutorial).
The next step is to build the writable data paging ROM
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.