基于JAVA的内存管理模拟

在操作系统课上的一点小感想,基于JAVA的内存管理模拟,分享出来和大家一起学习。

进程的虚拟地址空间中也有三种状态的页面:空闲页面、保留页面和提交页面。空闲(Free)页面:空闲页面是指那些可以保留或提交的可用页面。保留(Reserved)页面:保留页面是逻辑页面已分配但没有分配物理存储的页面。设置这种状态的效果是可以保留一部分虚拟地址,这样,如果不预先释放这些地址,就不能被其他应用程序(如 Malloc,LocalAlloc等)的操作所使用。试图读或写空闲页面或保留页面将导致页面出错异常。保留页面可被释放或提交。提交(Committed)页面:提交页面是物理存储(在内存中或磁盘上)已被分配的页面。可对它加以保护,不许访问或允许只读访问,或允许读写访问。提交也可以被回收以释放存储空间,从而变成保留页面。

在本项目中,首先执行Main类中main函数的makeOperationFile()方法生成随机输入文件,其中包含对内存要求作的各种操作;然后执行Main类中main函数的memoryOperation()方法,实现输入文件所要求的各项内存管理操作。

参考博文和源码下载地址:

https://write-bug.com/article/1364.html

你可能感兴趣的:(基于JAVA的内存管理模拟)