软件开发技术基础.pptVIP

  • 3
  • 0
  • 约1.39千字
  • 约 8页
  • 2017-02-13 发布于北京
  • 举报
软件开发技术基础.ppt

软件开发技术基础 第3章 操作系统及程序设计(2) 讲授教师:卫颜俊 3.3 内存管理应用程序设计 内存管理的相关概念 内存数据空间的动态分配 内存代码空间的动态分配 3.3.1 内存管理 主要任务 对内存储器进行分配、变换、保护和扩充,存储管理还应该能够在内存和外存之间交换数据和代码。 在Windows操作系统下,存储器被保护起来,程序和用户无法直接访问,需要在程序中通过静态和动态两种方式来访问。 Windows的内存管理完成物理内存和虚拟内存之间的交换,虚拟内存是32位的,多达4GB的大小,内存管理还提供了一个核心服务,完成内存映射文件、写时复制内存和用户程序使用的大量和稀疏内存的管理。 3.3.1 内存管理(2) Windows NT在X86体系下虚拟地址空间的分布 例3-7使用动态申请的虚拟内存空间来编写一个计算任何数的阶乘的程序 LPVOID VirtualAlloc( LPVOID lpAddress, // 起始地址 DWORD dwSize, // 大小 DWORD flAllocationType, // 分配类型!(MEM_COMMIT等) DWORD flProtect // 保权限(PAGE_READWRITE等) ); BOOL VirtualFree( LPVOID lpAddress, //起

文档评论(0)

1亿VIP精品文档

相关文档