实验九存储管理摘要.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验九 存储管理 [1]Windows Xp内存结构 背景知识 Windows Xp是32位的操作系统,它使计算机CPU可以用32位地址对32位内存块进行操作。内存中的每一个字节都可以用一个32位的指针来寻址。这样,最大的存储空间就是232字节或4000兆字节 (4GB) 。这样,在Windows下运行的每一个应用程序都认为能独占可能的4GB大小的空间 而另一方面,实际上没有几台机器的RAM能达到4GB,更不必说让每个进程都独享4GB内存了。Windows在幕后将虚拟内存 (virtual memory,VM) 地址映射到了各进程的物理内存地址上。而所谓物理内存是指计算机的RAM和由Windows分配到用户驱动器根目录上的换页文件。物理内存完全由系统管理。 实验目的 通过实验了解windowsXp内存的使用,学习如何在应用程序中管理内存、体会Windows应用程序内存的简单性和自我防护能力。 了解windowsXp的内存结构和虚拟内存的管理,进而了解进程堆和windows为使用内存而提供的一些扩展功能。 工具/准备工作 您需要做以下准备: 一台运行Windows Xp Professional操作系统的计算机 计算机中需安装Visual C++ 6.0专业版或企业版 实验内容与步骤 Windows提供了一个API即GetSystemInfo() ,以便用户能检查系统中虚拟内存的一些特性。程序5-1显示了如何调用该函数以及显示系统中当前内存的参数。 步骤1:登录进入Windows Xp Professional。 步骤2:在“开始”菜单中单击“程序”-“Microsoft Visual Studio 6.0”–“Microsoft Visual C++ 6.0”命令,进入Visual C++窗口。 步骤3:在工具栏单击“打开”按钮,在“打开”对话框中找到并打开实验源程序5-1.cpp。 程序5-1:获取有关系统的内存设置的信息 // 工程vmeminfo #include windows.h #include iostream #include shlwapi.h #include iomanip #pragma comment(lib, shlwapi.lib) void main() { // 首先,让我们获得系统信息 SYSTEM_INFO si; :: ZeroMemory(si, sizeof(si) ) ; :: GetSystemInfo(si) ; // 使用外壳辅助程序对一些尺寸进行格式化 TCHAR szPageSize[MAX_PATH]; ::StrFormatByteSize(si.dwPageSize, szPageSize, MAX_PATH) ; DWORD dwMemSize = (DWORD)si.lpMaximumApplicationAddress - (DWORD) si.lpMinimumApplicationAddress; TCHAR szMemSize [MAX_PATH] ; :: StrFormatByteSize(dwMemSize, szMemSize, MAX_PATH) ; // 将内存信息显示出来 std :: cout Virtual memory page size: szPageSize std :: endl; std :: cout.fill (0) ; std :: cout Minimum application address: 0x std :: hex std :: setw(8) (DWORD) si.lpMinimumApplicationAddress std :: endl; std :: cout Maximum application address: 0x std :: hex std :: setw(8) (DWORD) si.lpMaximumApplicationAddress std :: endl; std :: cout Total available virtual memory: szMemSize std :: endl ; } 步骤4:单击“Build”菜单中的“Compile 5-1.cpp”命令,并单击“是”按钮确认。系统对5-1.cp

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

我是一名原创力文库的爱好者!从事自由职业!

1亿VIP精品文档

相关文档