Windows CE 2.0 的内存使用 |
||||||||||||||||||||||||||||||||||||||||||||||
| 作者:microsoft 来源:microsoft 发布时间:2005-12-21 16:51:11 | ||||||||||||||||||||||||||||||||||||||||||||||
|
John Murray 1997年9月 简介 Microsoft Windows CE 是一种模块化的操作系统,可以根据目标设备或平台的不同而进行定制。根据目标平台的要求,原始设备制造商(OEM)或嵌入式系统开发商可在操作系统中选择所需的系统模块和组件。所选择的模块和组件决定了它所需的内存。 每个模块代表一个可能存在于系统软件中的完整功能块。如果并不需要某种功能,则可忽略相对应的整个模块。例如,有一个单独的可选模块,名为“serial”,该模块提供了所有的串行端口功能。 一些大型模块被进一步分割成许多小的组件,OEM可只选取那些设备所必须的组件,从而定制这些较小的模块版本。例如,文件系统模块包括用于 RAM 文件系统、ROM 文件系统、注册器以及数据库文件的组件。OEM 可有条件地多选并搭配这些文件系统,从而满足目标平台的需要。 OEM 和嵌入式系统开发者要想在设计时做出正确选择,就应知道所选模块或组件的内存消耗。本文将介绍 Windows CE 2.0 操作系统使用内存的情况,并针对所选 Windows CE 系统配置,列出了主要系统模块和组件的内存要求。文中还介绍了如何使用 Windows CE 工具,以查找其他配置的内存要求。 对于 Windows CE 2.0 版本,Microsoft 已创建并检测了这些模块和组件的若干基本配置。这些配置代表了系统性能的各种不同情况,其范围从只具备简单用户输入、无显示功能的基本系统,到完全看得见摸得着的手持电脑中的 Microsoft Windows 系统。 每种配置都建立在前一配置的基础之上。已检测的配置情况如下表所示。
系统内存使用
典型的 Windows CE 设备包括了 ROM 以及 RAM 内存。即使该设备由于更换备用电池而关闭,也能继续保持 RAM 中的内容。 系统内存类别如下表所示。
ROM 中包含有未压缩的 XIP 文件,其中包括系统可执行文件、动态链接库(DLL)以及捆绑应用程序如 Microsoft Pocket Word。这些文件从页面边界开始。ROM 还包括这些应用程序所用的其他文件,例如字体、音频以及位图文件,其中相当一部分都是压缩过的(少数字体例外)。可执行文件和 DLL 文件的代码和只读部分都是未经压缩的,这样便于就地执行。由于已被指定为 RAM,所以读取/写入部分将在 RAM 中进行压缩。 为节省空间,许多较小的其他文件以及压缩过的读取/输出部分都放在内存空穴内。所谓空穴,即在代码或只读存储部分已存入 ROM 后,在最后一个页面中剩下的空间。 在 ROM 中,也可压缩一个可执行文件或 DLL 文件。在运行压缩过的可执行文件时,系统将解压缩所需命令的页面,并将它们装载到 RAM 中。 RAM 分为两个部分:存储内存和计划内存。存储内存中包括注册器、文件系统以及数据库。文件系统包括应用程序以及用户安装或创建的数据文件。文件系统中的所有文件都是压缩过的。系统使用计划内存来运行应用程序。用户在任何时候,不需要重新启动电脑,就可调节 RAM 中存储用内存和计划用内存的分配情况。 在文件系统中,用户安装的应用程序都是压缩过的。为执行这类程序,需要将代码和数据都解压缩到计划内存中。系统支持命令页面调度 –– 当开始运行某个用户安装的应用程序时,只需要将一小部分应用程序解压缩到计划内存中。 除数据部分以外,每个可执行文件通常还要消耗一定数量的计划内存,用于存储堆栈数据。堆栈通常会动态地增加或缩小。 Windows CE Version 2.0 的内存使用
使用 SH3 微处理器时,Hitachi D9000 开发平台的内存使用情况如下表所示。在 Memtool 程序检测系统状态之后,即可获得RAM 和堆栈的值。这些数据计算如下: · ROM (代码以及只读数据)。Romimage 程序列出的该模块的所有部分的总和。 · RAM。Memtool 程序和 Ppsh 程序的内存信息(MI)命令在页面摘要中列出的读取/写入数据。 · 堆栈。Memtool 程序和 Ppsh 程序的内存信息命令在页面摘要中列出的堆栈值。 对于每个进程,尽管 Memtool 和 Ppsh 程序显示 RAM 中的只读数据,这里的内存也常是代表由内核所分配的共享内存。在物理意义上,共享内存只消耗一个页面,由内核使用。因此,仅有一个只读页面的模块,并不计算在模块的 RAM 要求之内,除非内核和模块的大小多于一个只读页面。对此例外,RAM 的需求是以只读部分与读取/写入部分的总和来计算的。 MinInput 系统表示最小输入系统。它包括内核、基本文件系统、注册器以及基本用户输入支持。基本用户输入支持包括:消息队列、触摸屏、键盘输入设备、音频、电源、发光二极管(LED)指示灯等。 下表以千字节(K)为单位,列出了系统启动后 MinInput 配置的内存情况。
本配置情况也包括 ROM 中的下列 DLL 文件。
MinGDI 系统表示带有图形设备接口(GDI)的最小化系统。最小的图形设备接口(GDI)包括 |
||||||||||||||||||||||||||||||||||||||||||||||
| [] [返回上一页] [打 印] | ||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||
文章评论 |
||||||||||||||||||||||||||||||||||||||||||||||
