欢迎来到天天文库
浏览记录
ID:52428155
大小:784.50 KB
页数:25页
时间:2020-04-06
《内存的管理与分配.ppt》由会员上传分享,免费在线阅读,更多相关内容在PPT专区-天天文库。
1、内存的管理与分配本节课程主要知识点RAM和ROMWindowsCE6.0的内存管理WindowsCE6.0的内存结构重点和难点重点内存管理的基本概念难点虚拟内存的使用RAM和ROMRAMRAM的大小是嵌入式设备的一个参数,直接决定着系统的性能表现。WindowsCE中的RAM分为程序区(系统堆)和对象存储区两部分。程序区和对象存储区的大小可以由用户动态的调整。RAM的程序区与PC机的RAM一样,存放正在运行的程序和相关的堆和栈。ROMROM中一般存放着操作系统和应用程序。目前嵌入式产品中的ROM一般为N
2、ANDFlash,所以系统经常可以重新刷机。WindowsCE6.0的内存管理内存管理内存管理是操作系统中最重要的功能之一,尤其是在嵌入式系统中更为重要。内存管理的目的是为了充分利用内存,尽可能方便用户使用内存。解决程序空间比实际内存空间大的问题。WindowsCE6.0的内存管理WindowsCE6.0内存管理是在WindowsXP内存管理的基础上优化而成的。内存管理采用虚拟内存方式来管理内存的使用。物理内存WindowsCE6.0最大支持512MB的物理内存。物理内存包括RAM、ROM和Flash存
3、储器。操作系统的映像和相关文件一般存储在Flash中。虚拟内存(1/2)WindowsCE6.0支持4GB的虚拟内存。管理虚拟内存的硬件是内存管理单元MMU,负责把虚拟地址映射到内存的物理地址。整个4GB虚拟地址空间划分为两部分,地址0x80000000以上的2G空间为内核使用部分,0x80000000以下的2G空间为应用程序使用部分。虚拟内存(2/2)KernelSpace0x80000000UserSpace0x00000000虚拟内存划分为两个空间。一个是内核空间,另一个是用户空间。Windows
4、CE6.0的内存结构WindowsCE5.0的内存结构SystemReserved(kernelmodespace)00000000040000004200000080000000FFFFFFFFActiveProcessActiveProcessActiveProcessActiveProcessActiveProcessActiveProcessApplicationSpaceReservedLargeMemoryArea(memorymappedfiles)ApplicationSpace0000
5、0000040000004200000080000000LargeMemoryArea(memorymappedfiles)WindowsCE5.0内存中的SlotsApplicationSlots(Slots2-32)CurrentApplication(Slots0-1)2GigabytesDividedinto6432MByteSlots31slotsforLMA31slotsforapplications2slotsforcurrentapplicationActiveProcessActive
6、ProcessActiveProcessActiveProcessActiveProcessWindowsCE6.0内存结构SystemReserved(kernelmodespace)0000000080000000FFFFFFFFApplicationSpace内核空间内核空间:地址0x80000000以上运行于核心态的进程使用静态映射物理地址SystemTrapAreaKernelGPVM(upto512MBdependingonCPU)0xD0000000RAMBasedObjectStore0
7、xC8000000KernelROMDLLs0xC0000000StaticMappedUncachedAddressSpace0xA0000000StaticMappedCachedAddressSpace0x80000000PerProcessVirtualMemory0x00000000物理内存映射虚拟内存2GBUser512MBUncached512MBCached32MBFlashPhysicalMemoryVirtualMemory040000008200000080000000A0000
8、000C00000000000000064MBRAM0000000064MBRAM32MBFlash64MBRAMFFFFFFFFAddressTranslation32MBFlashKernelSpaceUserSpace内核的动态链接库空间地址0xC0000000后的128MB的区域用于内核加载存储于ROM中的动态链接库。地址0xC8000000开始的128MB区域存储映射到基于RAM的对象文件系统。内核的虚拟机空间地址0xD000
此文档下载收益归作者所有