zoukankan      html  css  js  c++  java
  • 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 以下为应用程序使用部分。
  • 相关阅读:
    泛海精灵软件预发布统计报告 & 反馈
    【scrum】2.23
    VS2010中C#添加图片(资源)
    用XML存储程序的配置
    scrum 2.28
    【Scrum】2.24
    《人月神话》读书心得
    微软R&D喜欢什么人才
    “电脑族”应多做下肢运动
    ASCII表
  • 原文地址:https://www.cnblogs.com/googlegis/p/2979220.html
Copyright © 2011-2022 走看看