• winCE的内存管理


     winCE的内存管理
    早期winCE的存储设备一般采用ROM+MAM,ROM保存CE内核文件,应用程序,而RAM用于内核,所有应用程序运行时使用。后出现了永久存储设备。Flash,IDE。取代了ROM。
    在ROM中存放的所有文件可是压缩的也可以是不压缩的。这取决于OEM。对于ROM中存放的模块来说。如果是压缩的,模块在运行前先解压并全部存放在RAM中。如果不是压缩的。并且ROM介质支线性访问,就可以本地执行(XIP)。
    XIP加载运行方式的缺点就是执行速度相对较慢。在实时性的内核中,一定不能选用XIP。
    内核运行时。内核镜像由加载程序解压并将系统文件加载到RAM的NK,NK是在config.bib文件中定义的一段RAM区域,专用于保存内核镜像解压出来的所有文件。winCE将NK看做ROM。
    winCE的DLL分为XIP DLL和非XIP Dll。
    RAM文件系统专用于对象存储。winCE启动时把除了NK以外的RAM分为对象存储区域和应用程序内存区域。并且默认各占一半RAM.后来。对象存储的作用就被永久存储器替代了。
    winCE只能管理512M的物理内存和4GB大小的虚拟地址空间。X86系列和ARM系列的CPU在启动过程中内核会将现有物理内存地址全部映射到0x8000 0000以上的虚拟地址空间中供内核以后使用。
    整个4GB虚拟地址空间主要划分为两部分,0x8000 0000以上为内核使用部分,0x8000 0000 以下为应用程序使用部分。
  • 相关阅读:
    内部类&匿名内部类
    Object:
    多 态★★★★★(面向对象特征之三)
    接 口:
    继 承(面向对象特征之二)
    封 装(面向对象特征之一)
    三:面向对象:★★★★★
    Codeforces 719 E. Sasha and Array (线段树+矩阵运算)
    uestc oj 1218 Pick The Sticks (01背包变形)
    uestc oj 1217 The Battle of Chibi (dp + 离散化 + 树状数组)
  • 原文地址:https://www.cnblogs.com/googlegis/p/2979220.html
Copyright © 2020-2023  润新知