-
操作系统存储管理实验报告(采用C/C++语言实现)
资源介绍
一. 实验目的:
1.通过编写和调试存储管理的模拟程序以加深对存储管理方案的理解。熟悉虚存管理的各种页面淘汰算法
2.通过编写和调试地址转换过程的模拟程序以加强对地址转换过程的了解。
二.实验要求
实验程序由以下三大部分组成:
(1) 通过随机数产生一个指令序列(实际上是指令的逻辑地址序列),共320条指令。指令的地址按下述原则生成:
A:50%的指令是顺序执行的
B:25%的指令要实现向前跳转,均匀分布在前地址部分
C:25%的指令要实现向后跳转,均匀分布在后地址部分
具体的实施方法是:
A:在[0,319]的指令地址之间随机选取一起点m
B:顺序执行一条指令,即执行地址为m+1的指令
C:在前地址[0,m+1]中随机选取一条指令并执行,该指令的地址为m’
D:顺序执行一条指令,其地址为m’+1
E:在后地址[m’+2,319]中随机选取一条指令并执行
F:重复步骤A-E,直到320次指令
(2) 将每条指令的逻辑地址变换为页地址
设:页面大小为1K;
用户内存容量4页到32页;
用户虚存容量为32K。
在用户虚存中,按每K存放10条指令排列虚存地址,即320条指令在虚存中的存放方式为:
第 0 条-第 9 条指令为第0页(对应逻辑地址为[0,9])
第10条-第19条指令为第1页(对应逻辑地址为[10,19])
………………………………
第310条-第319条指令为第31页(对应逻辑地址为[310,319])
按以上方式,用户指令可组成32页。
(3) 分别使用FIFO算法和LFU算法,计算给用户进程的这32页分配4,5,…,32个页面(内存块)时其缺页率。
- 上一篇: LINUX系统编程之进程间通信机制
- 下一篇: 操作系统实现作业调度实验MFC源程序