课件009logo 课件009网站
首 页 课 件 试 卷 教 案 毕业论文 图书软件 职教研究 期刊推介 会员中心 信息发布
首页 >> 教案 >> 计算机教案 >> 操作系统课程设计 存储管理
操作系统课程设计 存储管理
资料类别
   计算机教案
课程(专业)
  操作系统
关键词
  操作系统|课程设计|存储管理
适用年级
  本科
身份要求
  普通会员
金 币
  7  (金币如何获得?

文件格式

  word
文件大小
  12K
发布时间
  2010-03-12 22:27:00
预览文件
 
下载次数
  7
发布人   凤舞九天jl
 内容简介:     操作系统课程设计 存储管理
  
   以下是课程设计题目:
   一、实验目的
   存储管理的主要功能之一是合理地分配空间。请求页式管理是一种常用的虚拟存储管理技术。
   本实验的目的是通过请求页式存储管理中页面置换算法模拟设计 , 了解虚拟存储技术的特点 , 掌握请求页式存储管理的页面置换算法。
   二、实验内容
   通过随机数产生一个指令序列,共320条指令。指令的地址按下述原则生成 :
   ① 50% 的指令是顺序执行的;
   ② 25% 的指令是均匀分布在前地址部分;
   ③ 25% 的指令是均匀分布在后地址部分。
   具体的实施方法是 :
   ①在 [0,319] 的指令地址之间随机选取一起点 m;
   ②顺序执行一条指令;
   ③在前地址[0,m+1]中随机选取一条指令并执行 , 该指令的地址为 m′;
   ④顺序执行一条指令 , 其地址为 m′+1;
   ⑤在后地址 [m′+2,319] 中随机选取一条指令并执行 ;
   ⑥重复上述步骤② ~ ⑤ , 直到执行 320 次指令。
   (1) 将指令序列变换成为页地址流
   设:①页面大小为 1K;
   ②用户内存容量为 4 页到 32 页 ;
   ③用户虚存容量为 32K 。
   在用户虚存中 , 按每 K 存放 10 条指令排列虚存地址 , 即 320 条指令在虚存中的存放方式为 :
   第 0 条 ~ 第 9 条指令为第 0 页 ( 对应虚存地址为 [0,9]);
   第 10 条 ~ 第 19 条指令为第 1 页 ( 对应虚存地址为 [10,19] ) ;
   ┇
   ┇
   第 310 条 ~ 第 319 条指令为第 31 页 ( 对应虚存地址为 [310,319]) 。
   按以上方式 , 用户指令可组成 32 页。
   (2) 计算并输出下述各种算法在不同内存容量下的命中率。
   ① 先进先出的算法 (FIFO);
   ② 最近最少使用算法 (LRR);
   ③ 最少访问页面算法 (LFR);
   ④ 最近最不经常使用算法 (NUR)。
  
   命中率 = 1 - 页面失效次数∕页地址流长度
  
   在本实验中 , 页地址流长度为 320, 页面失效次数为每次访问相应指令时 , 该指令所对应的页不在内存的次数。
   三、随机数产生办法
   关于随机数产生办法 ,Linux 或 UNIX 系统提供函数 srand( ) 和 rand( ), 分别进行初 始化和产生随机数。例如 :
   srand ();
   语句可初始化一个随机数 ;
   a[o]=10 * rand( ) / 32767 * 319 + 1;
   a[1]= 10 * rand( ) / 32767 * a[o];
   ┇
   语句可用来产生 a[0] 与 a[1] 中的随机数。
  
  
   以下是实验指导:
  
   【实验内容】
   〈任务〉
   设计一个虚拟存储区和内存工作区 , 并使用下述算法计算访问命中率。
   (1) 先进先出的算法 (FIFO)
   (2 )最近最少使用算法 (LRU)
   (3) 最佳淘汰算法 (OPT)
   (4) 最少访问页面算法 (LFU)
   (5 )最近最不经常使用算法 (NUR)
  
   命中率 =(1 一页面失效次数 )/ 页地址流长度
  
   〈程序设计〉
   本实验的程序设计基本上按照实验内容进行。即首先用Srand()和rand()函数定义
   和产生指令序列,然后将指令序列变换成相应的页地址流,并针对不同的算法计算出相应的命中率。相关定义如下:
   1. 数据结构
   (1) 页面类型
   typedef struct{
   int pn,pfn,counter,time;
   }pl_type;
   其中 pn 为页号 ,pfn 为面号 ,counter 为一个周期内访问该页面次数 ,time 为访问时间。
   (2) 页面控制结构
   struct pfc_struct{
   int pn,pfn;
   struct pfc_struct *next;
   };
   typedef struct pfc_struct pfc_type;
   pfc_type pfc[total_vp],*freepf_head,*busypf_head,*busypf_tail;
   其中 pfc[total_vp] 定义用户进程虚页控制结构 ,
   *freepf_head 为空页面头的指针 ,
   *busypf_head 为忙页面头的指针 ,
   *busypf_tail 为忙页面尾的指针。
  
   2. 函数定义
   (1)void initializd(): 初始化函数 , 给每个相关的页面赋值。
   (2)void FIFO(): 计算使用 FIFO 算法时的命中率。
   (3)void LRU(): 计算使用 LRU 算法时的命中率。
   (4)void OPT(): 计算使用 OPT 算法时的命中率。
  
  
  
   以下是部分源代码:
   // test_1.cpp : 定义控制台应用程序的入口点。
   //
   /**************************************************************
   *此程序为页面调度程序,用于模拟虚存与主存之间的页面置换
   *并同时采用FIFO,LRU,OPT,LFT,NUR几种算法
   *并比较在不同算法下及不同的主存页面状态下,主存的命中率的高低
   **************************************************************
   */
   #include "stdlib.h"
   #include "stdio.h"
   #include "time.h"
  
   #define TRUE 1
   #define FALSE 0
   #define INVALID -1 /*页面失效符*/
   #define null 0
  
   #define total_instruction 320 /*指令流长*/
   #define total_vp 32 /*虚页长*/
   #define clear_period 50 /*清零周期*/
  
   typedef struct
   { /*页面结构*/
   int pn,pfn,counter,time;
   }pl_type;
   /*--pn为页面队列号,pfn为页面控制结构中的页号,counter为访问次数--*/
   pl_type pl[total_vp]; /*页面结构数组;建立虚存页面空间*/
  

 相关说明:
  1. 如您下载的资料不止一份,建议您注册成为本站会员。会员请登录后下载。
  2. 会员购买金币50元以下,0.7元/个,50元以上,0.5元/个。具体请看:下载与付款
  3. 会员48小时内下载同一文件,不重复扣金币。
  4. 下载后请用WinRAR WinZIP解压缩后使用。
  5. 如仍有其他下载问题,请看常见问题解答

 下载地址:

   

相关教案
1 操作系统各章题解
2 常州工学院操作系统学习辅导
3 操作系统实验指导书及实验报告、源程
4 《操作系统》实验指导书
5 计算机网络课程设计任务书
6 辽宁工业大学《计算机网络》课程设计
7 《计算机应用基础》教案
8 西华大学数学与计算机学院上机实践报
9 2.1 WindowsXP操作系统
10 湖洲师范学院软件工程课程设计实验指
11 操作系统课程设计 存储管理
12 信息技术教案
13 《操作系统原理》实验指导书
14 操作系统课程设计——进程管理
15 信息技术教案(5部分)
推荐教案
1 计算机原理教案(全册)
2 工作表的建立、编辑与格式化教案
3 实验:利用IIS6.0配置企业We
4 信息技术教案
5 Visual Basic程序设计概
6 计算机网络实验指导
7 《3D Studio Max》教案
8 大学计算机基础教案
9 广州番禺职业技术学院软件测试电子教
10 《计算机组装与维护—组装主机》教案
11 第九章 编译预处理
12 Office SharePoint

网友评论(点击发表评论
序号评论人评论内容时间


设为首页  加入收藏  下载与付款  上传课件  资料征集  论坛与信息发布  期刊杂志推介  免责声明  常见问题   分类说明  联系本站  会员登录
课件009教育资源网 版权所有