[工学]操作系统实验报告

上传人:油条 文档编号:34080764 上传时间:2018-02-20 格式:DOC 页数:31 大小:296KB
返回 下载 相关 举报
[工学]操作系统实验报告_第1页
第1页 / 共31页
[工学]操作系统实验报告_第2页
第2页 / 共31页
[工学]操作系统实验报告_第3页
第3页 / 共31页
[工学]操作系统实验报告_第4页
第4页 / 共31页
[工学]操作系统实验报告_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《[工学]操作系统实验报告》由会员分享,可在线阅读,更多相关《[工学]操作系统实验报告(31页珍藏版)》请在金锄头文库上搜索。

1、南华大学计 算 机 科 学 与 技 术 学 院实 验 报 告 ( 2011 2012 学年度 第 2 学期 )课程名称 操作系统姓名 学号专业 班级 地点 教师 、课程的性质、目的和任务 操作系统是计算机系统配置的基本软件之一。它在整个计算机系统软件中占有中心地位。其作用是对计算机系统进行统一的调度和管理,提供各种强有力的系统服务,为用户创造既灵活又方便的使用环境。本课程是计算机科学与技术专业的一门专业主干课和必修课。通过本课程的学习,使学生掌握操作系统的基本概念、设计原理及实施技术,具有分析操作系统和设计、实现、开发实际操作系统的能力。二、实验的意义和目的 操作系统是计算机教学中最重要的环节

2、之一,也是计算机专业学生的一门重要的专业课程。操作系统质量的好坏,直接影响整个计算机系统的性能和用户对计算机的使用。一个精心设计的操作系统能极大地扩充计算机系统的功能,充分发挥系统中各种设备的使用效率,提高系统工作的可靠性。由于操作系统涉及计算机系统中各种软硬件资源的管理,内容比较繁琐,具有很强的实践性。要学好这门课程,必须把理论与实践紧密结合,才能取得较好的学习效果。培养计算机专业的学生的系统程序设计能力,是操作系统课程的一个非常重要的环节。通过操作系统上机实验,可以培养学生程序设计的方法和技巧,提高学生编制清晰、合理、可读性好的系统程序的能力,加深对操作系统课程的理解。使学生更好地掌握操作

3、系统的基本概念、基本原理、及基本功能,具有分析实际操作系统、设计、构造和开发现代操作系统的基本能力。三、实验运行环境及上机前的准备 实验运行环境: C 语言编程环境上机前的准备工作包括:按实验指导书要求事先编好程序;准备好需要输入的中间数据;估计可能出现的问题;预计可能得到的运行结果。四、实验内容 实验内容包括处理机调度、主存储器空间的分配和回收、中断处理和资源分配四个实验。每个实验除了介绍了实习的目的要求、内容和方法外,还设有示例、并提供若干实习题供学生选择, 要求学生每个试验后的实习题至少做一题实验课时安排(其中每个实验用课内 4 学时课外 2 学时)序号 实验名称 课时实验一 处理机调度

4、 42实验二 主存储器空间的分配和回收 42实验三 中断处理 42实验四 资源分配 42 实验一 处理机调度由于个人较为擅长 java,所以这里都用 java 实现实验说明:符号说明:每个进程的状态是就绪 W(Wait)、运行 R(Run)、或完成 C(Complete) 。本实验选择按时间片轮转调度算法import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class DiaoDu / 调度算法static void diaoDuSuanFa(Object

5、 data) int count = 0, i1 = 0;Object t;for (int i = 0; i (Integer) dataj + 11) t = dataj;dataj = dataj + 1;dataj + 1 = t; static void println(Object data) / 打印for (int i = 0; i rom)System.out.println(内存不足,不能装入! );return 0;elseSystem.out.println(装入+r+ 个页面的作业);rom=rom-r;node.pages=r;for(i=0;i9)/如果是两位数,

6、控制格式,在数字前少输出一个 。System.out.print(maxij + );elseSystem.out.print( + maxij + ); System.out.print( );for(int j=0;j9)System.out.print(allocationij + );elseSystem.out.print( + allocationij + ); System.out.print( );for(int j=0;j9)System.out.print(needij + );elseSystem.out.print( + needij + ); if(i=0)Syste

7、m.out.print( );for(int j=0;j9)System.out.print(availablej + );elseSystem.out.print( + availablej + ); System.out.println(); System.out.println(=完成初始化=);System.out.println();public void deadlockAvoidance()int security = new intm; boolean param = new booleanm;int tar = new intn;int count = 0;int num1

8、= m+1; int num2 = m; while(num10)for(int i=0;i0)System.out.print(【安全序列】为:);for(int i=0;i); System.out.println();System.out.println(=【死锁避免】 结束= );System.out.println();return;while(num1=0)&(num20)System.out.println(抱歉!没有【安全序列】!);System.out.println(=【死锁避免】 结束= );System.out.println();return; public void

9、 deadlockDetection()Scanner sc = new Scanner(System.in); int key;int security = new intm;boolean param = new booleanm;int temp = new intn;int tar = new intn;int count = 0;int num1 = m+1;/计数器, 每循环一遍所有进程就自减 1int num2 = m;/计数器,每遇到一个被满足的进程就自减1for(int i=0;i9)System.out.print(maxij + );elseSystem.out.prin

10、t( + maxij + ); System.out.print( );for(int j=0;j9)System.out.print(allocationij + );elseSystem.out.print( + allocationij + ); System.out.print( );for(int j=0;j9)System.out.print(needij + );elseSystem.out.print( + needij + ); if(i=0)System.out.print( );for(int j=0;j9)System.out.print(availablej + );

11、elseSystem.out.print( + availablej + ); System.out.println(); System.out.println(=完成状态展示 =);System.out.println();while(num10) for(int i=0;i0)System.out.print(【安全序列】为:);for(int i=0;i); System.out.println();System.out.println(可以产生新的安全序列!系统【能】将申请的资源分配给P+ key +!);System.out.println(=死锁检测结束 =);System.out.println();return;while(num1=0)&(num20)System.out.println(抱歉!【没有】安全序列!);System.out.println(系统【不能】将申请的资源分配给P+ key +!);System.out.println(=死锁检测结束 =); System.out.println();return; 效果图:

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号