欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    操作系统课程设计题目及代码Word文件下载.doc

    • 资源ID:623758       资源大小:75.50KB        全文页数:12页
    • 资源格式: DOC        下载积分:10金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    操作系统课程设计题目及代码Word文件下载.doc

    1、主目录、子目录及活动文件等。主目录和子目录都以文件的形式存放在磁盘,这样便于查找和修改。 (2)用户创建的文件,可以编号存储于磁盘上。如file0、file1、file2等,并以编号作为物理地址,在目录中进行登记。清华大学操作系统教程 张丽芬编著题目四 设计一个按时间片轮转法进程CPU调度的程序。 提示:(1)假设系统有5个进程,每个进程用一个进程控制块PCB来代表,PCB中包含进程名、链接指针、到达时间、估计运行时间、进程状态表。其中,进程名即为进程进标识。(2)为每一个进程设计一个要示运行时间和到达时间。(3)按照进程到达的先后顺序排成一个循环队列,再设一个队首指针指向第一个到达的进程首址

    2、。(4)执行处理机调度时,开始选择队首的第一个进程运行。另外再设一个当前运行进程指针,指向当前正运行的进程。(5)由于本实验是模拟实验,所以对被选中进程并不实际启运运行,只是执行:a.估计驼行时间减1b.输出当前运行进程的名字。用这两个操作来模拟进程的一次运行。(6)进程运行一次后,以后的调度则将当前指针依次下移一个位置,指向下一个进程,即调整当前运行指针指向该进程的链接指针所指进程,以指示应运行进程。同时还尖判断该进程的剩八运行时间是否为零。若不为零,则等待下一轮的运行;若该进程的剩余运行时间为零,则将该进程的状态置为完成态C,并退出循环队列。(7)若就绪 队列不空,则重复上述的(%)和(6

    3、)步,直到所有进程都运行完为止。(9) 在所设计的调度程序中,应包含显示或打印语句,以便显示或打印每次选中进程的名称及运行一次后队列的变化情况。题目5 设计一个按先来先服务调度的算法题目5 设计一个按优先级调度的算法题目6 设计一个用银行家算法进程资源分配的程序题目7 模拟内存管理,实现内存块的分配与回收。内存管理方法可以取以下之一: (1)可变分区 (2)页式存储管理内存分配算法可以取以下之一: (1)首次适应算法 (2)最佳适应算法题目8 设计一个SPOOLING假脱机输出的模拟程序题目9 模拟设计MS-DOS操作系统中磁盘文件的存储结构题目10 模拟设计Linux操作系统中磁盘文件的存储

    4、结构参考资料题目二 资料1实验目的 存储管理的主要功能之一是合理的分配空间。请求页式管理是一种常用的虚拟存储管理技术。 本实验的目的是通过请求页式存储管理中页面置换算法模拟设计,了解虚拟存储技术的特点,掌握请求页式存储管理的页面置换算法。2实验内容(1)通过随机数产生一个指令序列,共320条指令。指令的地址按下述原则生成:1)50%的指令是顺序执行的;2)25%的指令是均匀分布在前地址部分;3)25%的指令是均匀分布在后地址部分;具体的实施方法是:1)在0,319的指令地址之间随机选取一起点m;2)顺序执行一条指令,即执行地址为m+1的指令; 3)在前地址0,m+1中随机选取一条指令并执行,该

    5、指令的地址为m;4)顺序执行一条指令,其地址为m+1;5)在后地址m+2,319中随机选取一条指令并执行;6)重复上述步骤1)-5),直到执行320次指令。(2)将指令序列变换成为页地址流设:1)页面大小为1k;2)用户内存容量为4页到32页;3)用户虚存容量为32k;在用户虚存中,按每k存放10条指令排列虚存地址,即320条指令在虚存中的存放方式为:第0条-第9条指令为第0页(对应虚存地址为0,9);第10条-第19条指令为第1页(对应虚存地址为10,19); . . 第310条-第319条指令为第31页(对应虚存地址为310,319); 按以上方式,用户指令可组成为32页。(3)计算并输出

    6、下列各种算法在不同内存容量下的命中率。1)先进先出的算法(FIFO);2)最近最少使用算法(LRR);3)最佳淘汰算法(OPT):先淘汰最不常用的页地址;4)最少访问页面算法(LF.U);5)最近最不经常使用算法(NUR)。其中)和)为选择内容。命中率页面失效次数页地址流长度在本实验中,页地址流长度为,页面失效次数为每次访问相应指令时,该指令所对应的页不在内存的次数。随机数产生办法关于随机数产生办法,Linux或Unix系统提供函数srand( )和rand( ),分别进行初始化和产生随机数。例如:srand( );语句可初始化一个随机数;a0=10*rand( )/32767*319+1;a

    7、1=10*rand( )/32767*a0;. .语句可用来产生a0与a1中的随机数。提示: 首先用Srand( )和rand( ) 函数定义和产生指令序列,然后将指令序列变换成相应的页地址流,并针对不同的算法计算出相应的命中率。 命中率=1-页面失效次数/页地址流长度1、数据结构(1)页面类型typedef struct int pn,pfn,counter,time;pl-type; 其中pn为页号,pfn为页面号,count为一个周期内访问该页面的次数,time为访问时间。(2)页面控制结构pfc_struct int pn,pfn; struct pfc_struct *next; ;

    8、typedef struct pfc_struct pfc_type;pfc_type pfctotal_vp,*freepf_head,*busypf_head;pfc_type *busypf_tail;其中,pfctotal_vp定义用户进程虚页控制结构,*freepf_head为空页面头的指针,*busypf_head为忙页面头的指针,*busyf_tail为忙页面尾的指针。2、函数定义(1)Void initialize( ):初始化函数,给每个相关的页面赋值。(2)Void FIFO( ):计算使用FIFO算法时的命中率。(2)Void LRU( ):(4)VoidOPT( ):计

    9、算使用OPT算法时的命中率。(5)Void LFU ( ):计算使用LFU算法时的命中率。(6)Void NUR( ):计算使用NUR算法时的命中率。3、变量定义(1)int atatal_instruction :指令流数据组。(2) int pagetotal_instruction:每条指令所属页号。(3)int offsettotal_instruction:每页装入不敷出0条指令后取模运算页号偏移量。(4)int total_pf:用户进程的内存页面数。(5)int diseffect:页面失效次数。程序清单程序:#include stdio.hprocess.hstdlib.h#d

    10、efine TRUE 1#define FALSE 0#define INVALID -1#define null 0#define total_instruction 320 /*指令流长*/#define total_vp 32 /*虚页长*/#define clear_period 50 /*清0周期*/typedef struct int pn,pfn,counter,time; pl_type; pl_type pltotal_vp; /*页面数据结构*/ struct pfc_struct /*页面控制结构*/int pn,pfn; struct pfc_struct *next;

    11、 ; typedef struct pfc_struct pfc_type; pfc_type pfctotal_vp,*freepf_head,*busypf_head,*busypf_tail; int diseffect,atotal_instruction; int pagetotal_instruction,offsettotal_instruction; void initialize(); void FIFO(); void LRU(); void OPT(); void LFU(); void NUR(); main() int S,i,j; srand(getpid()*10

    12、); /*由于每次运行时进程号不同,故可用来作为初始化随机数队 列的种子*/ S=(float)319*rand()/32767+1; for(i=0;inext; plbusypf_head-pn.pfn=INVALID; freepf_head=busypf_head; /*释放忙页面队列中的第一个页面*/ freepf_head-next=null; busypf_head=p; p=freepf_head- /*按FIFO方式调新页面入内存页面*/ freepf_head-pn=pagei; plpagei.pfn=freepf_head-pfn; if (busypf_tail=nu

    13、ll) busypf_head=busypf_tail=freepf_head;elsebusypf_tail-next=freepf_head;busypf_tail=freepf_head;freepf_head=p;printf(FIFO:%6.4,1-(float)diseffect/320); void LRU(total_pf) /*LRU*/ int total_pf; int min,minj,i,j,present_time; initialize(total_pf); present_time=0; if(plpagei.pfn=INVALID) /*页面失效*/ diseffect+; if(freepf_head=null) /*无空闲页面*/ min=32767; for(j=0;jplj.time&plj.pfn!=INVALID) min=plj.time;minj=j; freepf_head=&pfcplminj.pfn; plminj.pfn=INVALID; plminj.time=-1; freepf_head- plpagei.pfn=freepf_head- plpagei.time=present_time; freepf_head=freepf_head- else present_time+; printf(LRU:%6.4f,


    注意事项

    本文(操作系统课程设计题目及代码Word文件下载.doc)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开