A.3. Run-time Impact of Increased Code Size
Increasing the code size of an executable can impact the following system characteristics:[]
[] Characteristics, such as maintainability, testability, etc., can also be influenced by having more code but they're not significantly influenced by how the device is configured.
The executable takes up additional disk space.
More RAM is needed to load the executable.
Loading the executable takes longer.
However, which characteristics are impacted and to what degree varies according to how the device is configured and what technologies it uses. Table A.2 summarizes the determining factors.
Potential Impacts of Increased Code Size | Device Configuration | |||
---|---|---|---|---|
XIP | Non-XIP | |||
Moving Memory Model | Multiple Memory Model | Code is Demand Paged | ||
Disk space | Particularly impaired | Impaired | Impaired | Impaired |
RAM usage | No significant impact | Increases | Increases independently of how many processes use the code | Reduces impact of the memory model |
Time to load the code | No significant impact | Impaired | Impaired | Variable (see below) |
As you can see the most important factor is whether the code is loaded from XIP or non-XIP flash. If it's on XIP flash then the Loader has to do very little to enable the code to be executed. If the code is on non-XIP flash then, by definition, the code cannot be executed in place and the Loader has to allocate RAM in which to hold the code that will be executed. In addition, it's not a simply case of ...
Get Common Design Patterns for Symbian OS: The Foundations of Smartphone Software now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.