Why doesn't Symbian OS support writeable static data?
来源:互联网 发布:giga365 新域名 编辑:程序博客网 时间:2024/05/16 07:12
Why doesn't Symbian OS support writeable static data?
The main reason writeable static data (WSD) is not supported on Symbian OS, is that it comes at the cost of significant memory wastage. Symbian OS runs in memory constrained devices, so Symbian have made the design decision not to support WSD.
The main sources of memory wastage are discussed below:
1. Requirement for multiple copies of DLLs in RAM
All processes that use a DLL must set the same address for the DLL's static data, because the address is referenced by the shared DLL code. If the required address is free when the process comes to use the DLL, then there is no problem. However it is perfectly possible that the address might not be free, so the copy of the DLL in memory cannot be used.
The workaround is to copy the DLL code and modify the copy to use a different address for static data. Symbian OS does not consider this duplication acceptable.
2. Inefficient use of RAM pages
The amount of memory needed for writable static data by any DLL is likely to be much smaller (<0x100 bytes) than the smallest possible RAM allocation (4K). The remaining memory is wasted. Since the memory is per-process-dll-static-data, the memory wastage on the machine is:
(4K-WSD bytes)*number-client-processes.
- Why doesn't Symbian OS support writeable static data?
- Why doesn't Symbian OS support writeable static data?
- why vue.js doesn't support templateURL
- Why doesn't Objective-C support private methods?
- Why dynamic_cast doesn't work ?
- PointToPointNetDevice doesn't support TapBridgeHelper
- Why doesn't Linux need defragmenting?
- Why doesn't Linux need defragmenting?
- Why doesn't my new Favicon display?
- Why doesn't C++ provide heterogenous containers?
- ROOT: Why TStyle::SetStatFontSize() doesn't work?
- Why doesn't .bashrc run automatically?
- Why NIO doesn't use Stream
- Why Doesn't Python Have Switch/Case?
- Doesn't WPF6.1 support jre1.5 ?
- pathelement doesn't support the "localhost" attribute
- universalimageloader uil doesn't support scheme(protocol
- 'range' object doesn't support item deletion
- An Insight into UIQ 3 Concepts
- Getting the Current Cell Id using Symbian S60
- java阳历转换成阴历
- 软件不能卸载也不能安装的解决办法
- asp.net中 传递网页参数
- Why doesn't Symbian OS support writeable static data?
- 日期工具类
- 身份证号码的升位和验证
- How to draw an Icon on the IndicatorPane of Series 60
- js对身份证来进行校验
- C# Thread 点点滴滴
- Emotionalize Your Mobile Games With Tuny Engine Lite
- Transact-SQL Optimization Tips
- Moore's law & Hook's law