计算机操作系统上机教案_第1页
计算机操作系统上机教案_第2页
计算机操作系统上机教案_第3页
计算机操作系统上机教案_第4页
计算机操作系统上机教案_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机操作系统上机教案学院名称:河北政法职业学院系部名称:计算机系课程名称:计算机操作系统任课教师:张敏丽授课题目:操作系统实训1授课序号:12授课班级:司法信息2003级教学方法:讲授,实训课时:2学时教学目的:通过这一章的学习,使学生掌握该计算机系统的使用方法。教学重点:界面的使用。教学难点:熟悉该系统的操作命令。作业布置:教学内容:一、实习内容选择一个计算机系统,熟悉该系统的操作命令,且掌握该计算机系统的使用方法。二、实习目的配合操作系统课程的学习,模拟实现操作系统的功能,有助于对操作系统的理解。操作系统功能的模拟实现可以在计算机系统的终端上进行,也可以在一台微型计算机上进行。根据您的学习条件,选择一个计算机系统,熟悉对该系统的使用,那么您可以顺利地完成本课程的实习。为了尽快地熟悉计算机系统,可编辑一个源程序,且对编辑好的源程序编译、运行、显示/打印运行结果等。三、实习题目1打开:"开始"-"程序"-"附件"-"系统工具",①进行磁盘清理,②进行磁盘碎片整理,③进行磁盘扫描,④进行磁盘维护向导的操作,⑤进行"系统信息"中启动过程的设置.

2浏览"控制面板"-"系统"---"设备管理器"信息的查看及"控制面板"-"网络"-的配置信息的作用.在"控制面板"-"电源管理"-中修改电源管理选项和,在"控制面板"-"日期/时间"-中修改日期和时间.2按大纲模式建立一"培训练习"文档,文档内容为本本书目录的前三章,每章节只取两个标题,然后在普通视图下输入每节的前两行文字,并在页面视图下排版出满意的文档,最后存于"Word文档练习"中.

4根据"简历向导"建立一个人建立资料,用文件名"简历"存于"Word文档练习"文件夹中.

授课题目:操作系统实训2授课序号:14授课班级:司法信息2003级教学方法:讲授,实训课时:2学时教学目的:通过这一章的学习,使学生掌握处理机的调度方法。教学重点:调度算法。教学难点:进程调度。作业布置:教学内容:实验一处理器调度

一,实验内容

选择一个调度算法,实现处理器调度.

二,实验目的

在采用多道程序设计的系统中,往往有若干个进程同时处于就绪状态.当就绪状态进程个数大于处理器数时,就必须依照某种策略来决定哪些进程优先占用处理器.本实验模拟在单处理器情况下处理器调度,帮助学生加深了解处理器调度的工作.

三,实验题目

本实验有两个题目,学生可选择其中的一题.

第一题:设计一个按优先数调度算法实现处理器调度的进程.[提示]:

假定系统有五个进程,每一个进程用一个进程控制块PCB来代表.进程控制块的格式为:

进程名

时间

要求求运行时间

优先数

状态

其中,进程名----作为进程的标识,假设五个进程的进程名分别是P1,P2,P3,P4,P5.

指针----按优先数的大小把五个进程连成队列,用指针指出下一个进程的进程控制块

首地址,最后一个进程中的指针为"0".

要求运行时间----假设进程需要运行的单位时间数.

优先数----赋予进程的优先数,调度时总是选取优先数大的进程先执行.状态----可假设有两种状态,"就绪"状态和"结束"状态,五个进程的初始状态都为"就绪"状态,用"R"表示,当一个进程运行结束后,它的状态变为"结束",

用"E"表示.

在每次运行你所设计的处理器调度程序之前,为每个进程任意确定它的"优先数"和"要求运行时间".

为了调度方便,把五个进程按给定的优先数从大到小连成队列,用一单元指出队首进程,用指针指出队列的连接情况.例:

队首标志

k1k2k3k4k5

PCB1PCB2PCB3PCB4PCB5

处理器调度总是选队首进程运行.采用动态改变优先数的办法,进程每运行一次优先数就减"1".由于本实验是模拟处理器调度,所以,对被选中的进程并不实际的启动运行,而是执行:

优先数-1

要求运行时间-1

来模拟进程的一次运行.

提醒注意的是:在实际的系统中,当一个进程被选中运行时,必须恢复进程的现场,它占有处理器运行,直到出现等待事件或运行结束.在这里省去了这些工作.

进程运行一次后,若要求运行时间≠0,则再将它加入队列(按优先数大小插入,且置队首标志);若要求运行时间=0,则把它的状态修改为"结束"(),且退出队列.

若"就绪"状态的进程队列不为空,则重复上面(4)和(5)的步骤,直到所有进程都成为"结束"状态.

在所设计的称序中应有显示或打印语句,能显示或打印每次被选中进程的进程名以及运行一次后进称对列的变化.

为五个进程任意确定一组"优先数"和"要求运行时间",启动所设计的处理器调度程序,显示或打印逐次被选中进程的进程名以及进程控制块的动态变化过程.授课题目:操作系统实训3授课序号:16授课班级:司法信息2003级教学方法:讲授法课时:2学时教学目的:通过这一章的学习,使学生掌握处理机的调度方法。教学重点:调度算法。教学难点:进程调度。作业布置:教学内容:设计一个按时间片轮转法实现处理器调度的程序.

[提示]

假定系统有五个进程,每一个进程用一个进程控制块PCB来代表.进程控制块的格式为:

进程名

时间

要求求运行时间

优先数

状态

其中,进程名----作为进程的标识,假设五个进程的进程名分别是Q1,Q2,Q3,Q4,Q5.

指针----进程按顺序排成循环队列,用指针指出下一个进程的进程控制块首地址,最后一个进程中的指针指出第一个进程的进程控制块首地址.

要求运行时间----假设进程需要运行的单位时间数.

已运行时间----假设进程已经运行的单位时间数,初始值为"0".

状态----有两种状态,"就绪"状态和"结束"状态,初始状态都为"就绪",用"R"表示,当一个进程运行结束后,它的状态变为"结束",用"E"表示.

每次运行你所设计的处理器调度程序之前,为每个进程任意确定它的"要求运行时间".

把五个进程按顺序排成循环队列,用指针指出队列连接情况.另用一标志单元记录轮到运行的进程.例如,当前轮到Q2执行,则有:

标志单元

k1k2k3k4k5

PCB1PCB2PCB3PCB4PCB5

处理器调度总是选择标志单元指示的进程运行.由于本实验是模拟处理器调度的功能,所以,对被选中的进程并不实际启动运行,而是执行:

已运行时间-1

来模拟进程的一次运行,表示进程已经运行过一个单位的时间.

请同学们注意:在实际的系统中,当一个进程被选中运行时,必须置上该进程可以运行的时间片值,以及恢复进程的现场,让它占有处理器运行,直到出现等待事件或运行满一个时间片.在这里省去了这些工作,仅用"已运行时间+1"来表示进程已经运行满一个时间片.

进程运行一次后,应把该进程的进程控制块中的指针值送到标志单元,以指示下一个轮到运行的进程.同时,应判断该进程的要求运行时间与已运行时间,若该进程要求运行时间≠已运行时间,则表示它尚未执行结束,应待到下一轮时再运行.若该进程的要求运行时间=已运行时间,则表示它已经执行结束,应把它的状态修改为"结束"(E)且退出队列.此时,应把该进程的进程控制块中的指针值送到前面一个进程的指针位置.

若"就绪"状态的进程队列不为空,则重复上面(4)和(5)的步骤,直到所有进程都成为"结束"状态.

在所设计的称序中应有显示或打印语句,能显示或打印每次被选中进程的进程名以及运行一次后进称对列的变化.

为五个进程任意确定一组"要求运行时间",启动所设计的处理器调度程序,显示或打印逐次被选中进程的进程名以及进程控制块的动态变化过程.授课题目:操作系统实训4授课序号:18授课班级:司法信息2003级教学方法:讲授法课时:2学时教学目的:通过这一章的学习,使学生掌握虚拟存储器的功能。教学重点:虚拟存储器的功能。教学难点:虚拟存储器的功能。作业布置:教学内容:实验二虚拟存储器

一,实验内容

模拟分页式虚拟存储管理中硬件的地址转换和缺页中断,以及选择页面调度算法处理缺页中断.

二,实验目的

在计算机系统中,为了提高主存利用率,往往把辅助存储器(如磁盘)作为主存储器的扩充,使多道运行的作业的全部逻辑地址空间总和可以超出主存的绝对地址空间.用这种办法扩充的主存储器称为虚拟存储器.通过本实验帮助同学理解在分页式存储管理中怎样实现虚拟存储器.

三,实验题目

本实验有三道题目,其中第一题必做,第二,三题中可任选一个.

第一题:模拟分页式存储管理中硬件的地址转换和产生缺页中断.

[提示]

分页式虚拟存储系统是把作业信息的副本存放在磁盘上,当作业被选中时,可把作业的开始几页先装入主存且启动执行.为此,在为作业建立页表时,应说明哪些页已在主存,哪些页尚未装入主存,页表的格式为:

页号

标志

主存块号

在磁盘上的位置

其中,标志----用来表示对应页是否已经装入主存,标志位=1,则表示该页已经在主存,标志位=0,则表示该页尚未装入主存.

主存块号----用来表示已经装入主存的页所占的块号.

在磁盘上的位置----用来指出作业副本的每一页被存放在磁盘上的位置.

作业执行时,指令中的逻辑地址指出了参加运算的操作存放的页号和单元号,硬件的地址转换机构按页号查页表,若该页对应标志为"1",则表示该页已在主存,这时根据关系式:

绝对地址=块号×块长+单元号

计算出欲访问的主存单元地址.如果块长为2的幂次,则可把块号作为高地址部分,把单元号作为低地址部分,两者拼接而成绝对地址.若访问的页对应标志为"0",则表示该页不在主存,这时硬件发"缺页中断"信号,有操作系统按该页在磁盘上的位置,把该页信息从磁盘读出装入主存后再重新执行这条指令.

设计一个"地址转换"程序来模拟硬件的地址转换工作.当访问的页在主存时,则形成绝对地址,但不去模拟指令的执行,而用输出转换后的地址来代替一条指令的执行.当访问的页不在主存时,则输出"*该页页号",表示产生了一次缺页中断.运行设计的地址转换程序,显示或打印运行结果.因仅模拟地址转换,并不模拟指令的执行,故可不考虑上述指令序列中的操作.授课题目:操作系统实训5授课序号:20授课班级:司法信息2003级教学方法:讲授,实训课时:2学时教学目的:通过这一章的学习,使学生掌握页面调度算法。教学重点:掌握页面调度算法。教学难点:最近最少用(LRU)页面调度算法处理缺页中断。作业布置:教学内容:用先进先出(FIFO)页面调度算法处理缺页中断.

[提示]:

在分页式虚拟存储系统中,当硬件发出"缺页中断"后,引出操作系统来处理这个中断事件.如果主存中已经没有空闲块,则可用FIFO页面调度算法把该作业中最先进入主存的一页调出,存放到磁盘上,然后再把当前要访问的页装入该块.调出和装入后都要修改页表页表中对应页的标志.

FIFO页面调度算法总是淘汰该作业中最先进入主存的那一页,因此可以用一个数组来表示该作业已在主存的页面.假定作业被选中时,把开始的m个页面装入主存,则数组的元素可定为m个.例如:

P[0],P[1],….,P[m-1]

其中每一个P[i](i=0,1,….,m-1)表示一个在主存中的页面号.它们的初值为:

P[0]:=0,P[1]:=1,….,P[m-1]:=m-1

用一指针k指示当要装入新页时,应淘汰的页在数组中的位置,k的初值为"0".

当产生缺页中断后,操作系统选择P[k]所指出的页面调出,然后执行:

P[k]:=要装入页的页号

k:=(k+1)modm

再由装入程序把要访问的一页信息装入到主存中.重新启动刚才那条指令执行.

编制一个FIFO页面调度程序,为了提高系统效率,如果应淘汰的页在执行中没有修改过,则可不必把该页调出(因在磁盘上已有副本)而直接装入一个新页将其覆盖.因此在页表中增加是否修改过的标志,为"1"表示修改过,为"0"表示未修改过,格式为:

由于是模拟调度算法,所以,不实际启动输出一页和装入一页的程序,而用输出调出的页号和装入的页号来代替一次调出和装入的过程.

把第一题中程序稍作修改,与本题结合起来,FIFO页面调度模拟算法如p103图2-2.

磁盘上,在磁盘上的存放地址以及已装入主存的页和作业依次执行的指令序列都同第一题中(4)所示.于是增加了"修改标志"后的初始页表为:按依次执行的指令序列,运行你所设计的程序,显示或打印每次调出和装入的页号,以及执行了最后一条指令后的数组P的值.

为了检查程序的正确性,可再任意确定一组指令序列,运行设计的程序,核对执行的结果.用最近最少用(LRU)页面调度算法处理缺页中断.

[提示]

在分页式虚拟存储系统中,当硬件发出"缺页中断"后,引出操作系统来处理这个中断事件.如果主存中已经没有空闲块,则可用LRU页面调度算法把该作业中最先进入主存的一页调出,存放到磁盘上,然后再把当前要访问的页装入该块.调出和装入后都要修改页表页表中对应页的标志.

LRU页面调度算法总是淘汰该作业中距现在最久没有访问过的那一页,因此可以用一个数组来表示该作业已在主存的页面.数组中的第一个元素总是指出当前刚访问的页号,因此最久没被访问的页总是由最后一个元素指出.如果主存中只有四块空闲块且执行第一题提示(4)假设的指令序列,采用LRU页面调度算法,那麽在主存中的页面变化情况如下:编制一个LRU页面调度程序,为了提高系统效率,如果应淘汰的页在执行中没有修改过,则可不必把该页调出.参看第二题中提示(3).模拟调度算法不实际启动输出一页和装入一页的程序,而用输出调出的页号和装入的页号来代替.把第一题中的程序稍作

改动,与本题集合起来,LRU页面调度模拟算法如图2-3.

按第一题中提示(4)的要求,建立一张初始页表,表中为每一页增加"修改标志"位(参考第二题中提示(4)).然后按依次执行的指令序列,运行你所设计的程序,显示或打印每次调出和装入的页号,以及执行了最后一条指令后的数组中的值.

为了检查程序的正确性,可再任意确定一组指令序列,运行设计的程序,核对执行的结果授课题目:操作系统实训6授课序号:22授课班级:司法信息2003级教学方法:讲授,实训课时:2学时教学目的:通过这一章的学习,使学生掌握主存储器空间的分配和回收。教学重点:掌握主存储器空间的分配和回收。教学难点:主存储器空间的分配。作业布置:教学内容:实验三、主存储器空间的分配和回收一、实习内容主存储器空间的分配和回收。二、实习目的一个好的计算机系统不仅要有一个足够容量的、存取速度高的、稳定可靠的主存储器,而且要能合理地分配和使用这些存储空间。当用户提出申请存储器空间时,存储管理必须根据申请者的要求,按一定的策略分析主存空间的使用情况,找出足够的空闲区域分配给申请者。当作业撤离或主动归还主存资源时,则存储管理要收回作业占用的主存空间或归还部分主存空间。主存的分配和回收的实现虽与主存储器的管理方式有关的,通过本实习帮助学生理解在不同的存储管理方式下应怎样实现主存空间的分配和回收。三、实习题目本实习模拟在两种存储管理方式下的主存分配和回收。第一题:在可变分区管理方式下采用最先适应算法实现主存分配和实现主存回收。[提示]:可变分区方式是按作业需要的主存空间大小来分割分区的。当要装入一个作业时,根据作业需要的主存量查看是否有足够的空闲空间,若有,则按需要量分割一个分区分配给该作业;若无,则作业不能装入。随着作业的装入、撤离,主存空间被分成许多个分区,有的分区被作业占用,而有的分区是空闲的。例如:

005k10k14k26k32k

128k操作系统作业1作业3空闲区作业2

空闲区

为了 说明哪些区是空闲的,可以用来装入新作业,必须要有一张空闲区说明表,格式如下:

起址长度状态第一栏14K12K未分配第二栏32K96K未分配MM

空表目

空表目

MM

其中,起址——指出一个空闲区的主存起始地址。长度——指出从起始地址开始的一个连续空闲的长度。状态——有两种状态,一种是“未分配”状态,指出对应的由起址指出的某个长度的区域是空闲区;另一种是“空表目”状态,表示表中对应的登记项目是空白(无效),可用来登记新的空闲区(例如,作业撤离后,它所占的区域就成了空闲区,应找一个“空表目”栏登记归还区的起址和长度且修改状态)。由于分区的个数不定,所以空闲区说明表中应有适量的状态为“空表目”的登记栏目,否则造成表格“溢出”无法登记。上述的这张说明表的登记情况是按提示(1)中的例所装入的三个作业占用的主存区域后填写的。(2)当有一个新作业要求装入主存时,必须查空闲区说明表,从中找出一个足够大的空闲区。有时找到的空闲区可能大于作业需要量,这时应把原来的空闲区变成两部分:一部分分给作业占用;另一部分又成为一个较小的空闲区。为了尽量减少由于分割造成的空闲区,而尽量保存高地址部分有较大的连续空闲区域,以利于大型作业的装入。为此,在空闲区说明表中,把每个空闲区按其地址顺序登记,即每个后继的空闲区其起始地址总是比前者大。为了方便查找还可使表格“紧缩”,总是让“空表目”栏集中在表格的后部。(3)采用最先适应算法(顺序分配算法)分配主存空间。按照作业的需要量,查空闲区说明表,顺序查看登记栏,找到第一个能满足要求的空闲区。当空闲区大于需要量时,一部分用来装入作业,另一部分仍为空闲区登记在空闲区说明表中。由于本实习是模拟主存的分配,所以把主存区分配给作业后并不实际启动装入程序装入作业,而用输出“分配情况”来代替。最先适应分配算法如图4-1。(4)当一个作业执行结束撤离时,作业所占的区域应该归还,归还的区域如果与其它空闲区相邻,则应合成一个较大的空闲区,登记在空闲区说明表中。例如,在提示(1)中列举的情况下,如果作业2撤离,归还所占主存区域时,应与上、下相邻的空闲区一起合成一个大的空闲区登记在空闲区说明表中。归还主存时的回收算法如图4-2。(5)请按最先适应算法设计主存分配和回收的程序。然后按(1)中假设主存中已装入三个作业,且形成两个空闲区,确定空闲区说明表的初值。现有一个需要主存量为6K的作业4申请装入主存;然后作业3撤离;再作业2撤离。请你为它们进行主存分配和回收,把空闲区说明表的初值以及每次分配或回收后的变化显示出来或打印出来。第二题:在分页式管理方式下采用位示图来表示主存分配情况,实现主存空间的分配和回收。[提示]:(1)分页式存储器把主存分成大小相等的若干块,作业的信息也按块的大小分页,作业装入主存时可把作业的信息按页分散存放在主存的空闲块中,为了说明主存中哪些块已经被占用,哪些块是尚未分配的空闲块,可用一张位示图来指出。位示图可由若干存储单元来构成,其中每一位与一个物理块对应,用0/1表示对应块为空闲/已占用。(2)假设某系统的主存被分成大小相等的64块,则位示图可用8个字节来构成,另用一单元记录当前空闲块数。如果已有第0,1,4,5,6,9,11,13,24,31,共10个主存块被占用了,那么位示图情况如下:字位节数号

0

1

2

3

4

5

6

7011001110101010100200000000310000001400000000500000000600000000700000000授课题目:操作系统实训7授课序号:24授课班级:司法信息2003级教学方法:讲授,实训课时:2学时教学目的:通过这一章的学习,使学生掌握进程同步。教学重点:掌握进程同步。教学难点:用PV操作解决生产者——消费者问题。作业布置:教学内容:实验四、同步机构

一,实验内容

模拟实现用同步机构避免并发进程执行时可能出现的与时间有关的错误.

二,实验目的

进程是程序在一个数据集合上运行的过程,进程是并发执行的,也即系统中的多个进程轮流地占用处理器运行.

我们把如干个进程都能进行访问和修改地那些变量成为公共变量.由于进程是并发执行的,所以,如果对进程访问公共变量不加限制,那么就会产生"与时间有关"的错误,即进程执行后,所得到的结果与访问公共变量的时间有关.为了防止这类错误,系统必须要用同步机构来控制进程对公共变量的访问.一般说,同步机构是由若干条原语——同步原语——所组成.本实验要求学生模拟PV操作同步机构的实现,模拟进程的并发执行,了解进程并发执行时同步机构的作用.

三,实验题目

模拟PV操作同步机构,且用PV操作解决生产者——消费者问题.

[提示]:

(1)PV操作同步机构,由P操作原语和V操作原语组成,它们的定义如下:

P操作原语P(s):将信号量s减去1,若结果小于0,则执行原语的进程被置成等待信号量s的状态.

V操作原语V(s):将信号量s加1,若结果不大于0,则释放一个等待信号量s的进程.

这两条原语是如下的两个过程:

procedurep(vars:semaphore);

begins:=s-1;

ifs<0thenW(s)

end{p}

procedurev(vars:semaphore);

begins:=s+1;

ifs<=0thenR(s)

end{V}

其中W(s)表示将调用过程的进程置为等待信号量s的状态;R(s)表示释放一个等待信号量s的进程.

在系统初始化时应把semaphore定义为某个类型,为简单起见,在模拟实验中可把上述的semaphore直接改成integer.

(2)生产者——消费者问题.

假定有一个生产者和消费者,生产者每次生产一件产品,并把生产的产品存入共享缓冲器以供消费者取走使用.消费者每次从缓冲器内取出一件产品去消费.禁止生产者将产品放入已满的缓冲器内,禁止消费者从空缓冲器内取产品.假定缓冲器内可同时存放10件产品.那么,用PV操作来实现生产者和消费者之间的同步,生产者和消费者两个进程的程序如下:

B:array[0..9]ofproducts;

s1,s2:semaphore;

IN,out;integer;

IN:=0;out:=0;

cobegin

procedureproducer;

c:products;

begin

L1:

produce(c);

p(s1);

B[IN]:=C;

IN:=(IN+1)mod10;

v(s2);

gotoL1

end;

procedureconsumer;

x:products;

begin

L2:P(s2);

x:=B[out];

out:=(out+1)mod10;

v(s1);

consume(x);

gotoL2

end;

coend

其中的semaphore和products是预先定义的两个类型,在模拟实现中semaphore用integer或char等代替.

授课题目:操作系统实训8授课序号:26授课班级:司法信息2003级教学方法:讲授,实训课时:2学时教学目的:通过这一章的学习,使学生掌握作业调度。教学重点:模拟批处理多道操作系统的作业调度。教学难点:模拟批处理多道操作系统的作业调度。作业布置:教学内容:实习五作业调度一、实习内容模拟批处理多道操作系统的作业调度。二、实习目的每个用户请求计算机计算的一个计算任务叫做一个作业。一个作业从输入初始数据到得到计算结果,要经过若干个步骤的相继执行。例如,编辑、编译、运行等,其中每一个步骤称作一个作业步。用户向系统提出作业加工步骤的方式称作业控制方式,作业控制方式有两种:终端控制方式(又称直接控制方式或联机控制方式)和批处理控制方式(又称自动控制方式或脱机控制方式)。在批处理控制方式下,用户采用系统提供的作业控制语言(JCL)写好作业说明书,说明作业加工的步骤。操作员把一批作业组织成输入流,通过“预输入”手段使每个作业的信息(包括作业说明书、源程序、初始数据等)暂存在辅助存储器的“输入井”中。批处理多道操作系统的作业管理有两个任务:作业调度和作业控制。采用多道程序设计方法的操作系统,在系统中要经常保留多个运行的作业,以提高系统效率。作业调度从系统已接纳的暂存在输入井中的一批作业中挑选出若干个可运行的作业,并为这些被选中的作业分配所需的系统资源。对被选中运行的作业必须按照它们各自的作业说明书规定的步骤进行控制。本实习要求学生模拟作业调度的实现,了解作业调度在操作系统中的作用。三、实习题目采用先来先服务算法和运行时间最短者优先算法模拟设计作业调度程序。[提示]:(1)作业调度程序负责从输入井选择若干个作业进入主存,为它们分配必要的资源,当它们能够被进程调度选中时,就可占用处理器运行。作业调度选择一个作业的必要条件是系统中现有的尚未分配的资源可满足该作业的资源要求。但有时系统中现有的尚未分配的资源既可满足某个作业的要求也可满足其它一些作业的要求,那么,作业调度必须按一定的算法在这些作业中作出选择。先来先服务算法是按照作业进入输入井的先后次序来挑选作业,先进入输入井的作业优先被挑选,当系统中现有的尚未分配的资源不能满足先进入输入井的作业时,那么顺序挑选后面的作业。运行时间最短者优先算法总是按作业要求运行的时间来选择作业,每次挑选要求运行时间短且资源要求能满足的作业先进入主存执行。(2)为了表示暂存在输入井中的各个作业的情况(作业信息在输入井中的位置、作业的资源要求等),常常采用二级目录结构:作业表和预输入表。例如:

用户名作业名资源要求预输入表地址

作业表

文件名文件属性文件长度在输入井中位置

预输入表

“预输入”程序为每个作业在作业表中占一登记栏,且把作业信息存放到输入井中并按文件(源程序文件、数据文件等)登记在预输入表中。“预输入”程序工作时还把作业控制语句集中,作为作业说明书文件存放在输入井并登记在预输入表的第一栏中,同时把用户在作业说明书中提出的资源要求登记在作业表中。本实习模拟作业调度,所以可不考虑有关“预输入”程序的工作。假定“预输入”程序已经把一批作业的信息存放在输入井了,并为它们建立了如下的作业表:

用户名作业名状态运行时间资源要求预输入表地址主存磁带AZYA收容0.3小时15k2

BZYB收容0.5小时60k1

CZYC收容0.1小时50k3

DZYD收容0.4小时10k2

EZYE收容0.1小时30k3

其中状态分三种:收容状态——作业已在输入井,但尚未被选中执行;执行状态——作业被选中,正在执行;完成状态——作业执行结束。(3)假定主存中可容纳多道作业同时执行,那么作业调度按调度算法和资源分配情况查作业表,从中选择若干作业,对每个被选中的作业创建一个作业控制进程且使它们处于就绪状态,同时把选中作业的作业说明书读入主存。处理器调度按调度策略选择作业调度进程或作业控制进程轮流占有处理器(处理器调度参见实习二)。作业控制进程按作业说明书控制作业执行,当一个作业执行结束后,作业调度再从输入井中选择一个作业进入主存,直到输入井中的作业都执行结束,通知操作员再预输入一批作业。本实习主要模拟作业调度,所以对处理器调度、作业控制过程简化。用输入随机数模拟处理器调度,用输入“用户名、作业名”模拟一个作业已经执行结束。于是,本实习的模拟流程可参考图11-1。(4)假定某系统可供用户使用的主存空间共100k,并有5台磁带机。主存分配采用可变分区分配方式且主存中信息不允许移动(参考实习四),对磁带机采用静态分配策略,主存中可同时执行的作业限定为两道,作业调度分别采用先来先服务算法和运行时间最短者优先算法,参考图11-1设计模拟作业调度的程序。假定作业表的初值如提示(2),分别在两种算法控制下运行设计的程序,依次显示被选中作业的用户名和作业名。比较两种作业调度算法选择作业的次序。在模拟作业执行结束输入被撤离作业的用户名、作业名时,应根据已在主存中的作业需运行的时间来决定撤离的先后次序。四、实习报告(1)实习题目。(2)程序所用的数据结构及其说明。(3)打印一份源程序且附上注释。(4)打印程序运行前的作业表,运行不同算法的作业调度程序,打印每选择一个作业后的作业表变化情况以及作业被选中执行的次序。授课题目:操作系统实训9授课序号:28授课班级:司法信息2003级教学方法:讲授,实训课时:2学时教学目的:通过这一章的学习,使学生理解文件的逻辑结构、存储结构、存取方式之间的联系。教学重点:文件的逻辑结构。教学难点:文件的存储结构作业布置:教学内容:实习六文件结构一、实习内容把文件的逻辑结构转换成存储结构,设计便于顺序存取和直接存取的文件存储结构。二、实习目的文件的结构是指文件中信息的构造方式,通常分成逻辑结构和存储结构两种。文件的逻辑结构是从用户的观点出发,研究用户概念中的信息组织方式,这时,把文件看成是若干个逻辑记录的集合。文件的存储结构是指文件中的信息在物理存储介质上的存放方法和组织关系,这时,把文件看成是相关物理块的有序集合。用户是按逻辑结构来生成和使用文件的,而文件系统必须按照存储设备的物理特性和用户对文件信息的存取方式来管理文件。所以,文件系统一个主要任务就是要在文件的逻辑结构和存储结构之间建立一个映射。本实习要求学生模拟设计文件的存储结构,通过实习理解文件的逻辑结构、存储结构、存取方式之间的联系。三、实习题目模拟设计MS-DOS操作系统中磁盘文件的存储结构。[提示]:(1)当用户对记录式文件采用顺序存以方式时,用户总是依次地访问一个个逻辑记录,即当访问了第I个记录后,下次总是访问第i+1个记录。所以,当用户采用顺序存取方式访问文件时,只要给出访问要求(读或写)而无需再指出要访问的记录号。在MS-DOS中FAT的前两项用来记录盘的类型。第2项起表示盘的分配和链接情况,在上例中第3项为“0表示对应的第3块空闲。图7-2还指出了文件A依次存放在第2,4,20,21,45,46块中,指针为FFF时表示文件结束。可见,MS-DOS的FAT表起了两个作用:一是起到位示图的作用,可从中判别哪些块被占用,哪些块是空闲的;二是指出了文件的链接情况。(3)假定磁盘存储空间共有32个物理块,模拟设计文件定位表FAT。文件定位表可以用一个一维数组FAT[031]来定义,其中一个元素与一个物理块对应。当FAT[i]=0时,表示第i块为空闲块;当FAT[i]=FFF时,表示链接文件到第i块结束;当FAT[i]¹0LFAT[i]¹FFF时,其值指示链接文件中下一个物理块号。(4)假定磁盘上的每个物理块只能存放一个逻辑记录,设计一个程序把文件的逻辑结构模拟转换成MS-DOS的链接结构。用户要求保存一个已经在主存中的文件时,给出文件名和文件的逻辑记录长度及个数,对一个已经保存的文件,允许用户插入新记录。用键盘输入来模拟用户的要求,输入信息为:“存”文件名逻辑记录长度逻辑记录个数“插入”文件名逻辑记录号“插入”要求中的逻辑记录号是指在该记录后插入一个新记录。模拟程序的算法如图7-3。在设计的模拟程序中可不执行“逻辑记录存入物理块”的工作,而用显示文件目录表和FAT来代替。(5)可假设系统中已经有两个链接文件,其链接情况由FAT表指出(链接情况学生自定),现又要保存一个新文件,然后对已保存的文件插入一个新记录。运行你所设计的程序,观察其结果。授课题目:操作系统实训10授课序号:30授课班级:司法信息2003级教学方法:讲授,实训课时:2学时教学目的:通过这一章的学习,使学生理解中断处理教学重点:中断处理。教学难点:模拟中断事件的处理作业布置:教学内容:实习七中断处理一、实习内容模拟中断事件的处理。二、实习目的现代计算机系统的硬件部分都设有中断机构,它是实现多道程序设计的基础。中断机构能发现中断事件,且当发现中断事件后迫使正在处理器上执行的进程暂时停止执行,而让操作系统的中断处理程序占有处理器去处理出现的中断事件。对不同的中断事件,由于它们的性质不同,所以操作系统应采用不同的处理。通过实习了解中断及中断处理程序的作用。本实习模拟“时钟中断事件”的处理,对其它中断事件的模拟处理,可根据各中断事件的性质确定处理原则,制定算法,然后依照本实习,自行设计。三、实习题目模拟时钟中断的产生及设计一个对时钟中断事件进行处理的模拟程序。[提示]:(1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论