
操作系统原理课堂笔记知识.pdf
8页1 / 8第六章设备管理一、 输入输出操作(要求达到“识记”层次)1、什么是输入输出操作:主存储器与外围设备之间的信息传送操作称为输入输出操作2、对于存储型设备,输入输出操作的信息传输单位为“块”对输入输出型设备,输入输出操作的信息传输单位为“字符”二、 独占设备和共享设备(识记)1、独占设备是指每次只能供一个作业执行期间单独使用的设备如输入机、磁带机、打印机等2、共享设备是指允许几个作业执行期间可同时使用的设备3、共享设备的“同时使用”的含义是指多个作业可以交替启动共享设备,当一个用业正在使用设备时其他作业暂不能使用,即每一时刻仍只有一个作业占用,但当一个作业正在使用设备时其他作业就可使用三、独占设备的分配(领会)1、独占设备的绝对号与相对号这和绝对地址/相对地址的概念类似绝对号就是将每一台设备确定一个编号(相当于一个绝对地址) 相对号就是为了用户程序的方便而设的,在用户请求使用时,采用“设备类-相对号”来提出使用设备要求由系统建立绝对号与“设备类-相对号”之间的关系,就能正确启用设备了2、设备的指定方式1)指定绝对号:这种方式由作业直接指定绝对号对应的设备系统只能把这个设备分配给他,如果该设备正由其他作业使用则申请不能得到满足。
绝对号就好象给每个人取一个不同的名字上司的工作计划中有一条:十点钟叫张三去买菜如果张三有空,就得张三去买2)指定设备类、相对号:这种方式在申请设备时不指定具体哪台设备,只说明要某类设备多少台,这样可以由系统灵活分配设备类 -相对号呢,就好比是一个部门,部门中有一些工作人员,上司的工作计划就只写成:十点叫买菜部找个人去买罗卜这时就由“系统”来看看买菜部是否有人空闲,只要本部有人闲着能干活的,不管张三李四都可以去干这样,对于上司来说,不用去记谁谁的名字,只要指定某部门,要多少人就是了,他的用人策略和具体的哪个人无关这就是“设备独立性”3)设备独立性:采用“设备类、相对号”方式使用设备时,用户编程就不必指定特定设备, 在程序中由“设备类、相对号”定义逻辑设备程序执行时由系统根据用户指定的逻辑设备转换成与其对应的具体物理设备所以,用户编程时使用的设备与实际使用哪台设备无关,这就是“设备独立性”4)如何实现独占性设备分配:对于独占性设备,系统采用“静态分配”的策略,就是当一个作业所需使用的独占设备能得到满足时,该作业才能被装入主存储器执行在操作系统中, 设置“设备分配表” 来记录计算机系统所配置的独占设备类型、台数和分配情况等。
设备分配表由“设备类表”和“设备表”两部分组成通过查表和修改表的操作完成设备分配工作四、磁盘的驱动调度(领会)1、磁盘的结构(动画)2、访问磁盘的操作时间(动画)3、磁盘的驱动调度:在多道程序设计系统中,同时有多个访问者请求磁盘操作,此时系统采用一定的调度策略来决定各等待访问者的执行次序,所以系统决定等待磁盘访问者的执行次序的工作就是磁盘的“驱动调度”4、对磁盘进行驱动调度的目的:尽可能的降低多个访问者执行输入输出操作的总时间,增加单位时间内的输入输出操作次数,有利于系统效率的提高2 / 85、磁盘调度分为移臂调度和旋转调度根据访问者指定的柱面位置来决定执行次序的调度称“移臂调度” ;当移动臂定位后,如有多个访问者等待访问该柱面时,根据延迟时间来决定执行次序的调度称为“旋转调度”6、移臂调度算法包括以下四种:1)先来先服务算法;2)最短寻找时间优先调度算法;3)电梯调度算法;4)单向扫描调度算法以上几种算法要能够区分,如给你一个访问序列和访问条件,应能根据各种算法做出调度后的访问序列7、信息的优化分布:知道信息在磁盘上排列不一定是按顺序最优,对于一些能预知处理要求的信息 采用优化分页可以缩短输入输出操作时间,提高系统效率五、外围设备的启动(识记)要想提高效率就要大胆放权,让下属对事负责而不是对人负责。
CPU是很忙的, 如果所有的事情都自己做,做得再好也不一定好,如果有人能帮他处理一些事情, 他就可以腾出时间来做更多的事通道就是中层干部,发挥他们的作用就能提高效率1、通道( channel) :计算机系统中能够独立完成输入输出操作的硬件装置,也称为“输入输出处理机” CPU并不直接操作外围设备,他连接通道(I/O 处理机),通道连接设备控制器,设备控制器连接设备CPU只需把“ I/O设备启动,并给出相关的操作要求然后就由通道来处理输入输出事宜,做完后报告CPU 2、通道命令和通道程序:通道命令( CCW)规定设备的一种操作,通常由命令码、数据主存地址、传送字节个数及标志码等部分组成操作系统用一组通道命令来执行一次输入输出应做的工作,这一组通道命令就组成了一个“ 通道程序 ” 命令码分成三类:数据传输类、通道命令转移类和设备控制类数据主存地址对于不同的命令有不同的作用,比如命令码为写的操作,主存地址指定的区域存放输出到外围设备的信息标志码:为非0 时表示通道程序未结束为0 时表示通道程序结束传送字节个数,表示本命令应传输的字节个数3、通道地址字(CAW)和通道状态字(CSW )用来存放通道程序首地址的主存固定单元称为“通道地址字”。
通道状态字: 用于记录通道和设备执行情况的主存单元通常包括通道命令地址、设备状态、通道状态和剩余字节个数等几个字段4、I/O 中断: 是指中央处理器和通道协调工作的一种手段通道借助 I/O 中断请求CPU进行干预, CPU根据产生的I/O 中断事件了解输入输出操作的执行情况,I/O 中断事件是由于通道程序的执行或其他外界原因引起的,对通道操作而言,当操作正常结束或异常结束(如设备故障、设备特殊情况引起异常结束)形成I/O 中断,由CPU根据相应情况分别处理六、虚拟设备SPOOL系统(领会)1、实现虚拟设备的目的:用一种物理设备模拟另一类物理设备,使各作业在执行期间只使用虚拟的设备而不直接使用物理的独占设备这种技术可使独占的设备变成可共享的设备,使得设备的利用率和系统效率都能得到提高3 / 82、实现虚拟设备的硬件条件:大容量磁盘;中断装置和通道;中央处理器与通道并行工作的能力另外,实现虚拟设备的软件条件是要求操作系统采用多道程序设计技术3、虚拟设备的实现原理:对于多道程序,输入时将一批作业的信息通过输入设备预先传送到磁盘上 输出时将作业产生的结果也全部暂时存在磁盘上而不直接输出,直到一个作业得到全部结果而执行结束时再行输出。
就是用磁盘来模拟输入机和打印机的工作,把它们的工作内容先保存起来,然后一并执行)4、SPOOL系统的组成和实现:井:为实现虚拟设备在磁盘上划出的专用存储空间,用于存放作业的初始信息和执行结果SPOOL系统由三部分程序组成:预输入程序 通过该程序把作业流中每个作业的初始信息传送到“输入井” 保存起来以以备作业执行时使用井管理程序: 通过该程序来保证作业正确及时地从“井”中读取或写入信息它使得每个用户感觉到自己都在使用独立的输入输出设备缓输出程序 它负责查看 “输出井”中是否有待输出的结果信息,若有则启动打印机把作业结果输出5、实现虚拟设备为什么可以提高系统效率:SPOOL系统借助硬件的中断装置和通道技术使得中央处理器与各种外围设备以及各外围设备之间均可并行工作操作系统采用多道程序设计技术,合理分配处理器,实现联机的外围设备同时操作作业执行时从磁盘上读写信息来代替从输入机和打印机的读写操作,不仅使多个作业可以同时执行, 而且加快了作业的执行速度,提高了单位时间内处理作业的能力在作业执行的同时还可利用输入机继续预输入作业信息和利用打印机输出结果,于是,整个系统可以是第一批作业的执行结果在打印输出,第二批作业正在处理,第三批作业信息正在预输入到磁盘的“输入井”中。
这种联机同时操作极大地提高了独占设备的利用率,也使计算机系统的各种资源被充分利用通常把通道程序的执行情况记录在(csw )中SPOOL系统中的数据结构包括:(1)作业表用来登记进入“输入井”的各个作业的作业名、作业状态、作业拥有的文件数以及预输入表和缓输出表的位置等2)预输入表每个作业都有一张预输入表,用来登记该作业初始信息的各个文件指出各文件的文件名、传输信息时使用的设备类型、文件的长度以及文件的存放位置等3)缓输出表每个作业设一张缓输出表,用来登记该作业产生的结果文件在 SPOOL系统中设计了一张作业表,简述该表的作用答:作业表供调度选择处于“收容状态”的作业作业执行时可从中找到该作业的“预输入表”,从而找到所需的文件从作业表中可找到该作业的“缓输出表”,以登记作业的执行在 SPOOL系统中设计了一张“缓输出表” ,请问哪些程序执行时要访问缓输出表,简单说明之在 SPOOL系统中有两个程序要访问缓输出表:井管理写程序把作业执行结果文件登记在缓输出表中;缓输出程序从缓输出表中查找结果文件并打印输出13、若干个等待访问磁盘者依次要访问的柱面为20,44,40,4,80,12,76,假设每移动4 / 8一个柱面需要3 毫秒时间,移动臂当前位于40 号柱面,请按下列算法分别计算为完成上述各次访问总共花费的寻找时间。
1)先来先服务算法:(2)最短寻找时间优先算法答:先来先服务算法:(20+24+4+36+76+68+64)*3=292*3=876 ms 最短寻找时间算法: (0+4+24+8+8+72+4)*3=120*3=360 ms (注:各算法使移动臂的移动次序和移动的柱面数如下:(1)40 20 44 40 4 80 12 76(20) (24) (4) ( 36) (76) (68) (64)共移动 292 柱面(2)40 44 20 12 4 76 80(4) (24) (8) (8) (72) (4)共移动 120 柱面第七章进程同步与进程通信进程的顺序性与并发性(领会)有人说, 在程序中不是有跳转语句和重复语句,怎么就是顺序执行?注意,这里是指进程在处理器中的执行,因为处理器每次只能执行一个操作,因此每条指令必须按顺序进入CPU执行, 假使有一条指令是跳转的,那么执行本指令后,会取出跳转目的地址的指令进入CPU运行,这个顺序是程序规定的所以对 CPU而言,进程总是按顺序执行进程是一个程序在一个数据集合上的一次执行,同一个程序和同一个数据集的运行结果必然是相同的这就是可再现性同时执行并不是真的同时,因为任一时刻CPU中只能有一个进程运行。
1、进程的顺序性:任何进程在顺序的处理器上的执行是严格按照顺序进行的,这就是进程的顺序性 当一个进程独占处理器顺序执行时,具有两个特性:一、封闭性二、可再现性2、进程的同时执行:在多道程序设计系统中,一个进程的工作没有全部完成之前,另一个进程就可以开始工作,它们的执行在时间上重迭的,我们把它们称为是“可同时执行的”3、进程的并发性:若系统中存在一组可同时执行的进程,则说该组进程具有并发性,并把可同时执行的进程称为“并发进程”4、并发进程间的关系:并发进程相互之间可能是无关的,也可能是交往的如果一个进程的执行不影响其他进程的执行,且与其他进程的进展情况无关,即它们是各自独立的,则这些并发进程相互之间是无关的如果一个进程的执行依赖其他进程的执行,则这些并发进程之间是有交往的二、 与时间有关的错误(简单应用)1、并发进程的执行速度取决于自身和进程调度策略一个进程运行时会被中断,且断点是不固定的,一个进程被中断后,哪个进程可以运行,被中断的进程什么时候占用处理器,是与进程调度策略有关的因此进程的执行速度不能由自己决定2、并发进程交替使用共享资源时会出现与时间有关的错误由于共享资源的原因,加上进程并发执行的随机性,一个进程对另一个进程的影响是不可预测的。
造成不正确的因素与进程占用处理器的时间、执行的速度以及外界的影响有关因此被称为与时间有关的错误3、分析并发进程中与时间有关的错误,请理解教材上的例子三.相关临界区(领会 )1、临界区的定义:并发进程中与共享变量。












