实验报告
实验名称
?/p>
Windows
虚拟存储器管?/p>
实验时间
?/p>
2014
?/p>
5
?/p>
28
?/p>
实验人员
?/p>
张熙
(姓名)
2012141461286
(学号)
____2012____
(年级)
实验目的
?/p>
1
、了?/p>
Windows 2000/XP
的内存管理机制,掌握页式虚拟存储技术?/p>
2
、理解内存分配原理,特别是以页面为单位的虚拟内存分配方法?/p>
3
、学会使?/p>
Windows 2000/XP
下内存管理的基本
API
函数?/p>
实验环境
?/p>
VC6.0
实验步骤
?/p>
1
、下?/p>
virtumem.cpp
?/p>
2
、建立工程,?/p>
virtumen.cpp
加入?/p>
3
、编译工程,观察结果,确信六种状态都出现至少一次,必要时可改程序,方便观察?/p>
果;
4
、看懂程序,按要求另写一段小程序?/p>
5
、编译,执行,观察结果?/p>
6
,总结?/p>
实验陈述?/p>
1
、基础知识?/p>
pagefile.sys
文件?/p>
位置在:
____
系统盘的根目录下,属性为系统隐藏文件
此文件的作用?/p>
__
以磁盘文件的形式来存储没有装入内存的程序和数据文件部?/p>
改变此文件大小的方法?/p>
方法是:右击“我的电脑?/p>
,依次选择“属性?/p>
->
“高级?/p>
->
“性能
-
选项?/p>
->
“高级?/p>
->
“虚拟内?/p>
-
更改?/p>
虚拟地址空间中的页面分为?/p>
提交页面?/p>
___
保留页面
________
?/p>
______
空闲页面
_______
页面的操作可以分为:
保留、提交、回收、释放、加锁、解?/p>
2
、编程准?/p>
.
页面属性是在结构体
______MEMORY_BASIC_INFORMA
TION_______
的字?/p>
AllocationProtect
和字?/p>
Protect
中体现出来的?/p>
简?/p>
VirtualFree,VirtualPtotect,VirtualLock,VirtualUnlock,VirtualQuery
的作用:
VirtualFree
?/p>
解除已被提交的虚存或者释放被保留或者提交虚拟地址空间?/p>
VirtualFree
还可以用来对?/p>
提交的虚拟地址页解除提交,使得该段地址空间变成保留状态?/p>
(注:一旦地址页面被保留或者已被提交,
?/p>
VirtualFree
函数是唯一可以释放它们的函数,即将它们返回到自由地址状态的方法;当解除地址的提?/p>
时,所有与该地址相关的物理内存都会被释放?/p>
?/p>
VirtualPtotect
:改变虚拟内存页的保护方式。例如,一个应用程序可以按
PAGE_READWRITE
保护?/p>
式来提交一个页的地址,并且立即将数据填写到该页中。然后该页的保护将被改变?/p>
PAGE_READONL
Y
,