操作系统试验参考指导书.doc
《操作系统试验参考指导书.doc》由会员分享,可在线阅读,更多相关《操作系统试验参考指导书.doc(62页珍藏版)》请在咨信网上搜索。
1、操作系统实 验 指 导 书 绍兴文理学院计算机系 前 言1实验总体目的通过学生自己动手设计实验验证理论知识,使学生掌握操作系统特性和功能,掌握不同调度算法下进程调度、进程控制、进程调度与死锁,并必要掌握作业管理、存储器管理、设备管理和文献管理重要原理。加深对操作系统基本原理理解。 合用专业计算机科学与技术 先修课程C语言程序设计、计算机构成原理、数据构造 实验学时分派序号实验名称学时实验规定实验类型1分析操作系统所面临操作需求2必修验证2进程管理4必修设计3存储管理4必修设计4设备管理2必修设计5文献管理4必修设计 实验环境有70台中档配备计算机构成小型局域网实验室环境。计算机详细规定:(1)
2、Pentium 133Hz以上CPU;(2)建议至少256MB内存;(3)建议硬盘至少2GB,并有1GB空闲空间。(4)安装Windows操作系统及C语言编译程序或Linux虚拟环境。 实验总体规定培养计算机专业学生系统程序设计能力,是操作系统课程一种非常重要环节。通过操作系统上机实验,可以培养学生程序设计办法和技巧,提高学生编制清晰、合理、可读性好系统程序能力,加深对操作系统课程理解。使学生更好地掌握操作系统基本概念、基本原理、及基本功能,具备分析实际操作系统、设计、构造和开发当代操作系统基本能力。实验规定做到:1) 详细描述实验设计思想、程序构造及各模块设计思路;2) 详细描述程序所用数据
3、构造及算法;3) 明确给出测试用例和实验成果;4) 为增长程序可读性,在程序中进行恰当注释阐明;5) 认真进行实验总结,涉及:设计中遇到问题、解决办法与收获等;6) 实验报告撰写规定构造清晰、描述精确逻辑性强;7) 实验过程中,同窗之间可以进行讨论互相提高,但绝对禁止抄袭。 本实验重点、难点及教学办法建议重点:理解进程调度中PCB设计,以实现对进程调度。难点:进程调度程序设计,设备管理程序设计。教学办法建议:力求在本指引书协助下,独立设计程序以加深理解。实验一 分析操作系统所面临操作需求(一)实验目使学生理解操作系统所面临操作需求,掌握操作系统中进程管理、存储管理、设备管理和文献管理等功能。(
4、二)实验内容1.分析操作系统所面临操作需求;2.熟悉实验环境;3.资料收集与整顿,进行实验前期准备。熟悉编程环境本课程中实验题目既可以在windows下用控制台应用程序实现,也可以在linux下用全屏幕程序实现。这里咱们一方面简介在windows下用vc+6.0设计控制台应用程序环节,然后简介在linux下用C语言编写全屏幕程序环节。1. windows控制台应用程序 图1-1 图1-2图1-3环节1:开机,单击“开始”按钮,选取“程序-MicrosoftVisualStudio6.0-MicrosoftVisualC+6.0”进入MicrosoftVisualC+6.0。见图1-1。环节2:
5、在MicrosoftVisualC+6.0中,单击“File”菜单,选取“New”菜单命令,见图1-2。环节3:在“Files”选项卡中选取“C+SourceFile”,见图1-32.linuxvi应用编程登录 Linux是一种多顾客多任务操作系统,各种顾客可以拥有自己独立顾客账号登录提示: Red Hat Linux release 6.0 (Hedwing) Kernel 2.2.5-15 on an i686 Login:此时输入顾客户名(账号)并键入回车,则系统显示“passward”。在输入密码和回车。登录后:roothawk/root#表达是按root方式登录,$表达是普通顾客。L
6、inux大小写敏感,用“-”加参数zlinux:# ls FHowTo/ HowToMin/ linux nag/ sag/获取协助:Linux带有联机手册,可以用man命令来阅读 Zlinux:$ man ls虚拟终端 Linux可有各种顾客登录到同一种计算机,但普通微机只有一种终端难以体现。可以使用各种虚拟终端,用Alt+F1、Alt+F2等来切换。退出系统 在停止使用系统时,要退出系统。详细办法:exit或logout,或Ctrl+D关机 如果没有顾客在使用系统,可以关机。但是不能直接关闭电源,而要按正常顺序关机。普通顾客是不能关机,只有root顾客可以关机。办法:可以使用halt或sh
7、utdown命令,也可以同步键入Ctrl+Alt+Del。Windows 虚拟机环境:登录到系统点击桌面“VMware”图标 Vmware Workstation窗口CommandsStart this virtual machine进入fedora后,顾客名:root 口 令:123456使用编辑器vi 编辑文献1. 进入linux文本模式之后,在命令行键入vi filename.c 然后回车。下面作某些简朴解释:一方面vi命令是打开vi编辑器。背面filename.c是顾客即将编辑c文献名字,注意扩展名字是.c;固然,vi编辑器功能很强,可以用它来编辑其他格式文献,例如汇编文献,其扩展名字
8、是.s;也可以直接用vi打开一种新未命名文献,当保存时候再给它命名,只是这样做不很以便。2. 最基本命令I :当进入刚打开文献时,不能写入信息,这时按一下键盘上I键(insert),插入意思,就可以进入编辑模式了。如下图所示: 3. a与i是相似用法4. 当文献编辑完后,需要保存退出,这时需要通过如下几种环节:1)按一下键盘上Esc 键;2)键入冒号(:),紧跟在冒号背面是wq(意思是保存并退出)。如果不想保存退出,则在第二步键入冒号之后,键入!q(不带w,机尾部保存)。如下图所示:5. 退出vi编辑器编辑模式之后,要对刚才编写程序进行编译。编译命令是:gcc filename.c -o ou
9、tputfilename,其中gcc是c编译器。参数:filename.c 是刚才编辑c 文献(固然也可以是此前编写好c文献);背面中括号里面参数是可选,它是一种输出文献。如果不选,默认输出文献是a.out ,选了之后输出文献就是outputfilename.out6. 最后一步是运营程序,办法如下:./outputfilename.out实验二 进程管理(一)实验目掌握临界区概念及临界区设计原则;掌握信号量概念、PV操作含义以及应用PV操作实现进程同步与互斥;分析进程争用资源现象,学习解决进程互斥办法;掌握进程状态及状态转换;掌握惯用进程调度算法。(二)实验内容1分析进程同步与互斥现象,编程
10、实现典型进程同步问题生产者消费者问题模仿;2编写容许进程并行执行进程调度程序,在惯用进程(作业)调度算法:先来先服务算法、短作业优先算法、最高响应比优先算法、高优先权优先算法等调度算法中至少选取三种调度算法进行模仿,并输出平均周转时间和平均带权周转时间。本实验涉及内容较多,可以在两个题目里选取一种完毕。编程实现典型进程同步问题生产者消费者问题模仿模仿实现用同步机构避免发生进程执行时也许浮现与时间关于错误。进程是程序在一种数据集合上运营过程,进程是并发执行,也即系统中各种进程轮流地占用解决器运营。咱们把若干个进程都能进行访问和修改那些变量称为公共变量。由于进程是并发地执行,因此,如果对进程访问公
11、共变量不加限制,那么就会产生“与时间关于”错误,即进程执行后所得到成果与访问公共变量时间关于。为了防止此类错误,系统必要要用同步机构来控制进程对公共变量访问。普通说,同步机构是由若干条原语同步原语所构成。本实验规定模仿PV操作同步机构实现,模仿进程并发执行,理解进程并发执行时同步机构作用。本次用到数据构造知识如下: typedef struct Pcb char name10; /进程名char state10; /运营状态char reason10; /若阻塞,其因素int breakp; /断点保护struct Pcb *next; /阻塞时顺序 Pcb,*link;进程名状态等待因素断点
12、后继进程 进程控制块构造定义两个进程: link p1;/生产者进程,link c1;/消费者进程。pc程序计数器和link ready;就绪队列,link b_s1;s1阻塞队列,link b_s2;s2阻塞队列。实验指引:a. h头文献#include #include #include /* malloc()等 */ #include /* INT_MAX等 */ #include /* EOF(=Z或F6),NULL */ #include /* atoi() */ #include /* eof() */ #include /* floor(),ceil(),abs() */ #in
13、clude /* exit() */ #include using namespace std; #include #define BUF 10 /缓存大小 #define MAX 20 /最大可以输入字符b. h头文献/数据构造定义和全局变量typedef struct Pcb char name10; /进程名char state10; /运营状态char reason10; /若阻塞,其因素int breakp; /断点保护struct Pcb *next; /阻塞时顺序Pcb,*link;int s1,s2;/信号量link p1;/生产者进程link c1;/消费者进程char st
14、rMAX;/输入字符串char bufferBUF;/缓冲池int len;/输入长度int sp=0;/string指针int in=0;/生产者指针int out=0;/消费者指针char temp;/供打印暂时产品char rec_pMAX;/生产记录int rp1=0;/生产记录指针char rec_cMAX;/消费记录int rp2=0;/消费记录指针link ready;/就绪队列link b_s1;/s1阻塞队列link b_s2;/s2阻塞队列int pc;/程序计数器int count;/字符计数器int con_cnt;/消费计数器c. h头文献void init(); /
15、初始化void p(int s); /P操作void v(int s); /V操作void block(int s);/阻塞函数void wakeup(int s);/唤醒函数void control(); /解决机调度void processor();/解决机执行void print(); /打印函数void init() /初始化s1=BUF;s2=0;p1=(link)malloc(sizeof(Pcb);/建立新结点,并初始化为生产者strcpy(p1-name,Producer);strcpy(p1-state,Ready);strcpy(p1-reason,Null);p1-bre
16、akp=0;p1-next=NULL;c1=(link)malloc(sizeof(Pcb);/建立新结点,并初始化为消费者strcpy(c1-name,Consumer);strcpy(c1-state,Ready);strcpy(c1-reason,Null);c1-breakp=0;c1-next=NULL;ready=p1;ready-next=c1;/初始化为生产进程在前,消费进程在后c1-next=NULL;b_s1=NULL;b_s2=NULL;/阻塞进程为NULLpc=0;con_cnt=0;/消费计数器void p(int s)if(s=1) /p(s1)s1-;if(s1b
17、reakp=pc;/保存断点else /p(s2)s2-;if(s2breakp=pc;/保存断点void v(int s)if(s=1) /v(s1)s1+;if(s1breakp=pc;/保存断点else /v(s2)s2+;if(s2breakp=pc;/保存断点void block(int s)/阻塞函数定义link p;int num1=0;int num2=0;if(s=1)/生产进程strcpy(p1-state,Block);/变化状态strcpy(p1-reason,S1);/阐明因素p=b_s1;while(p)num1+;p=p-next;/p值为NULL,表达队尾if(
18、!b_s1)b_s1=p1;elsep=p1;p1-next=NULL;printf(t* p1生产进程阻塞了!n);ready-breakp=pc;/保存断点ready=ready-next;/在就绪队列中去掉,指向下一种num1+;else/消费进程strcpy(c1-state,Block);strcpy(c1-reason,S2);p=b_s2;while(p)num2+;p=p-next;/p值为NULL,表达队尾if(!b_s2)b_s2=c1;elsep=c1;ready-breakp=pc;/保存断点ready=ready-next;/在就绪队列中去掉,指向下一种c1-next
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 试验 参考 指导书
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【天****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【天****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。