- 11
- 0
- 约3.23千字
- 约 15页
- 2018-05-14 发布于四川
- 举报
Session 2: Testing Windows CE .NET Alan Page, Microsoft 内存管理 内存结构 物理内存 在内部或外部总线上可访问的实际的RAM/ROM 虚拟内存 通过内存管理单元MMU转换过的虚拟地址 允许代码在需要的时候再换入 虚拟内存 虚拟内存管理 Windows CE为所有进程提供平板的4GB虚拟地址空间 系统仍然对每个进程提供保护 允许快速的进程间线程切换 使用虚拟内存 申请大块虚拟内存 Windows CE把虚拟内存分成64K的块 使用本地堆 内核为你的应用程序保留的虚拟地址 使用栈 存放函数内部使用的临时数据的区域 概述 虚拟内存模型 静态映射的虚拟内存 进程模型 进程内存 进程 模块 堆 栈 虚拟内存模型 虚拟内存 一个 32-bit (4 Gigabyte) 平板式虚拟内存地址空间 提供了被保护物理内存的有效使用 虚拟地址 内存管理单元 (MMU) “拥有” 物理内存 MMU将虚拟地址转换为物理地址 一个有效的虚拟地址必须被映射到一个物理地址 虚拟地址的静态和动态映射 物理地址 在上电时,在MMU有效之前只被CPU使用 虚拟内存模式 特权模式 在内核模式和用户模式间的虚拟内存split 所有的进程共享同一个平板式虚拟内存地址空间 通过MMU内核模式管理用户模式进程保护 内核空间 只被特权访问的内核模式代码使用(Kmode) 大多数是静态虚拟地址映射(不会有页内错误) 用户空间 每32MB由64个slots组成 大多数是动态虚拟地址映射 虚拟内存模式 静态映射虚拟地址 Process Model 虚拟地址 Slots 每个slot是32 MB (225 bytes) 虚拟地址空间 Slot空间被进程,DLLs, 和虚拟分配共享 在进程slot间快速进行上下文切换(交换页表) 当前线程执行在slot 0上 管理粒度 虚拟地址空间以64KB的粒度被分割 物理地址以4KB的粒度被页进行管理 分配规则 DLL 分配从高地址开始向下增长 进程分配从低地址开始向上增长 Lesson: Process Memory 模块 模块 标准的 Win32 Portable 可执行文件格式 标准的 Win32 工具 (符号, 数字信号, 等等) 动态连接库 (DLL) 用于输入和输出进程的可装载库 不同的实例数据执行在同一物理拷贝上 被当前进程激活/撤销控制 请求页面调度 将页面从存储器中提交/拷贝到RAM中用于执行 对于基于非压缩ROM的模块的在线执行(XIP) 解压基于ROM模块到RAM中 系统 API 调用机制 Coredll.dll 定位每一个进程slot的头地址 从用户模式的线程实现对系统API的调用 直接实现一些系统API的调用 引起一个例外(陷阱)转递到系统API的请求上 内核 捕获系统API请求的异常陷阱 分配一个系统exe去执行请求 用户模式的线程切换到系统exe进程空间 用户模式的线程继承当前进程的访问权限 系统 API 调用机制 堆 用法 以字节为粒度来分配内存 独立于处理器(隐藏了内存分页) 自动的分配内存和按要求提交页 不可变更 (当整个堆被释放时进行页面回收) 使用首次适应算法(first-fit algorithm)通过堆列表进行管理 使用相同大小对象分配时效率最高 局部堆 在装载处理时保留192KB虚拟内存 提交进程分配的物理页面 Private 堆 保留最初的固定和可扩展堆空间 一系列多线程的互斥对象 Shared 堆 对于当前进程可写,对于其它进程只读 栈 用法 存储在一个函数中使用的临时数据 存储在执行处理过程中的处理器寄存器的状态 为每一个线程创建时分配默认的栈 按要求提交 大小 依赖于CPU默认的栈大小 /STACK 连接器切换决定默认线程的栈大小 默认情况,一个进程的所有线程拥有相同的栈大小 使用 /GS 连接器检查栈看是否有缓存溢出 GetThreadCallStack – 恢复一个线程调用栈 * 只在桌面Windows上存在 Physical Memory * Storage Device Virtual Memory Logical Memory (Heap, stack) C Runtime (mallc, new…) Application Memory Mapping (Shared) Reserved Slot 32:Process32 . . . Slot 1:XIP DLL Code Slot 0:Active Process 2GB 2GB 32MB Kernel Space UserSpace Kernel Addresses: KPAGE, Trap Area, Others Slot 97: NK.EXE Unused S
您可能关注的文档
最近下载
- 36MN压机扁挤压筒组件制造关键技术研究.pdf VIP
- 大学生就业指导(第4版)PPT全套完整教学课件.pptx VIP
- Panasonic松下剃须刀ES-LS9CX用户手册.pdf
- 扁挤压筒设计制造与应用.pdf VIP
- 具身智能研究的关键问题:自主感知、行动与进化.pdf VIP
- 守卫生态,防控疫病-公众参与野生动物疫病防控.pptx VIP
- 高校地方研究院高质量发展:模式、机制与路径_随笔.docx VIP
- 2026丙午马年拜年祝福语110句超长版(分场景不踩雷,直接复制发).docx VIP
- 2026年春节后复工复产安全教育培训.pptx VIP
- 掌控野生疫源:卫生与生态.pptx VIP
原创力文档

文档评论(0)