[精选]操作系统教程(第二版)第3章 用户接口与作业管理.pptx

上传人:茅**** 文档编号:87836147 上传时间:2023-04-18 格式:PPTX 页数:105 大小:545.41KB
返回 下载 相关 举报
[精选]操作系统教程(第二版)第3章 用户接口与作业管理.pptx_第1页
第1页 / 共105页
[精选]操作系统教程(第二版)第3章 用户接口与作业管理.pptx_第2页
第2页 / 共105页
点击查看更多>>
资源描述

《[精选]操作系统教程(第二版)第3章 用户接口与作业管理.pptx》由会员分享,可在线阅读,更多相关《[精选]操作系统教程(第二版)第3章 用户接口与作业管理.pptx(105页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第三章第三章 用户接口与作业管理用户接口与作业管理1.作业级接口作业级接口 操作系统为用户对作业运行全过程控制提供的功能操作系统为用户对作业运行全过程控制提供的功能1 联机接口交互式联机接口交互式2 脱机接口脱机接口一、用户与操作系统的接口一、用户与操作系统的接口n作业级接口作业级接口n程序级接口程序级接口系统为用户在程序一级提供有关效劳而设置系统为用户在程序一级提供有关效劳而设置由一组系统调用命令组成由一组系统调用命令组成n负责管理和控制运行的程序负责管理和控制运行的程序n并在这些程序与系统控制的资源和提供的效劳间实并在这些程序与系统控制的资源和提供的效劳间实现交互作用现交互作用n用汇编语言

2、:在程序中直接用系统调用命令用汇编语言:在程序中直接用系统调用命令n用高级语言:可在编程时使用过程调用语句用高级语言:可在编程时使用过程调用语句2.程序级接口程序级接口二、批处理系统作业处理二、批处理系统作业处理1.1.作业的基本概念作业的基本概念1 1作业作业 用户在一次计算过程中,或者一次事务处理过程中,要求计用户在一次计算过程中,或者一次事务处理过程中,要求计算机系统所做工作的总称算机系统所做工作的总称2 2作业步作业步 一个作业可划分成假设干局部,称为一个作业步一个作业可划分成假设干局部,称为一个作业步 典型的作业控制过程:典型的作业控制过程:“编译、编译、“连接装配、连接装配、“运行

3、运行3 3作业流作业流4 4典型的作业步典型的作业步编译编译连接装配连接装配运行运行目标目标程序程序段段目标目标程序程序源程序源程序输入数据输入数据子程序子程序库函数库函数动态库函数动态库函数计算结果计算结果1.1.作业的基本概念作业的基本概念续续1 12.批处理作业控制语言与作业说明书批处理作业控制语言与作业说明书1 1作业控制语言作业控制语言n用户用于描述批处理作业处理过程控制意图的用户用于描述批处理作业处理过程控制意图的一种特殊程序一种特殊程序n书写作业说明书的语言称为作业控制语言书写作业说明书的语言称为作业控制语言JCLJCL2作业控制语言的类别作业控制语言的类别 包括:包括:I/OI

4、/O命令、编译命令、操作命令以及命令、编译命令、操作命令以及条件命令等条件命令等3作业说明书作业说明书表达用户对作业的控制意图表达用户对作业的控制意图内容:内容:n作业的基本描述作业的基本描述n作业控制描述作业控制描述n资源要求描述资源要求描述2.批处理作业控制语言与作业说明书批处理作业控制语言与作业说明书续续3.作业控制块与作业表作业控制块与作业表1作业控制块作业控制块JCB:Job Control Blockn作业控制块是批处理作业存在的标志作业控制块是批处理作业存在的标志n保存有系统对于作业进行管理所需要的全部信保存有系统对于作业进行管理所需要的全部信息息n位于磁盘区域中位于磁盘区域中2

5、作业控制块的内容作业控制块的内容 作业控制块中所包含的信息数量及内容因作业控制块中所包含的信息数量及内容因系统而异系统而异n较简单的系统较简单的系统n较复杂的系统较复杂的系统 3.作业控制块与作业表作业控制块与作业表续续1作业标知作业标知用户名称用户名称用户帐号用户帐号调度信息调度信息资源需求资源需求作业状态作业状态作业类别作业类别输入井地址输入井地址输出井地址输出井地址进入系统时间进入系统时间开始处理时间开始处理时间作业完成时间作业完成时间作业退出时间作业退出时间资源使用情况资源使用情况 作业控制块作业控制块JCB3.作业控制块与作业表作业控制块与作业表续续23 3作业控制块的建立作业控制块

6、的建立 当作业开始由输入设备向磁盘的输入井传输时当作业开始由输入设备向磁盘的输入井传输时 系统输入程序为其建立一个作业控制块系统输入程序为其建立一个作业控制块 进行初始化进行初始化 初始化的大局部信息取自作业说明书初始化的大局部信息取自作业说明书 3.作业控制块与作业表作业控制块与作业表续续34作业控制块的使用作业控制块的使用需要访问作业控制块的程序需要访问作业控制块的程序n系统输入程序系统输入程序n作业调度程序作业调度程序n作业控制程序作业控制程序n系统输出程序等系统输出程序等3.作业控制块与作业表作业控制块与作业表续续45 5作业控制块的撤消作业控制块的撤消作业完成后,其作业控制块由系统输

7、出程序撤消作业完成后,其作业控制块由系统输出程序撤消作业控制块被撤消后其作业也不复存在作业控制块被撤消后其作业也不复存在3.作业控制块与作业表作业控制块与作业表续续56作业表作业表每个作业有个作业控制块每个作业有个作业控制块n所有作业所有作业JCBJCB构成一个作业表构成一个作业表n作业表存放在外存固定区域中,长度是固定作业表存放在外存固定区域中,长度是固定n限制了系统所能同时容纳的作业数量限制了系统所能同时容纳的作业数量 系统输入程序、作业调度程序、系统输出程序都需要访问系统输入程序、作业调度程序、系统输出程序都需要访问作业表作业表 因而存在互斥问题因而存在互斥问题JCB1 JCB2 JCB

8、i JCBn 作业表作业表3.作业控制块与作业表作业控制块与作业表续续64.批处理作业的状态及转换批处理作业的状态及转换一个作业从进入系统到运行结束一个作业从进入系统到运行结束经历四个不同的状态:经历四个不同的状态:“进入进入“后备后备“运行运行“完成完成 作业和进程的状态转换图作业和进程的状态转换图数据数据进入状态进入状态退出状态退出状态后备状态后备状态运行状态运行状态作业控制进程作业控制进程 输入设备输入设备数据数据源程序源程序输出设备输出设备作业说作业说明书明书输输入入井井运行运行等待等待就绪就绪输输出出井井输输入入程程序序输输出出程程序序作作业业调调度度进程进程调度调度4.批处理作业的

9、状态及转换批处理作业的状态及转换续续11运行状态的作业运行状态的作业三种状态:三种状态:n就绪状态就绪状态n执行状态执行状态n阻塞状态阻塞状态4.批处理作业的状态及转换批处理作业的状态及转换续续25.作业的建立作业的建立一个作业建立过程的两个子过程:一个作业建立过程的两个子过程:n作业的输入作业的输入nJCBJCB的建立的建立 作业控制块作业控制块JCBJCB和作业:一一对应关系和作业:一一对应关系1作业的输入作业的输入 将作业程序、数据和作业说明书从输入设备例将作业程序、数据和作业说明书从输入设备例如键盘输入到外存,并形成初始信息如键盘输入到外存,并形成初始信息作业输入方式作业输入方式n联机

10、输入方式联机输入方式n脱机输入方式脱机输入方式nSPOOLingSPOOLing系统系统5.作业的建立作业的建立续续1 联机输入方式联机输入方式n用户和系统通过交互会话来输入作业用户和系统通过交互会话来输入作业n外围设备直接和主机连接外围设备直接和主机连接 脱机输入方式脱机输入方式 为了解决单台设备联机输入时的为了解决单台设备联机输入时的CPU浪费问题浪费问题5.作业的建立作业的建立续续22JCB的建立的建立在系统把作业信息输入到输入井之后在系统把作业信息输入到输入井之后根据作业说明书和有关作业信息在外存的位置等根据作业说明书和有关作业信息在外存的位置等建立作业控制表建立作业控制表JCBJCB

11、JCBJCB包含对作业进行管理所必须的信息包含对作业进行管理所必须的信息nJCBJCB表的数量是一个常数表的数量是一个常数n外存输入井的大小有限外存输入井的大小有限 只有在获得只有在获得JCBJCB表项和足够输入井空间后表项和足够输入井空间后作业才可能创立成功作业才可能创立成功5.作业的建立作业的建立续续36.批处理作业的调度批处理作业的调度主要功能:主要功能:n审查系统能否满足用户作业的资源要求审查系统能否满足用户作业的资源要求 只要通过调用相应的资源管理程序的有关局部只要通过调用相应的资源管理程序的有关局部 审核其表中是否能满足作业说明书中的要求即可审核其表中是否能满足作业说明书中的要求即

12、可n按照一定的算法从输入井中的后备作业中选取作业按照一定的算法从输入井中的后备作业中选取作业 调度的关键在选择恰当的算法调度的关键在选择恰当的算法1调度算法评价调度算法评价调度实质上是一个策略问题调度实质上是一个策略问题设定的目标往往是相互冲突的设定的目标往往是相互冲突的 目标:目标:n单位时间内运行尽可能多的作业单位时间内运行尽可能多的作业n使处理机尽可能保持使处理机尽可能保持“忙碌忙碌n使各种使各种I/OI/O设备得以充分利用设备得以充分利用n对所有的作业都是公平合理的对所有的作业都是公平合理的6.批处理作业的调度批处理作业的调度续续1要设计一个理想的调度算法是一件十分困难的事要设计一个理

13、想的调度算法是一件十分困难的事在实际系统中,调度算法往往折衷考虑在实际系统中,调度算法往往折衷考虑设计调度算法时应考虑的因素:设计调度算法时应考虑的因素:n调度算法应与系统设计目标保持一致调度算法应与系统设计目标保持一致n注意系统资源均衡使用注意系统资源均衡使用n保证提交的作业在截止时间内完成保证提交的作业在截止时间内完成n设法缩短作业平均周转时间设法缩短作业平均周转时间大多数操作系统都采用比较简单的调度算法大多数操作系统都采用比较简单的调度算法6.批处理作业的调度批处理作业的调度续续2作业平均周转时间作业平均周转时间假定某一作业进入假定某一作业进入“输入井输入井的时间为的时间为SiSi提交时

14、间,到提交时间,到达时间,它被选中执行,得到计算结果的时间为达时间,它被选中执行,得到计算结果的时间为EiEi完成时间它的周转时间为完成时间它的周转时间为Ti Ti Ei Ei Si Si 则作业平均周转时间为:则作业平均周转时间为:T T n n为被测定作业流中的作业数为被测定作业流中的作业数2调度算法性能的衡量调度算法性能的衡量6.批处理作业的调度批处理作业的调度续续3平均带权周转时间平均带权周转时间 带权周转时间带权周转时间W WT/r=T/r=周转时间周转时间/运行时间运行时间 W W ri ri 为某作业为某作业i i的实际执行时间的实际执行时间n T:衡量不同调度算法对同一个作业流

15、的性能:衡量不同调度算法对同一个作业流的性能n W:同一调度算法对不同作业流的性能衡量:同一调度算法对不同作业流的性能衡量 6.批处理作业的调度批处理作业的调度续续43系统进行作业调度的决策因素系统进行作业调度的决策因素n作业到达时间作业到达时间n预先为作业确定的优先级预先为作业确定的优先级系统可测定的其他因素:系统可测定的其他因素:n作业所需的作业所需的CPUCPU时间时间C Cn存储要求存储要求M Mn打印输出的行数打印输出的行数L Ln其他的资源要求其他的资源要求6.批处理作业的调度批处理作业的调度续续54常见的批处理作业调度算法常见的批处理作业调度算法n先来先效劳算法先来先效劳算法FC

16、FS:First e First Serven最短作业优先算法最短作业优先算法SJF:Shortest Job Firstn最高响应比优先算法最高响应比优先算法 HRN:Highest Response Ratio Next 响应比响应比响应比响应比R=R=作业周转时间作业周转时间作业周转时间作业周转时间 /作业处理时间作业处理时间作业处理时间作业处理时间 =作业处理时间作业处理时间作业处理时间作业处理时间+作业等待时间作业等待时间作业等待时间作业等待时间/作业处理时间作业处理时间作业处理时间作业处理时间 =1+=1+作业等待时间作业等待时间作业等待时间作业等待时间 /作业处理时间作业处理时间

17、作业处理时间作业处理时间6.批处理作业的调度批处理作业的调度续续6n基于优先数调度算法基于优先数调度算法 HPF:Highest Priority First a由用户规定优先数外部优先数由用户规定优先数外部优先数 用户提交作业时,根据急迫程度规定适当的优先数用户提交作业时,根据急迫程度规定适当的优先数 作业调度程序根据作业调度程序根据JCB优先数决定进入内存的次序优先数决定进入内存的次序 b由系统计算优先数内部优先数由系统计算优先数内部优先数例:可按如下公式计算作业的优先数:例:可按如下公式计算作业的优先数:优先数优先数 =用户规定优先数用户规定优先数 作业处理时间作业处理时间 +作业等待时

18、间作业等待时间 输出量输出量6.批处理作业的调度批处理作业的调度续续7n均衡调度算法均衡调度算法分类排队算法分类排队算法基本思想:基本思想:n根据系统运行情况和作业属性将作业分类根据系统运行情况和作业属性将作业分类n轮流从不同的作业类中挑选作业轮流从不同的作业类中挑选作业目标:目标:n力求均衡地利用各种系统资源,发挥资源使用效率力求均衡地利用各种系统资源,发挥资源使用效率n力求使用户满意力求使用户满意6.批处理作业的调度批处理作业的调度续续8例例1 1:将待处理作业分成如下队列:将待处理作业分成如下队列:队列队列1 1:计算量大的作业:计算量大的作业 队列队列2 2:I/OI/O量大的作业量大

19、的作业 队列队列3 3:计算量与:计算量与I/OI/O量均衡的作业量均衡的作业n调度时,在三个队列中各取一些作业调度时,在三个队列中各取一些作业在内存中的作业有的使用处理机在内存中的作业有的使用处理机有的使用外部设备有的使用外部设备n使得系统的各种资源能得到充分利用使得系统的各种资源能得到充分利用6.批处理作业的调度批处理作业的调度续续9例例2 2:将待处理作业分成如下三个队列:将待处理作业分成如下三个队列:队列队列1 1:长作业:长作业 队列队列2 2:中等长度作业:中等长度作业 队列队列3 3:短作业:短作业n调度时调度时取队列取队列1 1一作业,队列一作业,队列2 2一作业,队列一作业,

20、队列3 3一作业一作业n长作业用户和短作业用户均比较满意长作业用户和短作业用户均比较满意6.批处理作业的调度批处理作业的调度续续105作业调度算法应用例子作业调度算法应用例子1n假设在单道批处理环境下有四个作业,它们进入系统假设在单道批处理环境下有四个作业,它们进入系统的时间、估计运行时间的时间、估计运行时间 应用先来先效劳、最短作业优先和最高响应比优先作应用先来先效劳、最短作业优先和最高响应比优先作业调度算法,分别计算出作业的平均周转时间和带权业调度算法,分别计算出作业的平均周转时间和带权的平均周转时间的平均周转时间6.批处理作业的调度批处理作业的调度续续11先来先效劳调度算法计算结果先来先

21、效劳调度算法计算结果6.批处理作业的调度批处理作业的调度续续12最短作业优先作业算法计算结果最短作业优先作业算法计算结果6.批处理作业的调度批处理作业的调度续续13最高响应比优先作业算法计算结果最高响应比优先作业算法计算结果6.批处理作业的调度批处理作业的调度续续147多道程序对平均周转时间的影响多道程序对平均周转时间的影响作业流在多道环境下运行作业流在多道环境下运行n平均周转时间、带权平均周转时间平均周转时间、带权平均周转时间 比单道环境下都有明显改善比单道环境下都有明显改善n不是任意作业组合都能改善调度性能不是任意作业组合都能改善调度性能 有时甚至可能变坏有时甚至可能变坏6.批处理作业的调

22、度批处理作业的调度续续15例:四个各需两小时作业同时投入运行,例:四个各需两小时作业同时投入运行,I/OI/O等待时间均占等待时间均占25%25%,即占,即占CPUCPU时间各为时间各为1.51.5小时小时根据计算公式,根据计算公式,CPUCPU的空转率为的空转率为0 0采用简单轮转法调度,每小时各作业分别占用采用简单轮转法调度,每小时各作业分别占用25%25%的的CPUCPU时间,时间,算得该作业组合的平均周转时间约为算得该作业组合的平均周转时间约为6 6小时,而平均带权周小时,而平均带权周转时间约为转时间约为3 3但是,假设以单道程序方式运行:但是,假设以单道程序方式运行:n平均周转时间平

23、均周转时间T=T=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.56.批处理作业的调度批处理作业的调度续续167作业调度与进程调度作业调度与进程调度作业能否占用处理器?什么时间能够占用处理器?作业能否占用处理器?什么时间能够占用处理器?由进程调度来决定由进程调度来决定进程的初始状态为就绪状态进程的初始状态为就绪状态进程调度选择当前可占用进程调度选择当前可占用 CPU处理进程,当它让出处理器时,处理进程,当它让出处理器时,进程调度就再选另一作业的进程进程调度就再选另一作业的进程作业调度与进程调度相互

24、配合,实现作业的并行作业调度与进程调度相互配合,实现作业的并行8.批处理作业的控制批处理作业的控制n当作业为执行态时,作业调度程序为其建立一作业控当作业为执行态时,作业调度程序为其建立一作业控制进程制进程,由该进程控制作业运行由该进程控制作业运行n作业控制进程:主要负责控制作业的运行,具体解释作业控制进程:主要负责控制作业的运行,具体解释执行作业说明书的每一个作业步,并创立子进程来完执行作业说明书的每一个作业步,并创立子进程来完成相应步骤成相应步骤n一个作业步的处理:一个作业步的处理:1 1建立子进程建立子进程2 2为其申请资源为其申请资源3 3访问该作业的访问该作业的JCBJCB4 4释放占

25、有资源释放占有资源5 5撤消子进程等撤消子进程等n作业控制程序只有一个作业控制程序只有一个 对应每一处于执行状态的作业有一作业控制进程对应每一处于执行状态的作业有一作业控制进程9.作业退出作业退出把输出结果送到输出设备上启动缓输出进程完成把输出结果送到输出设备上启动缓输出进程完成回收各种资源回收各种资源10.SPOOLing系统工作原理系统工作原理全称:全称:Simultaneous Peripheral Operations Simultaneous Peripheral Operations On-LineOn-Line含义:含义:同时的外围设备联机操作假脱机技术同时的外围设备联机操作假脱

26、机技术包括:包括:n输入程序模块输入程序模块n输出程序模块输出程序模块n作业调度程序作业调度程序作业和进程的状态转换图作业和进程的状态转换图数据数据进入状态进入状态退出状态退出状态后备状态后备状态运行状态运行状态作业控制进程作业控制进程 输入设备输入设备数据数据源程序源程序输出设备输出设备作业说作业说明书明书输输入入井井运行运行等待等待就绪就绪输输出出井井输输入入程程序序输输出出程程序序作作业业调调度度进程进程调度调度10.SPOOLing系统工作原理系统工作原理续续110.SPOOLing系统工作原理续系统工作原理续2n作业执行前用慢速设备将作业预先输入到后援存储器如磁作业执行前用慢速设备将

27、作业预先输入到后援存储器如磁盘、磁鼓,称为输入井中,称为预输入盘、磁鼓,称为输入井中,称为预输入n作业运行后,使用数据时,从输入井中取出作业运行后,使用数据时,从输入井中取出n作业执行不必直接启动外设输出数据,只需将这些数据写入作业执行不必直接启动外设输出数据,只需将这些数据写入输出井中输出井中n作业全部运行完毕,再由外设输出全部数据和信息,称为缓作业全部运行完毕,再由外设输出全部数据和信息,称为缓输出输出实现了对作业输入、组织调度和输出的统一管理实现了对作业输入、组织调度和输出的统一管理n使外设在使外设在CPUCPU直接控制下,与直接控制下,与CPUCPU并行工作称为假脱机并行工作称为假脱机

28、输入装置输入装置输出装置输出装置通通道道通通道道输出装置输出装置输出装置输出装置通通 道道 主机系统主机系统输入管输入管 输出管输出管理模块理模块 理模块理模块外外 设设输入井输入井 输出井输出井 SPOOLing系统系统10.SPOOLing系统工作原理系统工作原理续续3三、三、交互式系统的作业管理交互式系统的作业管理1.1.概述概述1 1命令接口命令接口 在操作系统与计算机用户之间提供易于理解的双向通信机制在操作系统与计算机用户之间提供易于理解的双向通信机制基本任务:基本任务:n解释命令,传送命令以便执行解释命令,传送命令以便执行n接受系统信息,提交给用户以响应语言的形式接受系统信息,提交

29、给用户以响应语言的形式n交互式命令的接口复杂交互式命令的接口复杂 含功能结构,可能问题的处理,如各种约定、前端处理、命含功能结构,可能问题的处理,如各种约定、前端处理、命令日志、命令注解、宏命令及命令组等令日志、命令注解、宏命令及命令组等n交互式控制灵活方便,可以随时进行各种处理,排除问题,交互式控制灵活方便,可以随时进行各种处理,排除问题,方便调试;系统利用率低方便调试;系统利用率低n接口包括:一组联机命令,终端处理程序,命令解释程序接口包括:一组联机命令,终端处理程序,命令解释程序1.1.概述概述续续1 12终端处理程序终端处理程序n交互式命令接口:用户同操作系统的通信通过一个输入交互式命

30、令接口:用户同操作系统的通信通过一个输入/输输出装置来实现出装置来实现nI/O装置一般是显示终端装置一般是显示终端 输入通过键盘:在有的系统中,可通过指示装置例如鼠标输入通过键盘:在有的系统中,可通过指示装置例如鼠标输入输入 系统输入呈现在显示屏幕上,一次显示假设干正文行系统输入呈现在显示屏幕上,一次显示假设干正文行 某些系统中,提供图形显示功能某些系统中,提供图形显示功能n不管哪种不管哪种I/O方式,这个终端装置是由一个终端处理程序管方式,这个终端装置是由一个终端处理程序管理和控制理和控制1.1.概述概述续续2 2n终端处理程序提供的输入输出方式对整个用户命令接口有终端处理程序提供的输入输出

31、方式对整个用户命令接口有重大影响重大影响n也确定了用户与其应用程序之间的通信方式也确定了用户与其应用程序之间的通信方式n终端处理程序必须作为用户接口的一个组成局部来考虑终端处理程序必须作为用户接口的一个组成局部来考虑 即,直接影响命令接口的一些问题须由终端处理程序解决即,直接影响命令接口的一些问题须由终端处理程序解决1.1.概述概述续续3 33直接影响命令接口的一些问题直接影响命令接口的一些问题a a回送显示回送显示EchoingEchoing 通常,每从键盘打入一个字符,终端处理程序回送响应通常,每从键盘打入一个字符,终端处理程序回送响应的字符到显示屏上的字符到显示屏上 有时用户要求其显示一

32、个不同的字符或不显示例如,有时用户要求其显示一个不同的字符或不显示例如,用户键入口令时用户键入口令时 对于通过远程通信线路访问的终端,可能需要抑制这种对于通过远程通信线路访问的终端,可能需要抑制这种回送回送 回送显示委托给远程终端来实现回送显示委托给远程终端来实现1.1.概述概述续续4 4b b提前打入提前打入Type aheadType ahead 假定输入字符在一程序准备处理它们之前打入,则由假定输入字符在一程序准备处理它们之前打入,则由“提前打入进程提前打入进程把它们保存在缓冲区中把它们保存在缓冲区中 缓冲区容量是有限,当其存满后,再有输入时,或者漏掉,或者将破坏缓冲区容量是有限,当其存

33、满后,再有输入时,或者漏掉,或者将破坏缓冲区原有的内容缓冲区原有的内容c c字符变换字符变换 有些情况下,需要对打入的字符进行代码变换有些情况下,需要对打入的字符进行代码变换 如,把小写字母转换成大写字母,或者反之如,把小写字母转换成大写字母,或者反之d d行缓冲行缓冲 打入的字符在送到程序前,由终端接口保存,直到整个命令行打入为止打入的字符在送到程序前,由终端接口保存,直到整个命令行打入为止 为用户提供了校验、编辑,甚至取消命令的时机为用户提供了校验、编辑,甚至取消命令的时机3直接影响命令接口的一些问题续直接影响命令接口的一些问题续11.1.概述概述续续5 5e e中断字符中断字符Break

34、 CharactersBreak Characters 多数交互式命令接口可以接受一些称为中断字符的特多数交互式命令接口可以接受一些称为中断字符的特殊字符,并立即采取相应的行动殊字符,并立即采取相应的行动 如,在许多系统中,同时打入如,在许多系统中,同时打入CTRLCTRLC C字符键,立即终字符键,立即终止当前程序执行,并使命令处理程序重新初始化止当前程序执行,并使命令处理程序重新初始化3直接影响命令接口的一些问题续直接影响命令接口的一些问题续21.1.概述概述续续6 62.命令解释程序命令解释程序命令解释程序有两种处理方法:命令解释程序有两种处理方法:a a由终端命令解释程序直接处理由终端

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

36、序本源程序进行编译,命令解释程序本身不能处理,此时创立一个子进程,并由该子进程运行身不能处理,此时创立一个子进程,并由该子进程运行C C编编译程序译程序3.命令接口的结构命令接口的结构n命令接口由命令处理器来实现命令接口由命令处理器来实现n命令处理器的实现方式:命令处理器的实现方式:a a作为作为OSOS的一个局部的一个局部 如,如,OS/MVTOS/MVT或或VAX/VMSVAX/VMSb b作为作为OSOS的一个独特模块,能方便地修改或替换的一个独特模块,能方便地修改或替换 如,如,RT-11RT-11或或CP/MCP/Mc c作为一易于被替换的普通程序作为一易于被替换的普通程序 如,如,

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

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

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

40、ment。n如如UNIX系系统统:cp-r doc/tmpargv0,argv1,.含含子目子目录录的文件复制:的文件复制:/tmp为为目目标标地址地址4.命令语言续命令语言续3n命令分命令分类类:内部命令和外部命令:内部命令和外部命令n内部命令:直接由内部命令:直接由shell本身完成,功能本身完成,功能简单简单、使用、使用频频繁;繁;如:如:DOS的的copy命令。命令。n外部命令:运行相外部命令:运行相应应的可的可执执行文件,在使用行文件,在使用时时加加载载。如:。如:DOS的的xcopy命令命令n命令命令简简化:利用参数替化:利用参数替换换可可简简化命令化命令输输入,通配符入,通配符?

41、,*用用于匹配一于匹配一组组文件名文件名n如:如:UNIX的的cp命令:当前目命令:当前目录录上有两个上有两个1.tar和和2.tar时时,cp*.tar/tmp等同于等同于cp 1.tar/tmp;cp 2.tar/tmpn命令的附加功能命令的附加功能 命令的附加功能用以扩大命令的功能性、选择性、适命令的附加功能用以扩大命令的功能性、选择性、适应性。包括:应性。包括:1参数与变量参数与变量 位置变量位置变量 关键字变量关键字变量2命令通配符命令通配符3重定向重定向4管道与过滤器管道与过滤器4.命令语言续命令语言续4批处理命令:批处理命令:针对脱机用户操作和大量顺序操作功能而设计针对脱机用户操

42、作和大量顺序操作功能而设计 批处理命令可以是专门的命令,也可是系统的批处理命令可以是专门的命令,也可是系统的基本命令;还有有关的语法结构,循环、分支、基本命令;还有有关的语法结构,循环、分支、转移、判别等,构成一套特殊的命令语言转移、判别等,构成一套特殊的命令语言5命令文件命令文件5命令文件续命令文件续n提前写出命令并存入文件,称之为命令文件提前写出命令并存入文件,称之为命令文件n命令文件提供了一种把一系列命令组装成文件的方法,然命令文件提供了一种把一系列命令组装成文件的方法,然后用文件名作为命令名执行另外一系列命令后用文件名作为命令名执行另外一系列命令n特点:特点:1 1接受参数、变量,宏变

43、量替换接受参数、变量,宏变量替换2 2允许嵌套形式调用其他命令文件允许嵌套形式调用其他命令文件3 3允许参数来自终端的命令文件本身允许参数来自终端的命令文件本身4 4允许执行显示到终端、存入文件或送入打印机允许执行显示到终端、存入文件或送入打印机5 5允许命令参加注释允许命令参加注释6 6出错时允许用户干预出错时允许用户干预7 7可把输入传给程序,可有循环、分支、转移等可把输入传给程序,可有循环、分支、转移等时间片轮转:时间片轮转:n在在OSOS控制下,采用控制下,采用“时间片轮转时间片轮转方法使每个终端作业都方法使每个终端作业都能在一个能在一个“时间片时间片内去占用处理器内去占用处理器n当时

44、间片用完后,让出处理器给另一个终端作业当时间片用完后,让出处理器给另一个终端作业n这样,保证从终端用户输入命令到计算机系统给出应答这样,保证从终端用户输入命令到计算机系统给出应答 只是几秒钟的时间,使端用户感到满意只是几秒钟的时间,使端用户感到满意6.交互式系统实例交互式系统实例分时系统分时系统分时系统中的用户控制作业的执行大致有四个阶分时系统中的用户控制作业的执行大致有四个阶段:段:n终端的连接终端的连接n用户登录用户登录n控制作业执行控制作业执行n用户退出用户退出6.交互式系统实例交互式系统实例分时系统分时系统续续11 终端的连接终端的连接必须使终端设备与计算机系统在线路上接通必须使终端设

45、备与计算机系统在线路上接通n近程终端是直接与计算机系统连接的,当终端设备加电后,近程终端是直接与计算机系统连接的,当终端设备加电后,终端就与计算机系统在线路上接通了终端就与计算机系统在线路上接通了n远程终端通过租用专线或交换线接到计算机系统,在终端远程终端通过租用专线或交换线接到计算机系统,在终端加电后用户还需通过加电后用户还需通过 拨号进行呼叫,直到接通拨号进行呼叫,直到接通当终端与计算机系统在线路上接通后,计算机系统会在终端上当终端与计算机系统在线路上接通后,计算机系统会在终端上显示信息告诉用户显示信息告诉用户6.交互式系统实例交互式系统实例分时系统分时系统续续22 用户登录用户登录用户必

46、须向系统登录用户必须向系统登录n用户首先输入用户首先输入“登录登录命令命令LOGONLOGON命令命令 系统会向询问用户名、作业名、口令和资源需求等系统会向询问用户名、作业名、口令和资源需求等 经过识别用户、核对口令,系统在终端上显示经过识别用户、核对口令,系统在终端上显示“已登录已登录和和进入系统的时间等信息进入系统的时间等信息n假设口令不对或资源暂时不能满足时,则系统在终端上显假设口令不对或资源暂时不能满足时,则系统在终端上显示示“登录不成功登录不成功并给出登录失败的原因并给出登录失败的原因n用户的登录过程可看作是对终端作业的作业调度用户的登录过程可看作是对终端作业的作业调度6.交互式系统

47、实例交互式系统实例分时系统分时系统续续33 控制作业执行控制作业执行登录成功的终端用户登录成功的终端用户n可从终端上输入作业的程序和数据可从终端上输入作业的程序和数据n使用系统提供的命令语言或会话语句控制作业执行使用系统提供的命令语言或会话语句控制作业执行每输入一命令或一会话语句后,由系统解释执行每输入一命令或一会话语句后,由系统解释执行且在终端上显示执行成功或问题且在终端上显示执行成功或问题由用户决定下一步命令或会话由用户决定下一步命令或会话直到作业完成直到作业完成6.交互式系统实例交互式系统实例分时系统分时系统续续44 用户退出用户退出用户输入用户输入“退出退出命令命令LOGOFF LOG

48、OFF 命令请求退出系统命令请求退出系统系统接收命令后就收回该用户所占的资源让其退出系统接收命令后就收回该用户所占的资源让其退出同时在终端上显示同时在终端上显示“退出时间退出时间或或“使用系统时间使用系统时间6.交互式系统实例交互式系统实例分时系统分时系统续续5四四.系统调用系统调用1.1.系统调用简介系统调用简介系统调用,是用户在程序中调用操作系统所提供的一些子功能系统调用,是用户在程序中调用操作系统所提供的一些子功能n这是特殊的过程调用,由特殊的机器指令实现这是特殊的过程调用,由特殊的机器指令实现n这个指令还将系统转入管态这个指令还将系统转入管态系统调用程序是一个低级过程,只能由汇编语言直

49、接访问系统调用程序是一个低级过程,只能由汇编语言直接访问系统调用是操作系统提供给编程人员的唯一接口系统调用是操作系统提供给编程人员的唯一接口利用系统调用,动态请求和释放系统资源利用系统调用,动态请求和释放系统资源完成与硬件相关的工作以及控制程序的执行等完成与硬件相关的工作以及控制程序的执行等 每个操作系统都提供几百种系统调用,包括:外存文件与目每个操作系统都提供几百种系统调用,包括:外存文件与目录的读写,各种录的读写,各种I/O设备的使用,在程序中启动另一个程序,设备的使用,在程序中启动另一个程序,查询和统计系统资源使用情况等等查询和统计系统资源使用情况等等实际上系统调用语句本身是硬件提供的机

50、器指令,但其所实际上系统调用语句本身是硬件提供的机器指令,但其所调用的功能是操作系统提供的调用的功能是操作系统提供的每种机器的机器指令集中都有一条系统调用指令访管指令每种机器的机器指令集中都有一条系统调用指令访管指令1.1.系统调用简介系统调用简介续续1 1汇编程序例子:打印汇编程序例子:打印5个字符个字符 方法方法1:调用:调用DOS功能功能 MOVE A,PARA1 MOVE B,PARA2 INT 21H系统调用的例子系统调用的例子-11.1.系统调用简介系统调用简介续续2 2 高级语言例子:打印高级语言例子:打印5个字符个字符 char buff4=“abcde;fori=4;i=0;

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

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁