计算机操作系统课程设计报告[1]

计算机操作系统课程设计报告[1]

ID:14455952

大小:1.56 MB

页数:35页

时间:2018-07-28

计算机操作系统课程设计报告[1]_第1页
计算机操作系统课程设计报告[1]_第2页
计算机操作系统课程设计报告[1]_第3页
计算机操作系统课程设计报告[1]_第4页
计算机操作系统课程设计报告[1]_第5页
资源描述:

《计算机操作系统课程设计报告[1]》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、《操作系统原理》实验报告院(部):管理工程学院专业:信息管理与信息系统实验项目:实验一二三五班级:信管102姓名:张凤丹学号:201002141835目录引言4实验一、模拟进程创建、终止、阻塞、唤醒原语6实验目的:6实验内容:6实验步骤:7实验代码:7程序运行结果及分析12实验感想:13实验二、模拟进程调度功能14实验目的:14实验内容:14实验步骤:14实验代码:15程序运行结果及分析19实验感想:20实验三:模拟动态分区首次适应分配和回收算法20实验目的:20实验内容:20实验步骤:20实验代码:21程序运行结果及分

2、析27实验感想:28实验五:模拟使用银行家算法判断系统的状态28实验目的:28实验步骤:28实验代码:28程序运行结果及分析33实验感想:343535引言操作系统是信息管理与信息系统专业一门重要的专业理论课程,了解和掌握操作系统的基本概念、功能和实现原理,对认识整个计算机系统的工作原理十分重要。操作系统实验是操作系统课程的一个重要组成部分,通过试验环节的锻炼使同学们不仅能够对以前的所学过的基础知识加以巩固,同时能够通过上机实验,对操作系统的抽象理论知识加以理解,最终达到融会贯通的目的,因此,实验环节是同学们理解、掌握操作

3、系统基本理论的一个重要环节。本实验指导书,根据教材中的重点内容设定了相应的实验题目,由于实验课程的学时有限,我们规定了必做题目和选做题目,其中必做题目必须在规定的上机学时中完成,必须有相应的预习报告和实验报告。选做题目是针对有能力或感兴趣的同学利用课余时间或上机学时的剩余时间完成。3535实验一、模拟进程创建、终止、阻塞、唤醒原语实验目的:通过设计并调试创建、终止、阻塞、唤醒原语功能,有助于对操作系统中进程控制功能的理解,掌握操作系统模块的设计方法和工作原理。实验内容:1、设计创建、终止、阻塞、唤醒原语功能函数。2、设计

4、主函数,采用菜单结构(参见后面给出的流程图)。353、设计“显示队列”函数,目的能将就绪、阻塞队列中的进程信息显示在屏幕上,以供随时查看各队列中进程的变化情况。实验步骤:其中:进程名用P1,P2标识。优先级及运行时间:为实验题目二做准备。状态为:就绪、运行、阻塞,三种基本状态。指针:指向下一个PCB。1、进程PCB中应包含以下内容:进程名优先级运行时间状态指针2、系统总体结构:开始系统主菜单1…创建2…阻塞3…唤醒4…终止5…显示0…退出请输入您需要的功能(0-5):输入选择=?543210退出创建阻塞唤醒终止显示结束实

5、验代码:#include#includestructPCB{35charname[4];intpriority;intruntime;};voidmain(){intx,t;inta=0;intk=0,r=1,i=0,j=0;//k为就绪队列总数,r堵塞队列总数charname[4];structPCBpcb[10];structPCBpcb1[10];structPCBpcb2[10];printf("---------------------菜单-----------------

6、----");printf("0----退出系统");printf("1----创建进程");printf("2----堵塞进程");printf("3----唤醒进程");printf("4----终止进程");printf("5----显示进程");printf("------------------------------------------------");strcpy(pcb1[0].name,"s");//堵塞队列pcb1[0].priority=2;pcb1[0]

7、.runtime=3;//printf("%s%d%d",pcb1[0].name,pcb1[0].priority,pcb1[0].runtime);while(1){printf("请输入你的选择:");scanf("%d",&x);if(x==0)break;if(x==1){printf("-----------------创建进程---------------");35printf("进程名:");scanf("%s",&pcb[k].name);printf("优先级:");scanf("%d",&pcb

8、[k].priority);printf("运行时间:");scanf("%d",&pcb[k].runtime);k=k+1;}if(x==2){printf("-----------------堵塞进程---------------");printf("请输入要查找的进程:");scanf("%s",name

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

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

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