操作系统原理课件04_第1页
操作系统原理课件04_第2页
操作系统原理课件04_第3页
操作系统原理课件04_第4页
操作系统原理课件04_第5页
已阅读5页,还剩122页未读 继续免费阅读

下载本文档

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

文档简介

1、第三章第三章 用户接口与作业管理用户接口与作业管理n用户与操作系统的接口用户与操作系统的接口n批处理操作系统的作业管理批处理操作系统的作业管理 作业的基本概念:作业、作业步、作业流作业的基本概念:作业、作业步、作业流n交互式系统作业管理交互式系统作业管理n系统调用系统调用 用户程序提出服务请求的手段,基本思想,实用户程序提出服务请求的手段,基本思想,实现方法现方法n操作系统安装与启动操作系统安装与启动1、作业级接口、作业级接口 操作系统为用户对作业运行全过程控制提供的功操作系统为用户对作业运行全过程控制提供的功能能(1) 联机接口(交互式)联机接口(交互式)(2) 脱机接口脱机接口一、用户与操

2、作系统的接口一、用户与操作系统的接口n作业级接口作业级接口n程序级接口程序级接口2. 程序级接口程序级接口系统为用户在程序一级提供有关服务而设置系统为用户在程序一级提供有关服务而设置由一组系统调用命令组成由一组系统调用命令组成n负责管理和控制运行的程序负责管理和控制运行的程序n并在这些程序与系统控制的资源和提供的服务并在这些程序与系统控制的资源和提供的服务间实现交互作用间实现交互作用n用汇编语言:在程序中直接用系统调用命令用汇编语言:在程序中直接用系统调用命令n用高级语言:可在编程时使用过程调用语句用高级语言:可在编程时使用过程调用语句二、批处理系统作业处理二、批处理系统作业处理1 1、作业的

3、基本概念、作业的基本概念(1 1)作业作业 用户在一次计算过程中,或者一次事务处理过程中,要求计用户在一次计算过程中,或者一次事务处理过程中,要求计算机系统所做工作的总称算机系统所做工作的总称(2 2)作业步作业步 一个作业可划分成若干部分,称为一个作业步一个作业可划分成若干部分,称为一个作业步 典型的作业控制过程:典型的作业控制过程: “ “编译编译”、“连接装配连接装配”、“运行运行”(3 3)作业流作业流(4 4)典型的作业步)典型的作业步编译编译连接装配连接装配运行运行目标目标程序程序段段目标目标程序程序源程序源程序输入数据输入数据子程序子程序库函数库函数动态库函动态库函数数计算结果计

4、算结果作业的基本概念作业的基本概念( (续续1)1)2、批处理作业控制语言与作业说明书、批处理作业控制语言与作业说明书(1 1)作业控制语言)作业控制语言n用户用于描述批处理作业处理过程控制意图用户用于描述批处理作业处理过程控制意图的一种特殊程序的一种特殊程序n书写作业说明书的语言称为作业控制语言书写作业说明书的语言称为作业控制语言(jcljcl)(2)作业控制语言的类别)作业控制语言的类别 包括:包括:i/oi/o命令、编译命令、操作命令以及命令、编译命令、操作命令以及条件命令等条件命令等(3)作业说明书)作业说明书表达用户对作业的控制意图表达用户对作业的控制意图内容:内容:n作业的基本描述

5、作业的基本描述n作业控制描述作业控制描述n资源要求描述资源要求描述批处理作业控制语言与作业说明书(续)批处理作业控制语言与作业说明书(续)3、作业控制块与作业表、作业控制块与作业表(1)作业控制块)作业控制块 (jcb:job control block)n作业控制块是批处理作业存在的标志作业控制块是批处理作业存在的标志n保存有系统对于作业进行管理所需要的全部信息保存有系统对于作业进行管理所需要的全部信息n位于磁盘区域中位于磁盘区域中(2)作业控制块的内容)作业控制块的内容 作业控制块中所包含的信息数量及内容因作业控制块中所包含的信息数量及内容因系统而异系统而异n较简单的系统较简单的系统n较复

6、杂的系统较复杂的系统 作业控制块与作业表(续作业控制块与作业表(续1)作业标知作业标知用户名称用户名称用户帐号用户帐号调度信息调度信息资源需求资源需求作业状态作业状态作业类别作业类别输入井地址输入井地址输出井地址输出井地址进入系统时间进入系统时间开始处理时间开始处理时间作业完成时间作业完成时间作业退出时间作业退出时间资源使用情况资源使用情况 作业控制块作业控制块jcb作业控制块与作业表(续作业控制块与作业表(续2)(3 3)作业控制块的建立)作业控制块的建立 当作业开始由输入设备向磁盘的输入井传输时当作业开始由输入设备向磁盘的输入井传输时 系统输入程序为其建立一个作业控制块系统输入程序为其建立

7、一个作业控制块 进行初始化进行初始化 初始化的大部分信息取自作业说明书初始化的大部分信息取自作业说明书 作业控制块与作业表(续作业控制块与作业表(续3)(4)作业控制块的使用)作业控制块的使用需要访问作业控制块的程序需要访问作业控制块的程序n系统输入程序系统输入程序n作业调度程序作业调度程序n作业控制程序作业控制程序n系统输出程序等系统输出程序等作业控制块与作业表(续作业控制块与作业表(续4)(5 5)作业控制块的撤消)作业控制块的撤消作业完成后,其作业控制块由系统输出程序撤消作业完成后,其作业控制块由系统输出程序撤消作业控制块被撤消后其作业也不复存在作业控制块被撤消后其作业也不复存在作业控制

8、块与作业表(续作业控制块与作业表(续5)(6)作业表)作业表每个作业有个作业控制块每个作业有个作业控制块n所有作业所有作业jcbjcb构成一个作业表构成一个作业表n作业表存放在外存固定区域中,长度是固定作业表存放在外存固定区域中,长度是固定n限制了系统所能同时容纳的作业数量限制了系统所能同时容纳的作业数量 系统输入程序、作业调度程序、系统输出程序都需要访问系统输入程序、作业调度程序、系统输出程序都需要访问作业表作业表 因而存在互斥问题因而存在互斥问题jcb1 jcb2 jcbi jcbn 作业表作业表作业控制块与作业表(续作业控制块与作业表(续6)4、 批处理作业的状态及转换批处理作业的状态及

9、转换一个作业从进入系统到运行结束一个作业从进入系统到运行结束经历四个不同的状态:经历四个不同的状态:“进入进入”“后备后备”“运行运行”“完成完成” 作业和进程的状态转换图作业和进程的状态转换图数据数据进入状态进入状态退出状态退出状态后备状态后备状态运行状态运行状态作业控制进程作业控制进程 输入设备输入设备数据数据源程序源程序输出设备输出设备作业说作业说明书明书输输入入井井运行运行等待等待就绪就绪输输出出井井输输入入程程序序输输出出程程序序作作业业调调度度进程进程调度调度批处理作业的状态及转换(续批处理作业的状态及转换(续1)(1)运行状态的作业)运行状态的作业三种状态:三种状态:n就绪状态就

10、绪状态n执行状态执行状态n等待状态等待状态批处理作业的状态及转换(续批处理作业的状态及转换(续2)5、作业的建立、作业的建立一个作业建立过程的两个子过程:一个作业建立过程的两个子过程:n作业的输入作业的输入njcbjcb的建立的建立 作业控制块作业控制块jcbjcb和作业:一一对应关系和作业:一一对应关系(1)作业的输入)作业的输入 将作业程序、数据和作业说明书从输入设备(例将作业程序、数据和作业说明书从输入设备(例如键盘)输入到外存,并形成初始信息如键盘)输入到外存,并形成初始信息典型作业输入方式典型作业输入方式n spoolingspooling系统系统作业的建立(续作业的建立(续1)(2

11、)jcb的建立的建立在系统把作业信息输入到输入井之后在系统把作业信息输入到输入井之后根据作业说明书和有关作业信息在外存的位置等根据作业说明书和有关作业信息在外存的位置等建立作业控制表建立作业控制表jcbjcbjcbjcb包含对作业进行管理所必须的信息包含对作业进行管理所必须的信息njcbjcb表的数量是一个常数表的数量是一个常数n外存输入井的大小有限外存输入井的大小有限 只有在获得只有在获得jcbjcb表项和足够输入井空间后表项和足够输入井空间后作业才可能创建成功作业才可能创建成功作业的建立(续作业的建立(续3)6、批处理作业的调度、批处理作业的调度主要功能:主要功能:n审查系统能否满足用户作

12、业的资源要求审查系统能否满足用户作业的资源要求 只要通过调用相应的资源管理程序的有关部分只要通过调用相应的资源管理程序的有关部分 审核其表中是否能满足作业说明书中的要求即可审核其表中是否能满足作业说明书中的要求即可作业调度:作业调度:n按照一定的算法从输入井中的后备作业中选取作业按照一定的算法从输入井中的后备作业中选取作业 将其投入内存运行将其投入内存运行 调度的关键调度的关键 在于在于 选择恰当的算法选择恰当的算法(1)调度算法评价)调度算法评价调度实质上是一个策略问题调度实质上是一个策略问题设定的目标往往是相互冲突的设定的目标往往是相互冲突的 目标:目标:n单位时间内运行尽可能多的作业单位

13、时间内运行尽可能多的作业n使处理机尽可能保持使处理机尽可能保持“忙碌忙碌”n使各种使各种i/oi/o设备得以充分利用设备得以充分利用n对所有的作业都是公平合理的对所有的作业都是公平合理的批处理作业的调度(续批处理作业的调度(续1)要设计一个理想的调度算法是一件十分困难的事要设计一个理想的调度算法是一件十分困难的事在实际系统中,调度算法往往折衷考虑在实际系统中,调度算法往往折衷考虑设计调度算法时应考虑的因素:设计调度算法时应考虑的因素:n调度算法应与系统设计目标保持一致调度算法应与系统设计目标保持一致n注意系统资源均衡使用注意系统资源均衡使用n保证提交的作业在截止时间内完成保证提交的作业在截止时

14、间内完成n设法缩短作业平均周转时间设法缩短作业平均周转时间大多数操作系统都采用比较简单的调度算法大多数操作系统都采用比较简单的调度算法批处理作业的调度(续批处理作业的调度(续2)作业平均周转时间作业平均周转时间假定某一作业进入假定某一作业进入“输入井输入井”的时间为的时间为sisi, 它被选中执行,得到计算结果的时间为它被选中执行,得到计算结果的时间为eiei 它的周转时间为它的周转时间为ti ti ei siei si 则作业平均周转时间为:则作业平均周转时间为: t t( ) n n为被测定作业流中的作业数为被测定作业流中的作业数niti1n1(2)调度算法性能的衡量)调度算法性能的衡量批

15、处理作业的调度(续批处理作业的调度(续3)平均带权周转时间平均带权周转时间 w w( ) ri ri 为某作业为某作业i i的实际执行时间的实际执行时间niriti1n1n t:衡量不同调度算法对同一个作业流的性能:衡量不同调度算法对同一个作业流的性能n w:同一调度算法对不同作业流的性能衡量:同一调度算法对不同作业流的性能衡量 批处理作业的调度(续批处理作业的调度(续4)(3)系统进行作业调度的决策因素)系统进行作业调度的决策因素n作业到达时间作业到达时间n预先为作业确定的优先级预先为作业确定的优先级系统可测定的其他因素:系统可测定的其他因素:n作业所需的作业所需的cpucpu时间时间c c

16、n存储要求存储要求m mn打印输出的行数打印输出的行数l ln其他的资源要求其他的资源要求批处理作业的调度(续批处理作业的调度(续5)(4)常见的批处理作业调度算法)常见的批处理作业调度算法n先来先服务算法(先来先服务算法(fcfs:first come first serve)n最短作业优先算法(最短作业优先算法(sjf:shortest job first)n最高响应比优先算法最高响应比优先算法 (hrn:highest response ratio next) 批处理作业的调度(续批处理作业的调度(续6)n基于优先数调度算法基于优先数调度算法 (hpf:highest priority

17、first) (a)由用户规定优先数(外部优先数)由用户规定优先数(外部优先数) 用户提交作业时,根据急迫程度规定适当的优先数用户提交作业时,根据急迫程度规定适当的优先数 作业调度程序根据作业调度程序根据jcb优先数决定进入内存的次序优先数决定进入内存的次序 (b)由系统计算优先数(内部优先数)由系统计算优先数(内部优先数)例:可按如下公式计算作业的优先数:例:可按如下公式计算作业的优先数:优先数优先数 = = 用户规定优先数用户规定优先数 作业处理时间作业处理时间 + + 作业等待时间作业等待时间 输出量输出量批处理作业的调度(续批处理作业的调度(续7)n均衡调度算法均衡调度算法(分类排队算

18、法分类排队算法)基本思想:基本思想:n根据系统运行情况和作业属性将作业分类根据系统运行情况和作业属性将作业分类n轮流从不同的作业类中挑选作业轮流从不同的作业类中挑选作业目标:目标:n力求均衡地利用各种系统资源,发挥资源使用效率力求均衡地利用各种系统资源,发挥资源使用效率n力求使用户满意力求使用户满意批处理作业的调度(续批处理作业的调度(续8)例例1 1:将待处理作业分成如下队列:将待处理作业分成如下队列: 队列队列1 1:计算量大的作业:计算量大的作业 队列队列2 2:i/oi/o量大的作业量大的作业 队列队列3 3:计算量与:计算量与i/oi/o量均衡的作业量均衡的作业n调度时,在三个队列中

19、各取一些作业调度时,在三个队列中各取一些作业在内存中的作业有的使用处理机在内存中的作业有的使用处理机有的使用外部设备有的使用外部设备n使得系统的各种资源能得到充分利用使得系统的各种资源能得到充分利用批处理作业的调度(续批处理作业的调度(续9)例例2 2:将待处理作业分成如下三个队列:将待处理作业分成如下三个队列: 队列队列1 1:长作业:长作业 队列队列2 2:中等长度作业:中等长度作业 队列队列3 3:短作业:短作业n调度时调度时取队列取队列1 1一作业,队列一作业,队列2 2一作业,队列一作业,队列3 3一作业一作业n长作业用户和短作业用户均比较满意长作业用户和短作业用户均比较满意批处理作

20、业的调度(续批处理作业的调度(续10)(5)作业调度算法应用例子)作业调度算法应用例子1n假设在单道批处理环境下有四个作业,已知它们进入假设在单道批处理环境下有四个作业,已知它们进入系统的时间、估计运行时间系统的时间、估计运行时间 应用先来先服务、最短作业优先和最高响应比优先作应用先来先服务、最短作业优先和最高响应比优先作业调度算法,分别计算出作业的平均周转时间和带权业调度算法,分别计算出作业的平均周转时间和带权的平均周转时间的平均周转时间批处理作业的调度(续批处理作业的调度(续11)先来先服务调度算法计算结果先来先服务调度算法计算结果作作业业进进入入时时间间估估计计运运行行时时间间(分分钟钟

21、)开开始始时时间间结结束束时时间间周周转转时时间间(分分钟钟)带带权权周周转转时时间间job18:001208:0010:001201job28:505010:0010:501202.4job39:001010:5011:0012012job49:502011:0011:20904.5作作业业平平均均周周转转时时间间 t = 112.5作作业业带带权权平平均均周周转转时时间间 w = 4.97545019.9批处理作业的调度(续批处理作业的调度(续12)最短作业优先作业算法计算结果最短作业优先作业算法计算结果作作业业进进入入时时间间估估计计运运行行时时间间(分分钟钟)开开始始时时间间结结束束时

22、时间间周周转转时时间间(分分钟钟)带带权权周周转转时时间间job18:001208:0010:001201job28:505010:3011:201503job39:001010:0010:10707job49:502010:1010:30402作作业业平平均均周周转转时时间间 t = 95作作业业带带权权平平均均周周转转时时间间 w = 3.2538013批处理作业的调度(续批处理作业的调度(续13)最高响应比优先作业算法计算结果最高响应比优先作业算法计算结果作作业业进进入入时时间间估估计计运运行行时时间间(分分钟钟)开开始始时时间间结结束束时时间间周周转转时时间间(分分钟钟)带带权权周周转

23、转时时间间job18:001208:0010:001201job28:503010:1011:00701.4job39:001010:0010:10707job49:502011:0011:20904.5作作业业平平均均周周转转时时间间 t = 87.5作作业业带带权权平平均均周周转转时时间间 w = 4.07535016.3批处理作业的调度(续批处理作业的调度(续14)在两道环境下有四个作业在两道环境下有四个作业已知它们进入系统的时间、估计运行时间已知它们进入系统的时间、估计运行时间系统采用短作业优先作业调度算法,作业被调度运行后系统采用短作业优先作业调度算法,作业被调度运行后不再退出不再退

24、出当一新作业投入运行后,可按照作业运行时间长短调整当一新作业投入运行后,可按照作业运行时间长短调整作业执行的次序作业执行的次序请给出这四个作业的执行时间序列,并计算出平均周转请给出这四个作业的执行时间序列,并计算出平均周转时间及带权平均周转时间时间及带权平均周转时间(6)作业调度算法应用例子)作业调度算法应用例子2批处理作业的调度(续批处理作业的调度(续15)两道批处理系统中两道批处理系统中最短作业优先作业算法计算结果最短作业优先作业算法计算结果作作业业进进入入时时间间估估计计运运行行时时间间(分分钟钟)开开始始时时间间结结束束时时间间周周转转时时间间(分分钟钟)带带权权周周转转时时间间job

25、110:003010:0011:05654.167job210:052010:0510:25201job310:10510:2510:30204job410:201010:3010:40202作作业业平平均均周周转转时时间间 t = 31.25作作业业带带权权平平均均周周转转时时间间 w = 2.7912511.167批处理作业的调度(续批处理作业的调度(续16)四个作业的执行时间序列为:四个作业的执行时间序列为:job1job1:1010:00001010:0505,1010:40401111:0505job2job2:1010:05051010:2525job3job3:1010:2525

26、1010:3030job4job4:1010:30301010:4040两道批处理系统中两道批处理系统中最短作业优先作业算法计算结果(续最短作业优先作业算法计算结果(续1)批处理作业的调度(续批处理作业的调度(续17)1010:0000,job1job1进入,只有一作业,进入,只有一作业,job1job1被调入执行被调入执行1010:0505,job2job2到达,最多允许两作业同时进入到达,最多允许两作业同时进入 所以所以job2job2也被调入也被调入n内存中有两作业,哪一个执行?题目规定当一新作业运行后,可按内存中有两作业,哪一个执行?题目规定当一新作业运行后,可按作业运行时间长短调整执

27、行次序作业运行时间长短调整执行次序n即基于优先数可抢占式调度策略即基于优先数可抢占式调度策略优先数是根据作业估计运行时间大小来决定的优先数是根据作业估计运行时间大小来决定的由于由于job2job2运行时间(运行时间(2020分)比分)比job1job1少少(到(到1010:0505,job1job1还需还需2525分钟)分钟)所以所以job2job2运行,而运行,而job1job1等待等待两道批处理系统中两道批处理系统中最短作业优先作业算法分析过程最短作业优先作业算法分析过程批处理作业的调度(续批处理作业的调度(续18)1010:1010,job3job3到达输入井,内存已有两作业到达输入井,

28、内存已有两作业 job3job3不能马上进入内存;不能马上进入内存;1010:2020,job4job4也不能进入内存也不能进入内存1010:2525,job2job2运行结束,退出,内存中剩下运行结束,退出,内存中剩下job1job1 输入井中有两作业输入井中有两作业job3job3和和job4job4,如何调度?,如何调度?n作业调度算法:最短作业优先作业调度算法:最短作业优先因此因此job3job3进入内存进入内存比较比较job1job1和和job3job3运行时间运行时间job3job3运行时间短,故运行时间短,故job3job3运行运行同样,同样,job3job3退出后,下一个是退出

29、后,下一个是job4job4job4job4结束后,结束后,job1job1才能继续运行才能继续运行两道批处理系统中两道批处理系统中最短作业优先作业算法分析过程(续最短作业优先作业算法分析过程(续1)批处理作业的调度(续批处理作业的调度(续19)(7)多道程序对平均周转时间的影响)多道程序对平均周转时间的影响作业流在多道环境下运行作业流在多道环境下运行n平均周转时间、带权平均周转时间平均周转时间、带权平均周转时间 比单道环境下都有明显改善比单道环境下都有明显改善n不是任意作业组合都能改善调度性能不是任意作业组合都能改善调度性能 有时甚至可能变坏有时甚至可能变坏批处理作业的调度(续批处理作业的调

30、度(续20)例:四个各需两小时作业同时投入运行,例:四个各需两小时作业同时投入运行,i/oi/o等待时间均占等待时间均占25%25%,即占即占cpucpu时间各为时间各为1.51.5小时小时根据计算公式,根据计算公式,cpucpu的空转率为的空转率为0 0采用简单轮转法调度,每小时各作业分别占用采用简单轮转法调度,每小时各作业分别占用25%25%的的cpucpu时间,时间,算得该作业组合的平均周转时间约为算得该作业组合的平均周转时间约为6 6小时,而平均带权周小时,而平均带权周转时间约为转时间约为3 3但是,若以单道程序方式运行:但是,若以单道程序方式运行:n平均周转时间平均周转时间t=t=(

31、2+4+6+82+4+6+8)/4=5/4=5小时小时n平均带权周转时间平均带权周转时间w=w=(1+2+3+41+2+3+4)/4=2.5/4=2.5批处理作业的调度(续批处理作业的调度(续21)7、作业调度与进程调度、作业调度与进程调度作业能否占用处理器?什么时间能够占用处理器?作业能否占用处理器?什么时间能够占用处理器?由进程调度来决定由进程调度来决定进程的初始状态为就绪状态进程的初始状态为就绪状态进程调度选择当前可占用进程调度选择当前可占用 cpu处理进程,当它让出处理器处理进程,当它让出处理器时,进程调度就再选另一作业的进程时,进程调度就再选另一作业的进程作业调度与进程调度相互配合,

32、实现作业的并行作业调度与进程调度相互配合,实现作业的并行作业调度与进程调度的例子作业调度与进程调度的例子 某系统采用不能移动已在内存中作业的可变分区方案管理内存某系统采用不能移动已在内存中作业的可变分区方案管理内存 供用户使用的内存空间为供用户使用的内存空间为100k100k,系统配有,系统配有4 4台磁带机台磁带机 一批作业如下图:一批作业如下图:作业作业 进入时间进入时间 估计估计 内存需要内存需要 磁带机需要磁带机需要 运行时间运行时间job1 10:00 25分钟分钟 15k 2台台job2 10:20 30分钟分钟 60k 1台台job3 10:30 10分钟分钟 50k 3台台jo

33、b4 10:35 20分钟分钟 10k 2台台job5 10:40 15分钟分钟 30k 2台台作业调度与进程调度(续作业调度与进程调度(续1) 该系统采用多道程序设计技术,对磁带机采用静态分配,忽略该系统采用多道程序设计技术,对磁带机采用静态分配,忽略设备工作时间和系统进行调度所共花的时间,请分别给出采设备工作时间和系统进行调度所共花的时间,请分别给出采用用“先来先服务调度算法先来先服务调度算法”和和“短作业优先算法短作业优先算法”选中作业选中作业执行的次序以及它们的平均周转时间。执行的次序以及它们的平均周转时间。 若允许移动已在主存储器中的作业,则作业被选中的次序又是若允许移动已在主存储器

34、中的作业,则作业被选中的次序又是怎样的呢?它们的平均周转时间又如何?怎样的呢?它们的平均周转时间又如何?n小结:小结: 作业调度前提:并行道数、资源满足作业调度前提:并行道数、资源满足 进程调度进程调度作业调度与进程调度(续作业调度与进程调度(续2)8、批处理作业的控制、批处理作业的控制n当作业为执行态时,作业调度程序为其建立一作业控当作业为执行态时,作业调度程序为其建立一作业控制进程制进程, , 由该进程控制作业运行由该进程控制作业运行n作业控制进程:主要负责控制作业的运行,具体解释作业控制进程:主要负责控制作业的运行,具体解释执行作业说明书的每一个作业步,并创建子进程来完执行作业说明书的每

35、一个作业步,并创建子进程来完成相应步骤成相应步骤n一个作业步的处理:一个作业步的处理:(1 1)建立子进程)建立子进程(2 2)为其申请资源)为其申请资源(3 3)访问该作业的)访问该作业的jcbjcb(4 4)释放占有资源)释放占有资源(5 5)撤消子进程等)撤消子进程等n作业控制程序只有一个作业控制程序只有一个 对应每一处于执行状态的作业有一作业控制进程对应每一处于执行状态的作业有一作业控制进程9、作业退出、作业退出 把输出结果送到输出设备上(启动缓输出进程完成)把输出结果送到输出设备上(启动缓输出进程完成) 回收各种资源回收各种资源10、spooling系统工作原理系统工作原理全称:全称

36、:simultaneous peripheral operations simultaneous peripheral operations on-lineon-line含义:含义:同时的外围设备联机操作(假脱机技术)同时的外围设备联机操作(假脱机技术)包括:包括:n输入程序模块输入程序模块n输出程序模块输出程序模块n作业调度程序作业调度程序作业和进程的状态转换图作业和进程的状态转换图数据数据进入状态进入状态退出状态退出状态后备状态后备状态运行状态运行状态作业控制进程作业控制进程 输入设备输入设备数据数据源程序源程序输出设备输出设备作业说作业说明书明书输输入入井井运行运行等待等待就绪就绪输输出

37、出井井输输入入程程序序输输出出程程序序作作业业调调度度进程进程调度调度spooling系统工作原理(续系统工作原理(续1)n作业执行前用慢速设备将作业预先输入到后援存储器(如磁作业执行前用慢速设备将作业预先输入到后援存储器(如磁盘、磁鼓,称为输入井)中,称为预输入盘、磁鼓,称为输入井)中,称为预输入n作业运行后,使用数据时,从输入井中取出作业运行后,使用数据时,从输入井中取出n作业执行不必直接启动外设输出数据,只需将这些数据写入作业执行不必直接启动外设输出数据,只需将这些数据写入输出井中输出井中n作业全部运行完毕,再由外设输出全部数据和信息,称为缓作业全部运行完毕,再由外设输出全部数据和信息,

38、称为缓输出输出实现了对作业输入、组织调度和输出的统一管理实现了对作业输入、组织调度和输出的统一管理n使外设在使外设在cpucpu直接控制下,与直接控制下,与cpucpu并行工作(称为假脱机)并行工作(称为假脱机)spooling系统工作原理(续系统工作原理(续2)输入装置输入装置输出装置输出装置通通道道通通道道输出装置输出装置输出装置输出装置通通 道道 主机系统主机系统输入管输入管 输出管输出管理模块理模块 理模块理模块外外 设设输入井输入井 输出井输出井 spooling系统系统spooling系统工作原理(续系统工作原理(续3)三、三、 交互式系统的作业管理交互式系统的作业管理1 1、概述

39、、概述(1 1)命令接口)命令接口 在操作系统与计算机用户之间提供易于理解的双向通信机制在操作系统与计算机用户之间提供易于理解的双向通信机制基本任务:基本任务:n解释命令,传送命令以便执行解释命令,传送命令以便执行n接收系统信息,提交给用户(以响应语言的形式)接收系统信息,提交给用户(以响应语言的形式)包括:包括:一组联机命令,终端处理程序,命令解释程序一组联机命令,终端处理程序,命令解释程序n交互式命令的接口复杂交互式命令的接口复杂 含功能结构,可能问题的处理,如各种约定、前端处理、命含功能结构,可能问题的处理,如各种约定、前端处理、命令日志、命令注解、宏命令及命令组等令日志、命令注解、宏命

40、令及命令组等n用户与操作系统的通信通过一个用户与操作系统的通信通过一个输入输入/ /输出装置输出装置来实现来实现ni/o装置装置 是是 显示终端和键盘显示终端和键盘 输入通过键盘:在有的系统中,可通过指示装置(例如鼠输入通过键盘:在有的系统中,可通过指示装置(例如鼠标)输入标)输入 系统输入呈现在显示屏幕上,一次显示若干正文行系统输入呈现在显示屏幕上,一次显示若干正文行 (某些系统中,提供图形显示功能)(某些系统中,提供图形显示功能)n不管哪种不管哪种i/o方式,终端装置是由方式,终端装置是由终端处理程序终端处理程序管理和控制管理和控制2、终端处理程序、终端处理程序n终端处理程序提供的输入输出

41、方式对整个用户命令接口有终端处理程序提供的输入输出方式对整个用户命令接口有重大影响,也确定了用户与其应用程序之间的通信方式重大影响,也确定了用户与其应用程序之间的通信方式n终端处理程序必须作为用户接口的一个组成部分来考虑终端处理程序必须作为用户接口的一个组成部分来考虑 即,即,直接影响命令接口的一些问题直接影响命令接口的一些问题须由终端处理程序解决须由终端处理程序解决终端处理程序(续终端处理程序(续1)直接影响命令接口的一些问题直接影响命令接口的一些问题(a a)回送显示(回送显示(echoingechoing)n通常,每从键盘打入一个字符,终端处理程序回送响应通常,每从键盘打入一个字符,终端

42、处理程序回送响应的字符到显示屏上的字符到显示屏上n有时用户要求其显示一个不同的字符或不显示(例如,有时用户要求其显示一个不同的字符或不显示(例如,用户键入口令时)用户键入口令时)n对于通过远程通信线路访问的终端,可能需要抑制这种对于通过远程通信线路访问的终端,可能需要抑制这种回送回送n委托给远程终端实现回送显示委托给远程终端实现回送显示终端处理程序(续终端处理程序(续2)(b b)提前打入(提前打入(type aheadtype ahead) 假定输入字符在一程序准备处理它们之前打入,则假定输入字符在一程序准备处理它们之前打入,则由由“提前打入进程提前打入进程”把它们保存在缓冲区中把它们保存在

43、缓冲区中 缓冲区容量是有限,当其存满后,再有输入时,或缓冲区容量是有限,当其存满后,再有输入时,或者漏掉,或者将破坏缓冲区原有的内容者漏掉,或者将破坏缓冲区原有的内容(c c)字符变换字符变换 有些情况下,需要对打入的字符进行代码变换有些情况下,需要对打入的字符进行代码变换 如,把小写字母转换成大写字母,或者反之如,把小写字母转换成大写字母,或者反之终端处理程序(续终端处理程序(续3)(d d)行缓冲行缓冲 打入的字符在送到程序前,由终端接口保存,直到整个打入的字符在送到程序前,由终端接口保存,直到整个命令行打入为止命令行打入为止 为用户提供了校验、编辑,甚至取消命令的机会为用户提供了校验、编

44、辑,甚至取消命令的机会(e e)中断字符(中断字符(break charactersbreak characters) 多数交互式命令接口可以接受一些称为中断字符的特殊多数交互式命令接口可以接受一些称为中断字符的特殊字符,并立即采取相应的行动字符,并立即采取相应的行动 如,在许多系统中,同时打入如,在许多系统中,同时打入ctrl-cctrl-c键,立即终止当前键,立即终止当前程序执行,并使命令处理程序重新初始化程序执行,并使命令处理程序重新初始化终端处理程序(续终端处理程序(续4)3、命令解释程序、命令解释程序对命令有两种处理方法:对命令有两种处理方法:(a a)由命令解释程序直接处理由命令解

45、释程序直接处理 在没有创建子进程功能的系统中在没有创建子进程功能的系统中 终端命令通常由对应的命令解释程序处理终端命令通常由对应的命令解释程序处理 在这种系统中,只有一个进程对应一个终端用户在这种系统中,只有一个进程对应一个终端用户(b b)由子进程代为处理由子进程代为处理n在具有创建子进程功能的系统中,对于较为单纯的命令,在具有创建子进程功能的系统中,对于较为单纯的命令,如列目录,拷贝文件等,命令解释程序本身便能完成,此如列目录,拷贝文件等,命令解释程序本身便能完成,此时由命令解释程序直接处理时由命令解释程序直接处理n对较复杂命令,如对于对较复杂命令,如对于c c源程序进行编译,命令解释程序

46、本源程序进行编译,命令解释程序本身不能处理,此时创建一个子进程,并由该子进程运行身不能处理,此时创建一个子进程,并由该子进程运行c c编编译程序译程序4、命令接口、命令接口命令接口由命令处理器来实现命令接口由命令处理器来实现n命令处理器的实现方式:命令处理器的实现方式:(a a)作为)作为osos的一个部分的一个部分 如,如,os/mvtos/mvt或或vax/vmsvax/vms(b b)作为)作为osos的一个独特模块,能方便地修改或替换的一个独特模块,能方便地修改或替换 如,如,rt-11rt-11或或cp/mcp/m(c c)作为一易于被替换的普通程序)作为一易于被替换的普通程序 如,

47、如,unixunix操作系统操作系统 (d) (d) 在某些系统中,可能用专门设计的命令接口替代标准在某些系统中,可能用专门设计的命令接口替代标准的命令接口的命令接口 如,多用户如,多用户unixunix,用户可有不同命令接口,用户可有不同命令接口5、命令语言、命令语言命令语言规定由命令语言规定由osos执行的一系列操作执行的一系列操作n在一般的命令语言中,用户通过打入称为命令行的一行在一般的命令语言中,用户通过打入称为命令行的一行指令来规定每一个动作指令来规定每一个动作n每一命令行以命令开始,它标识所要执行的操作每一命令行以命令开始,它标识所要执行的操作n大多数命令是用运行一个程序来执行所请

48、求的操作大多数命令是用运行一个程序来执行所请求的操作 多数命令行中要给出一些参数多数命令行中要给出一些参数, , 每一命令语句实际上是每一命令语句实际上是带有参数的一个过程调用带有参数的一个过程调用一种命令语言通常提供几类命令:一种命令语言通常提供几类命令:(1 1)系统访问命令)系统访问命令登录命令,如,登录命令,如,loginlogin等等撤离命令,如,撤离命令,如,logoutlogout等等(2 2)文件管理命令)文件管理命令(3 3)编辑、编译和执行命令)编辑、编译和执行命令(4 4)询问命令)询问命令(5 5)操作员专用命令)操作员专用命令命令语言(续命令语言(续1) 命令行:规定

49、由操作系统执行的一系列操作命令行:规定由操作系统执行的一系列操作n命令行命令行:一行可有一个或多个命令,每次一行,包含一个或:一行可有一个或多个命令,每次一行,包含一个或多个命令。多个命令。nshell给出提示符时可输入,以回车键提交。如:给出提示符时可输入,以回车键提交。如:n“ls -a -l”列出当前目录文件列表;列出当前目录文件列表;ngunzip mp1.tar.gz; tar -xvf mp1.tar; rm -r -f mp1.tar为为解压缩后再展开。解压缩后再展开。n命令格式命令格式:一个命令可有命令:一个命令可有命令参数参数,格式包括选项,格式包括选项/开关开关 (opti

50、on/switch)或参数或参数(argument)。n如如unix系统:系统: cp -r doc /tmpargv0, argv1, .(含(含子目录的文件复制:子目录的文件复制:/tmp为目标地址)为目标地址)命令语言(续命令语言(续2)n命令分类命令分类:内部命令和外部命令:内部命令和外部命令n内部命令:内部命令:直接由直接由shell本身完成本身完成,功能简单、使用频繁;,功能简单、使用频繁;如:如:dos的的copy命令。命令。n外部命令:运行相应的外部命令:运行相应的可执行文件可执行文件,在使用时加载。如:,在使用时加载。如:dos的的xcopy命令命令n命令简化命令简化:利用:

51、利用参数替换参数替换可简化命令输入,通配符可简化命令输入,通配符(?, *)用于用于匹配一组文件名匹配一组文件名n如:如:unix的的cp命令:当前目录上有两个命令:当前目录上有两个1.tar和和2.tar时,时,cp *.tar /tmp等同于等同于cp 1.tar /tmp; cp 2.tar /tmp命令语言(续命令语言(续3)n命令的附加功能命令的附加功能 命令的附加功能用以扩大命令的功能性、选择性、适命令的附加功能用以扩大命令的功能性、选择性、适应性。包括:应性。包括:(1)参数与变量)参数与变量 位置变量位置变量 关键字变量关键字变量(2)命令通配符)命令通配符(3)重定向)重定向

52、(4)管道与过滤器)管道与过滤器命令语言(续命令语言(续4)批处理命令:批处理命令:针对脱机用户操作和大量顺序操作功能而设计针对脱机用户操作和大量顺序操作功能而设计 批处理命令可以是专门的命令,也可是系统的批处理命令可以是专门的命令,也可是系统的基本命令;还有有关的语法结构,循环、分支、基本命令;还有有关的语法结构,循环、分支、转移、判别等,构成一套特殊的命令语言转移、判别等,构成一套特殊的命令语言6、命令文件、命令文件命令文件(续)命令文件(续)n提前写出命令并存入文件,称之为命令文件提前写出命令并存入文件,称之为命令文件n命令文件提供了一种把一系列命令组装成文件的方法,然命令文件提供了一种

53、把一系列命令组装成文件的方法,然后用文件名作为命令名执行另外一系列命令后用文件名作为命令名执行另外一系列命令n特点:特点:(1 1)接受参数、变量,宏变量替换)接受参数、变量,宏变量替换(2 2)允许嵌套形式调用其他命令文件)允许嵌套形式调用其他命令文件(3 3)允许参数来自终端的命令文件本身)允许参数来自终端的命令文件本身(4 4)允许执行显示到终端、存入文件或送入打印机)允许执行显示到终端、存入文件或送入打印机(5 5)允许命令加入注释)允许命令加入注释(6 6)出错时允许用户干预)出错时允许用户干预(7 7)可把输入传给程序,可有循环、分支、转移等)可把输入传给程序,可有循环、分支、转移

54、等时间片轮转:时间片轮转:n在操作系统控制下,采用在操作系统控制下,采用“时间片轮转时间片轮转”方法使方法使每个终端作业都能在一个每个终端作业都能在一个“时间片时间片”内占用处理内占用处理器器n时间片用完,让出处理器给另一个终端作业时间片用完,让出处理器给另一个终端作业n保证从终端用户输入命令到计算机系统给出应答保证从终端用户输入命令到计算机系统给出应答 为几秒钟时间,使终端用户感到满意为几秒钟时间,使终端用户感到满意7、交互式系统实例、交互式系统实例分时系统分时系统分时系统用户控制作业执行的四个阶段:分时系统用户控制作业执行的四个阶段:n终端的连接终端的连接n用户登录用户登录n控制作业执行控

55、制作业执行n用户退出用户退出交互式系统实例交互式系统实例分时系统(续分时系统(续1)(1)终端的连接)终端的连接必须使终端设备与计算机系统在线路上接通必须使终端设备与计算机系统在线路上接通n近程终端是直接与计算机系统连接的,当终端设备加电后,近程终端是直接与计算机系统连接的,当终端设备加电后,终端就与计算机系统在线路上接通了终端就与计算机系统在线路上接通了n远程终端通过租用专线或交换线接到计算机系统,在终端远程终端通过租用专线或交换线接到计算机系统,在终端加电后用户还需通过电话拨号进行呼叫,直到接通加电后用户还需通过电话拨号进行呼叫,直到接通当终端与计算机系统在线路上接通后,计算机系统会在终端

56、当终端与计算机系统在线路上接通后,计算机系统会在终端上显示信息告诉用户上显示信息告诉用户交互式系统实例交互式系统实例分时系统(续分时系统(续2)(2)用户登录)用户登录用户必须向系统登录用户必须向系统登录n用户首先输入用户首先输入“登录登录”命令(命令(logonlogon)命令)命令 系统会向询问用户名、作业名、口令和资源需求等系统会向询问用户名、作业名、口令和资源需求等 经过识别用户、核对口令,系统在终端上显示经过识别用户、核对口令,系统在终端上显示“已登录已登录”和进入系统的时间等信息和进入系统的时间等信息n若口令不对或资源暂时不能满足时,则系统在终端上显示若口令不对或资源暂时不能满足时

57、,则系统在终端上显示“登录不成功登录不成功”并给出登录失败的原因并给出登录失败的原因用户的登录过程可看作是对终端作业的作业调度用户的登录过程可看作是对终端作业的作业调度交互式系统实例交互式系统实例分时系统(续分时系统(续3)(3)控制作业执行)控制作业执行登录成功的终端用户登录成功的终端用户n可从终端上输入作业的程序和数据可从终端上输入作业的程序和数据n使用系统提供的命令语言或会话语句控制作业执行使用系统提供的命令语言或会话语句控制作业执行每输入一命令或一会话语句后,由系统解释执行每输入一命令或一会话语句后,由系统解释执行且在终端上显示执行成功或问题且在终端上显示执行成功或问题由用户决定下一步

58、命令或会话由用户决定下一步命令或会话直到作业完成直到作业完成交互式系统实例交互式系统实例分时系统(续分时系统(续4)(4)用户退出)用户退出用户输入用户输入“退出退出”命令(命令(logoff logoff 命令)请求退出系统命令)请求退出系统系统接收命令后就收回该用户所占的资源让其退出系统接收命令后就收回该用户所占的资源让其退出同时在终端上显示同时在终端上显示“退出时间退出时间”或或“使用系统时间使用系统时间交互式系统实例交互式系统实例分时系统(续分时系统(续5)8、图形用户接口、图形用户接口gui命令行方式:要求用户命令行方式:要求用户记忆命令格式记忆命令格式图形用户接口方式:用户可利用鼠

59、标对屏幕上的图形用户接口方式:用户可利用鼠标对屏幕上的图标图标进行操作进行操作,完成与操作系统的交互,从而减少记忆内,完成与操作系统的交互,从而减少记忆内容,方便用户使用。容,方便用户使用。图形用户接口图形用户接口的技术基础:的技术基础:高分辩显示器和鼠标高分辩显示器和鼠标(1)窗口系统()窗口系统(window system)的特点)的特点n利用图形元素表示功能利用图形元素表示功能:将各种图形元素显示在屏幕上,:将各种图形元素显示在屏幕上,用户可以通过操纵图形元素(如菜单、图标)来执行相应用户可以通过操纵图形元素(如菜单、图标)来执行相应的功能的功能n同屏多窗口与并发进程相对应同屏多窗口与并

60、发进程相对应:屏幕上同时显示多个窗口;:屏幕上同时显示多个窗口;一个进程可以对应一个或多个窗口;窗口动态创建、改变、一个进程可以对应一个或多个窗口;窗口动态创建、改变、撤销撤销 交互的并发性好、传递信息量大交互的并发性好、传递信息量大n输入方式输入方式:鼠标鼠标指针点击(或其他定位设备)和指针点击(或其他定位设备)和键盘键盘输入;输入;通常是通常是即时交互即时交互n一致的图形元素风格一致的图形元素风格可方便用户学习和使用:如按钮、滚可方便用户学习和使用:如按钮、滚动条动条图形用户接口图形用户接口gui(续(续1)(2)窗口系统的图形元素及其状态)窗口系统的图形元素及其状态n窗口:窗口:屏幕上的

温馨提示

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

评论

0/150

提交评论