操作系统实验的进程管理.doc

操作系统实验的进程管理.doc

ID:28538345

大小:83.00 KB

页数:6页

时间:2018-12-11

操作系统实验的进程管理.doc_第1页
操作系统实验的进程管理.doc_第2页
操作系统实验的进程管理.doc_第3页
操作系统实验的进程管理.doc_第4页
操作系统实验的进程管理.doc_第5页
资源描述:

《操作系统实验的进程管理.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、仲恺农业工程学院实验报告纸计算机科学与工程(院、系)网络工程专业083班组《操作系统》学号200810224311姓名李志冬实验日期2011-5-20教师评定实验一进程管理一.实验目的:1、理解进程PCB的概念,以及PCB如何实现、如何组织以及管理。2、复习数据结构中如何对链的操作,包括建链、删除、插入结点等,来实现进程的管理。 二.实验内容:1、建立一个结点,即PCB块包括用户标识域、状态域(执行、等待、就绪)、link域。 2、建立三个队列(执行队列、就绪队列、等待队列)。 3、根据进程状态转

2、换实现对三个队列的具体操作。具体的驱动可以采用时间片算法或手动调度的形式完成三个状态之间的转换4、用switch选择语句选择状态。 5、按照自己的设定能完成所有的状态转换的运行(包括创建和运行结束)。三.实验步骤和过程 1.进程的基本状态(1)执行状态(Running):进程占用处理机,进程的程序正在执行。单处理机系统中只能有一个进程处于执行状态,多处理机系统中可能有多个进程处于执行状态。(2)等待状态(Blocked):也叫阻塞或睡眠状态,是进程由于等待某种事件的发生而处于暂停执行的状态。如进程

3、因等待I/O的完成、等待缓冲空间等。(3)就绪状态(Ready):进程已分配到处理机以外的所有必要资源,具备了执行的所有条件。可能会有多个进程处于就绪状态,排成就绪队列。2. 进程状态的转换(1)就绪状态->执行状态:进程调度程序为处于就绪状态的进程分配处理机后,该进程进入执行状态。(2)执行状态->等待状态:正在执行的进程因需要等待某事件而无法执行。(3)等待状态->就绪状态:进程所等待的事件发生了,进程就从等待状态进入就绪状态。(4)执行状态->就绪状态:正在执行的进程因时间片用完而被暂停执行

4、;或者在可抢占调度方式中,一个优先权高的进程到来后,正在执行的低优先权的进程被强制撤下处理机,转换为就绪状态.I/O请求获得cpu等待状态就绪状态执行状态时间片到I/O完成三态转换图3.程序设计环境Widows7操作系统,eclipse平台!4.程序设计及测试结果本程序是只以数字作为进程名称进行实验,没有窗口界面,比较容易实现.一次性的创建了多个进程,进入三状态模型,按照要求进行状态之间的转移,只要输入125976数字,但不能重名,按回车即可。该功能程序如下:System.out.println(

5、"############本程序以数字为进程名字#################");System.out.println("输入进程队列,空格隔开,15个进程以内:");该功能模块程序如下:publicclassTest{publicstaticvoidmain(String[]args){intmaxSize=15;PCB[]pcbArray=newPCB[maxSize];JXready=newJX();RUNrun=newRUN();Waitwait=newWait();System.o

6、ut.println("############本程序以数字为进程名字#################");System.out.println("输入进程队列,空格隔开,15个进程以内:");Scannerinput1=newScanner(System.in);Strings=input1.nextLine();String[]arr=s.split("");for(intj=0;j

7、ray[j]=newPCB();pcbArray[j].setPro_id(temp);ready.inQueue(pcbArray[j].getPro_id());}System.out.println("------------------------------------------------");System.out.print("就绪队列为:");ready.printQueue();System.out.print("执行队列为:");run.printQueue();System

8、.out.print("等待队列为:");wait.printQueue();while(true){System.out.println("请选择操作:1.执行->就绪2.等待->就绪3.执行->等待4就绪->执行5.继续执行>=6.退出");Scannerinput2=newScanner(System.in);然后选择操作,例如按数字键4,在按回车,结果如下:该功能代码如下:if(choice==4){if(run.getRunning()<0){run.setRunning

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。