Comparing memory management on Symbian and Maemo Platforms
hamishwillee
(Talk | contribs) m (Automated change of text from Image:More_work_needed.gif to {{NeedsMoreWork}}. (Use template rather than image directly)) |
hamishwillee
(Talk | contribs) m (Hamishwillee - Bot update - Add ArticleMetadata) |
||
| (One intermediate revision by one user not shown) | |||
| Line 1: | Line 1: | ||
| − | {{NeedsMoreWork}} | + | {{ArticleMetaData <!-- v1.2 --> |
| + | |sourcecode= <!-- Link to example source code e.g. [[Media:The Code Example ZIP.zip]] --> | ||
| + | |installfile= <!-- Link to installation file (e.g. [[Media:The Installation File.sis]]) --> | ||
| + | |devices= <!-- Devices tested against - e.g. ''devices=Nokia 6131 NFC, Nokia C7-00'') --> | ||
| + | |sdk= <!-- SDK(s) built and tested against (e.g. [http://linktosdkdownload/ Qt SDK 1.1.4]) --> | ||
| + | |platform= <!-- Compatible platforms - e.g. Symbian^1 and later, Qt 4.6 and later --> | ||
| + | |devicecompatability= <!-- Compatible devices e.g.: All* (must have internal GPS) --> | ||
| + | |dependencies= <!-- Any other/external dependencies e.g.: Google Maps Api v1.0 --> | ||
| + | |signing= <!-- Signing requirements - empty or one of: Self-Signed, DevCert, Manufacturer --> | ||
| + | |capabilities= <!-- Capabilities required by the article/code example (e.g. Location, NetworkServices. --> | ||
| + | |keywords= <!-- APIs, classes and methods (e.g. QSystemScreenSaver, QList, CBase --> | ||
| + | |language= <!-- Language category code for non-English topics - e.g. Lang-Chinese --> | ||
| + | |translated-by= <!-- [[User:XXXX]] --> | ||
| + | |translated-from-title= <!-- Title only --> | ||
| + | |translated-from-id= <!-- Id of translated revision --> | ||
| + | |review-by= <!-- After re-review: [[User:username]] --> | ||
| + | |review-timestamp= <!-- After re-review: YYYYMMDD --> | ||
| + | |update-by= <!-- After significant update: [[User:username]]--> | ||
| + | |update-timestamp= <!-- After significant update: YYYYMMDD --> | ||
| + | |creationdate= 20071212 | ||
| + | |author= [[User:Ebra]] | ||
| + | }} | ||
| + | [[Category:Maemo]][[Category:Symbian]][[Category:Porting]][[Category:Essential Idioms]][[Category:Base/System]] | ||
| + | {{NeedsMoreWork}} | ||
| − | |||
| − | |||
== Introduction == | == Introduction == | ||
Althought the latest mobile devices have a huge amount of memory available compared to the earlier devices, it is still important to work with memory carefully. The mobile devices are typically always on. The devices are not regularly rebooted and even a small memory leak will eventually cause problems. Many of the applications run in a mobile device are not stopped when user starts a new application. The previous application still runs in the background. | Althought the latest mobile devices have a huge amount of memory available compared to the earlier devices, it is still important to work with memory carefully. The mobile devices are typically always on. The devices are not regularly rebooted and even a small memory leak will eventually cause problems. Many of the applications run in a mobile device are not stopped when user starts a new application. The previous application still runs in the background. | ||
| − | |||
Whether the application is created with C (the native language for the Maemo Platform) or C++ (the native language for the S60 Platform) the application needs to make sure that it frees all the memory and resources that it allocates. | Whether the application is created with C (the native language for the Maemo Platform) or C++ (the native language for the S60 Platform) the application needs to make sure that it frees all the memory and resources that it allocates. | ||
| − | |||
Every time the application makes a memory or resource allocation it needs to be able to handle an out-of-memory situation. | Every time the application makes a memory or resource allocation it needs to be able to handle an out-of-memory situation. | ||
| Line 17: | Line 36: | ||
== S60 Platform == | == S60 Platform == | ||
| − | [[CleanupStack]] | + | * [[CleanupStack]] |
| − | + | * [[Memory Management]] | |
| − | [[Memory Management]] | + | * [[Two-phase construction]] |
| − | + | ||
| − | [[Two-phase construction]] | + | |
== Maemo Platform == | == Maemo Platform == | ||
| − | [http://maemo.org/development/documentation/manuals/3-x/maemo_coding_style_and_programming_guidelines/ Maemo Coding Style and Programming Guidelines] | + | * [http://maemo.org/development/documentation/manuals/3-x/maemo_coding_style_and_programming_guidelines/ Maemo Coding Style and Programming Guidelines] |
Revision as of 08:45, 20 July 2012
Article Metadata
Introduction
Althought the latest mobile devices have a huge amount of memory available compared to the earlier devices, it is still important to work with memory carefully. The mobile devices are typically always on. The devices are not regularly rebooted and even a small memory leak will eventually cause problems. Many of the applications run in a mobile device are not stopped when user starts a new application. The previous application still runs in the background.
Whether the application is created with C (the native language for the Maemo Platform) or C++ (the native language for the S60 Platform) the application needs to make sure that it frees all the memory and resources that it allocates.
Every time the application makes a memory or resource allocation it needs to be able to handle an out-of-memory situation.
Comparing S60 and Maemo Platforms

