华师计算机操作系统实验报告

上传人:bin****86 文档编号:59850783 上传时间:2018-11-12 格式:DOCX 页数:16 大小:22.78KB
返回 下载 相关 举报
华师计算机操作系统实验报告_第1页
第1页 / 共16页
华师计算机操作系统实验报告_第2页
第2页 / 共16页
华师计算机操作系统实验报告_第3页
第3页 / 共16页
华师计算机操作系统实验报告_第4页
第4页 / 共16页
华师计算机操作系统实验报告_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《华师计算机操作系统实验报告》由会员分享,可在线阅读,更多相关《华师计算机操作系统实验报告(16页珍藏版)》请在金锄头文库上搜索。

1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划华师计算机操作系统实验报告院系:计算机学院实验课程:操作系统实验实验项目:进程调度的设计与实现指导老师:冯刚开课时间:XXXX年度第2学期专业:网络工程班级:11本6班学生:卢伟柱学号:XX华南师范大学教务处专业网络工程年级、班级11级6班课程名称操作系统实验实验项目进程调度的设计与实现实验类型?验证?设计?综合实验时间年月实验指导老师冯刚实验评分一、实验目的1.综合应用下列知识点设计并实现操作系统的进程调度:邻接表,布尔数组,非阻塞输入,图形用户界面GUI,进程控制块,进程状态转换

2、,多级反馈队列进程调度算法。2.加深理解操作系统进程调度的过程。3.加深理解多级反馈队列进程调度算法。二、实验内容与主要设计思想1.采用一种熟悉的语言,如C、PASCAL或C+等,编制程序,最好关键代码采用C/C+,界面设计可采用其它自己喜欢的语言。2.采用多级反馈队列调度算法进行进程调度。3.每个进程对应一个PCB。在PCB中包括进程标识符pid、进程的状态标识status、进程优先级priority、进程的队列指针next和表示进程生命周期的数据项life。4.创建进程时即创建一个PCB,各个进程的pid都是唯一的,pid是在1到100范围内的一个整数。可以创建一个下标为1到100的布尔数

3、组,“真”表示下标对应的进程标识号是空闲的,“假”表示下标对应的进程标识号已分配给某个进程。5.进程状态status的取值为“就绪ready”或“运行run”,刚创建时,状态为“ready”。被进程调度程序选中后变为“run”。6.进程优先级priority是0到49范围内的一个随机整数。7.进程生命周期life是1到5范围内的一个随机整数。8.初始化时,创建一个邻接表,包含50个就绪队列,各就绪队列的进程优先级priority分别是0到49。9.为了模拟用户动态提交任务的过程,要求动态创建进程。进入进程调度循环后,每次按ctrl+f即动态创建一个进程,然后将该PCB插入就绪专业网络工程年级、

4、班级11级6班课程名称操作系统实验实验项目进程调度的设计与实现实验类型?验证?设计?综合实验时间年月实验指导老师冯刚实验评分队列中。按ctrl+q退出进程调度循环。10.在进程调度循环中,每次选择优先级最大的就绪进程来执行。将其状态从就绪变为运行,通过延时一段时间来模拟该进程执行一个时间片的过程,然后优先级减半,生命周期减一。设计图形用户界面GUI,在窗口中显示该进程和其他所有进程的PCB内容。如果将该运行进程的生命周期不为0,则重新把它变为就绪状态,插入就绪队列中;否则该进程执行完成,撤消其PCB。以上为一次进程调度循环。三、d程序的主要流程图专业网络工程年级、班级11级6班课程名称操作系统

5、实验实验项目进程调度的设计与实现实验类型?验证?设计?综合实验时间年月实验指导老师冯刚实验评分四、实验心得1.通过计数器KillTimer()、ONTIMER()以及在计数器中对函数run()设计并在ONTIMER()中对run函数调用从而完成多级反馈队列运行的模拟。2.使用MFC设计界面,可以通过按钮和快捷键进成相关的操作,还充分利用了模板进行简化设计邻接表。3.实验中最重要的是在自己无法解决问题的时候,向同学、老师等请教以及利用好网络资源。4.在设计的时候,要尽可能考虑到用户的一切可能的操作,提高程序的用户友好性。五、主要源程序清单主要程序的代码:/:implementationfile/

6、#include#include#include#include#include#include#includeusingnamespacestd;#ifdef_DEBUG#definenewDEBUG_NEW#undefTHIS_FILE专业网络工程年级、班级11级6班课程名称操作系统实验实验项目进程调度的设计与实现实验类型?验证?设计?综合实验时间年月实验指导老师冯刚实验评分staticcharTHIS_FILE=_FILE_;#endifboolflag100;queueq50;/CMyScheduleDlgdialogCMyScheduleDlg:CMyScheduleDlg(CWnd

7、*pParent/*=NULL*/):CDialog(CMyScheduleDlg:IDD,pParent)/AFX_DATA_INIT(CMyScheduleDlg)/NOTE:theClassWizardwilladdmemberinitializationhere/AFX_DATA_INIT/NotethatLoadIcondoesnotrequireasubsequentDestroyIconinWin32m_hIcon=AfxGetApp()-LoadIcon(IDR_MAINFRAME);voidCMyScheduleDlg:DoDataExchange(CDataExchange

8、*pDX)CDialog:DoDataExchange(pDX);/AFX_DATA_MAP(CMyScheduleDlg)长期调度您的答案:长期调度又称作业调度,其主要功能是按照某种原则从磁盘某些盘区的作业队和交互作业中选取作业进入主存,并为作业做好运行前的准备工作和作业完成后的善后工作。题目分数:4此题得分:42第10题死锁您的答案:一组进程中,每个进程都无限等待被该组进程中另一进程所占有的资源,因而永远无法得到的资源,这种现象称为进程死锁,这一组进程就称为死锁进程。若死锁发生,会浪费大量系统资源,甚至导致系统崩溃。题目分数:4此题得分:43第11题进程您的答案:是具有独立功能的程序关于某

9、个数据集合上的一次运行活动,是系统进行资源分配和调度的独立单位。题目分数:4此题得分:44第12题SPOOL系统您的答案:SPOOL系统是通过共享设备来模拟独占型设备的动作使独占型设备成为共享设备从而提高了设备利用率和系统的效率这种技术被称为虚拟设备技术实现这一技术的硬件和软件系统被称为SPOOL系统或称为假脱机系统。题目分数:4此题得分:4绝对地址您的答案:是指存储控制部件能够识别的主存单元编号,也就是主存单元的实际地址。题目分数:4此题得分:46第1题如图所示位示图(行号、列号都从0开始编号)来管理空闲盘块。如果盘块从1开始编号,每个盘块的大小为1KB。现要为文件分配两个盘块,请说明分配过

10、程。若要释放第300块,应如何处理您的答案:为某文件分配两个盘块的过程如下:顺序检索位示图,从中找到第一个值为0的二进制位,得到其行号i12,列号j12;第二个值为0的二进制位,得到其行号i23,列号j26。计算出找到的两个空闲块的盘块号分别为:b1i116j112162135?b1i216j213166155修改位示图,令Map2,2Map3,61,并将对应块35、55分配出去。释放磁盘的第300块时,应进行如下处理:?计算出磁盘第300块所对应的二进制位的行号i和列号j:i/1618,jMod?1611?修改位示图,令Map18,11=0,表示对应块为空闲块。题目分数:10此题得分:107

11、第2题有一只盘子,每次放入一个水果,父亲总是放苹果到盘中,母亲向盘中放桔子,一个儿子专等吃盘中的桔子,一个女儿专等吃盘中的苹果。试用操作定出他们能同步、互斥的相关语句。您的答案:dish=1?apple=0;?banana=0;?father()?p(dish);?将苹果放入盘中;?v(apple);?mother()?p(dish);?将香蕉放入盘中;?v(banana);?son()?p(banana);?从盘中取出香蕉;?v(dish);?daughter()?p(apple);?从盘中取出苹果?v(dish);题目分数:10此题得分:108第3题根据所给出的参数,请分析操作系统的不同调

12、度算法,计算并您的答案:?题目分数:10此题得分:09第4题请画出进程的五种基本状态及其转换过程,并作相应解释。您的答案:答:五种基本状态?1)运行状态(Running):进程占用处理器资源;处于此状态的进程的数目小于等于处理器的数目。在没有其他进程可以执行时(如所有进程都在阻塞状态),通常会自动执行系统的空闲进程。?2)就绪状态(Ready):进程已获得除处理器外的所需资源,等待分配处理器资源;只要分配了处理器进程就可执行。就绪进程可以按多个优先级来划分队列。例如,当一个进程由于时间片用完而进入就绪状态时,排人低优先级队列;当进程由IO操作完成而进入就绪状态时,排入高优先级队列。?3)阻塞状

13、态(Blocked):当进程由于等待I/O操作或进程同步等条件而暂停运行时,它处于阻塞状态。?4)创建状态(New):进程正在创建过程中,还不能运行。操作系统在创建状态要进行的工作包括分配和建立进程控制块表项、建立资源表格(如打开文件表)并分配资源、加载程序并建立地址空间表等。?5)退出状态(Exit):进程已结束运行,回收除进程控制块之外的其他资源,并让其他进程从进程控制块中收集有关信息(如记帐和将退出代码传递给父进程)。?转换过程:?五状态进程模型中的状态转换主要包括下列几种。操作系统中多个进程的并发执行是通过调度与超时两种转换间的循环,或调度、等待事件和事件出现三种转换间的循环来描述的。

14、1)创建新进程:创建一个新进程,以运行一个程序。创建新进程的可能原因包括用户登录、操作系统创建以提供某项服务、批处理作业等。?2)收容(Admit,也称为提交):收容一个新进程,进入就绪状态。由于性能、内存等原因,系统会限制并发进程总数。?3)调度运行(Dispatch):从就绪进程表中选择一个进程,进入运行状态。?4)释放(Release):由于进程完成或失败而终止进程运行,进入结束状态。题目分数:10此题得分:810第14题在一个请求分页系统,采用最佳页面置换算法时,假如一个作业的页面走向为321XX701,当分配给该作业的页架数为3时,试写出页面调度的过程,并计算缺页次数您的答案:解:?所以缺页次数?为9次题目分数:10此题得分:611第5题什么叫重定位?有哪几种重定位技术?有何区别?您的答案:重定位是把程序中相对地址变换为绝对地址。对程序进行重定位的技术目前按重定位的时机区分为两种:静态重定位和动态重定位。?静态重定位是要把程序中所胡与地址有关的项在程序运行前修改好,它是在程序装入主存时由连接装入程序进行重定位。动态

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 总结/报告

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