操作系统-课件-第2章 用户接口与作业管理_第1页
操作系统-课件-第2章 用户接口与作业管理_第2页
操作系统-课件-第2章 用户接口与作业管理_第3页
操作系统-课件-第2章 用户接口与作业管理_第4页
操作系统-课件-第2章 用户接口与作业管理_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

1、TSINGHUA UNIVERSITY PRESSTSINGHUA UNIVERSITY PRESSTSINGHUA UNIVERSITY PRESS NOTE BOOK Operating SystemOperating System第第2章章 用户接口用户接口作业管理作业管理2.2 2.2 作业的基本概念作业的基本概念2.3 2.3 批处理作业控制批处理作业控制2.4 2.4 调度算法调度算法2.5 2.5 交互式作业控制交互式作业控制2.12.1 操作系统提供的用户接口操作系统提供的用户接口 2.6 2.6 作业控制语言简介作业控制语言简介 NOTE BOOK Operating Sys

2、temOperating Systeml System callsA system call is an interface between a user-space application and a service that the kernel provides. Because the service is provided in the kernel, a direct call cannot be performed; instead, you must use a process of crossing the user-space/kernel boundary. The wa

3、y you do this differs based on the particular architecture. 2.1 User interfaces provided in OS NOTE BOOK Operating SystemOperating System2.1 User interfaces provided in OS NOTE BOOK Operating SystemOperating SystemlGraphical User InterfacesModern personal computers have all moved away from command-l

4、ine interfaces and created graphical user interfaces (GUI). In a GUI, there are menus or pictorial displays showing all programs that you can run and files that you can access. A pointing device (usually a mouse) is used to select items from the menus or displays Let us examine these three aspects o

5、f Man-Computer Interface in turn2.1 User interfaces provided in OS NOTE BOOK Operating SystemOperating System2.1 操作系统提供的用户接口操作系统提供的用户接口2.1.1 2.1.1 程序接口与系统调用程序接口与系统调用 2.1.2 2.1.2 操作接口与系统程序操作接口与系统程序 NOTE BOOK Operating SystemOperating System2.1.1 程序接口与系统调用程序接口与系统调用 用户如何利用用户如何利用/使用操作使用操作系统就是接口问题,操系统就是接

6、口问题,操作系统可以提供两种接作系统可以提供两种接口方式:口方式:n 程序接口程序接口n 操作接口操作接口操作系统裸机裸机用户用户/ /操作者操作者 操作接口操作接口( (操作命令操作命令/JCL/JCL)程序接口程序接口(系统调用)(系统调用) NOTE BOOK Operating SystemOperating System2.1.1 程序接口与系统调用程序接口与系统调用p函数库与系统调用函数库与系统调用 系统调用是为扩充机器功能而建立,两种层次:系统调用是为扩充机器功能而建立,两种层次:n汇编语言指令汇编语言指令看成是扩展的机器指令,如看成是扩展的机器指令,如inter 80 x86上

7、的上的 int n 软中断系统调用汇编指令软中断系统调用汇编指令n函数调用函数调用库函数中函数调用,例如库函数中函数调用,例如C库函数库函数fopen()就是通过就是通过open()系统调用来实现的系统调用来实现的 , open()是个系统调用(以库函数形式存在)是个系统调用(以库函数形式存在) 有很大一部分库函数是不需要系统调用就可有很大一部分库函数是不需要系统调用就可以实现的,如像一些抽象的数学计算库函数以实现的,如像一些抽象的数学计算库函数 NOTE BOOK Operating SystemOperating System2.1.1 程序接口与系统调用程序接口与系统调用 程序设计语言程

8、序设计语言(如如 C)中,提供一些与各系统调用对中,提供一些与各系统调用对应的库函数,程序中可通过库函数来使用系统调用应的库函数,程序中可通过库函数来使用系统调用图图2.2 Unix/Linux 2.2 Unix/Linux 系统程序、库函数、系统调用分层关系系统程序、库函数、系统调用分层关系用户用户标准系统程序标准系统程序( (实用程序实用程序) )系统程序:汇编、编译、编辑、系统程序:汇编、编译、编辑、ShellShell标准库函数标准库函数 标准函数:打开、关闭、读、写、创建、撤销标准函数:打开、关闭、读、写、创建、撤销操作系统操作系统系统调用:进程管理、存储管理、文件管理、设备管理系统

9、调用:进程管理、存储管理、文件管理、设备管理用户用户接口接口库函数库函数接口接口系统调系统调用接口用接口 NOTE BOOK Operating SystemOperating System2.1.1 程序接口与系统调用程序接口与系统调用 操作系统提供的系统调用很多,从功能上大操作系统提供的系统调用很多,从功能上大致可分成六类:致可分成六类:l进程和作业管理进程和作业管理l文件操作文件操作l设备管理设备管理l内存管理内存管理l信息维护信息维护l通信通信 Windows 通过三个组件来支持通过三个组件来支持 API: Kernel、User 和和 GDI NOTE BOOK Operating

10、SystemOperating System2.1.1 程序接口与系统调用程序接口与系统调用p系统调用的实现系统调用的实现 实现系统调用功能的机制称陷入或异常处理机制实现系统调用功能的机制称陷入或异常处理机制图图2.3 2.3 陷入机构和系统调用处理过程陷入机构和系统调用处理过程 NOTE BOOK Operating SystemOperating System2.1.1 程序接口与系统调用程序接口与系统调用p系统调用与过程系统调用与过程(函数函数)调用的区别(调用的区别(5点)点)n调用形式不同调用形式不同调用指令与调用指令与 int 或或 trap 指令指令n被调用代码的位置不同被调用代

11、码的位置不同过程调用者和被调用过程调用者和被调用代码在同一程序内,系统调用动态转入操作系统代码在同一程序内,系统调用动态转入操作系统n提供方式不同提供方式不同过程由编译提供,系统调用由过程由编译提供,系统调用由操作系统提供(固定功能与数量)操作系统提供(固定功能与数量)n调用的实现不同调用的实现不同系统调用一定进入核心态系统调用一定进入核心态n返回方式不尽相同返回方式不尽相同过程调用完返回原程序,过程调用完返回原程序,而系统调度执行完后要看系统的调度方式而系统调度执行完后要看系统的调度方式 NOTE BOOK Operating SystemOperating System2.1.1 程序接口

12、与系统调用程序接口与系统调用pLinux的系统调用的系统调用 每个系统调用由两部分组成:每个系统调用由两部分组成:n核心函数核心函数作为核心驻留在内存,是一作为核心驻留在内存,是一种共享代码,用种共享代码,用C 语言书写语言书写n接口函数接口函数是提供给应用程序的是提供给应用程序的API,以库函数形式存在以库函数形式存在Linux 的的lib.a 中中pLinux对文件操作的系统调用与库函数对文件操作的系统调用与库函数调用(阅读课文)调用(阅读课文)通常它不能再使用系统调用,也不能使用通常它不能再使用系统调用,也不能使用应用程序可用的库函数,应用程序可用的库函数,Why ? NOTE BOOK

13、 Operating SystemOperating System2.1.2 操作接口与系统程序操作接口与系统程序操作控制方式(操作控制方式(2种)种) n 联机用户接口联机用户接口称为命令接口(称为命令接口(3种)种)l字符显示式用户界面字符显示式用户界面主要通过命令(语言)主要通过命令(语言)来实现的,又可分成两种方式:来实现的,又可分成两种方式:命令行方式命令行方式制定各类命令、语法制定各类命令、语法批命令方式批命令方式filename.bat、shelll图形化用户界面图形化用户界面窗口、图符、菜单和鼠标窗口、图符、菜单和鼠标 l新一代用户界面新一代用户界面语音、视觉、手势等语音、视觉

14、、手势等n脱机用户接口脱机用户接口作业控制语言作业控制语言(JCL),),作业控制卡、或作业控制语句、或作业控作业控制卡、或作业控制语句、或作业控制操作命令组成制操作命令组成 NOTE BOOK Operating SystemOperating System2.1.2 操作接口与系统程序操作接口与系统程序p系统程序系统程序 系统程序又称标准或实用程序(非操作系统的核系统程序又称标准或实用程序(非操作系统的核心),但却是必不可少的,大致可分成以下心),但却是必不可少的,大致可分成以下6类:类:n文件管理文件管理文件和目录建立、删除等各种管理工作文件和目录建立、删除等各种管理工作n状态信息状态信

15、息获得日期、时间、内存和盘空间数量等获得日期、时间、内存和盘空间数量等n程序设计语言支持程序设计语言支持语言及编译程序、汇编程序等语言及编译程序、汇编程序等n程序装入和执行支持程序装入和执行支持装入(绝对装入(绝对/重)、调试工具等重)、调试工具等n通信通信电子邮件、远程登录使用远地的计算机等电子邮件、远程登录使用远地的计算机等n其他软件工具其他软件工具Web 浏览器、电子表格、数据库系统、浏览器、电子表格、数据库系统、画图软件包、统计分析包及游戏程序画图软件包、统计分析包及游戏程序 NOTE BOOK Operating SystemOperating System2.2 作业的基本概念作业

16、的基本概念2.2.1 2.2.1 作业的定义作业的定义2.2.2 2.2.2 作业的分类作业的分类 NOTE BOOK Operating SystemOperating System2.2.1 作业的定义作业的定义l作业作业是用户在一次解题或一个事务处理过是用户在一次解题或一个事务处理过程中要求计算机系统所做工作的集合程中要求计算机系统所做工作的集合l作业步作业步作业中一项相对独立加工步骤作业中一项相对独立加工步骤l作业管理作业管理一个作业从输入到输出的一个过一个作业从输入到输出的一个过程,大致分成程,大致分成4步:步:作业提交作业提交作业调度作业调度作业控制作业控制作业退出作业退出 NOT

17、E BOOK Operating SystemOperating System2.2.1 作业的定义作业的定义对于被调对于被调度的作业,度的作业,OSOS要对它要对它在系统中在系统中整个运行整个运行过程实行过程实行控制,作控制,作业的控制业的控制过程如图过程如图2.52.5所示所示 编译编译运行运行装配装配目标目标程序程序段段目标目标程序程序装配装配程序程序运行运行程序程序源程序源程序输入数据输入数据输出信息输出信息输出信息输出信息输出信息输出信息子程序子程序库函数库函数动态动态库函库函数数运行结果运行结果编译编译程序程序图图2.5 2.5 作业的控制过程作业的控制过程下下一一步步下下一一步步

18、 NOTE BOOK Operating SystemOperating System2.2.2 作业的分类作业的分类 用户作业分为两大类用户作业分为两大类 :p批处理作业批处理作业 操作员把用户提交的作业分类,由监督程序自动依次处理。用户须用作作业控制语言来书写一份作业控制说明书业控制语言来书写一份作业控制说明书p交互式作业交互式作业 用户使用操作系统提供的命令直接对作业控制 NOTE BOOK Operating SystemOperating System2.2.2 作业的分类作业的分类 例如:用户要运行程序(例如:用户要运行程序(LinuxLinux下为例下为例,4,4个步骤):个步骤

19、): 第一步:编辑文件第一步:编辑文件 vivi 第二步:编译第二步:编译 gccgcc 第三步:运行第三步:运行 a.outa.out 第四步:得到结果第四步:得到结果 这些就是作业步这些就是作业步 作业与进程的关系作业与进程的关系include “stdio.h”main()printf(“C programn”)initshellvigcca.outchild创建关系 NOTE BOOK Operating SystemOperating System2.3 批处理作业控制批处理作业控制 2.3.1 2.3.1 作业状态作业状态2.3.2 2.3.2 作业控制块作业控制块2.3.3 2.

20、3.3 作业控制过程作业控制过程 NOTE BOOK Operating SystemOperating System2.3.1 作业状态作业状态作业的作业的 3 个基本状态:个基本状态:p后备状态后备状态 在提交阶段,操作员把用户提交的作业通过某种方式输入到在提交阶段,操作员把用户提交的作业通过某种方式输入到后备存储器,加入到后备队列中后备存储器,加入到后备队列中p活动状态活动状态 一个作业被作业调度程序选中,作业就进入了一个作业被作业调度程序选中,作业就进入了活动状态活动状态,等,等待处理机调度待处理机调度p完成状态完成状态 作业正常结束或错误终止时,进入完成阶段,回收资源。作作业正常结束

21、或错误终止时,进入完成阶段,回收资源。作业的业的3个状态转换如图个状态转换如图 2.6 所示所示 NOTE BOOK Operating SystemOperating System2.3.1 作业状态作业状态后备状态完成状态图图 2.6 2.6 作业的状态转换作业的状态转换I/O完完I/O请求请求时间时间片完片完调度调度活动状态活动状态运行运行阻塞阻塞就绪就绪作业调度作业调度作业作业卡片机卡片机后备后备作业作业 NOTE BOOK Operating SystemOperating System2.3.2 作业控制块作业控制块JCB (Job Control Block) OS是根据JCB来

22、对作业进行控制和管理的JCB主要包括如下信息: NOTE BOOK Operating SystemOperating System2.3.3 作业控制过程作业控制过程l一个批处理控制方式的作业被作业调度选中后,操作系统按照用户作业控制说明书作业控制说明书中规定的控制要求去控制作业的执行(这就是批处理)l当作业结束后,系统收回作业所占的资源且撤销该作业,作业的结果在输出井输出井中等待输出 NOTE BOOK Operating SystemOperating System2.4 调度算法调度算法 调度是个重要的问题调度是个重要的问题,涉及到系统效率,操作系统产生过三种调度:n高级调度高级调度(

23、作业调度)n中级调度中级调度(内、存外交换)n低级调度低级调度(进程调度/处理机调度) *由于作业调度作业调度的算法与低级调度的算法有些是相近或相同的,将在第4章与进程调度一起讨论 NOTE BOOK Operating SystemOperating System2.4 调度算法调度算法 2.4.1 2.4.1 作业调度算法的目标与设计因素作业调度算法的目标与设计因素2.4.2 2.4.2 单道批处理作业调度算法单道批处理作业调度算法2.4.3 2.4.3 多道批处理作业调度算法多道批处理作业调度算法 NOTE BOOK Operating SystemOperating System2.4

24、.1 作业调度算法目标与设计因作业调度算法目标与设计因素素p作业调度的目标作业调度的目标(4点点) n单位时间内运行尽可能多的作业单位时间内运行尽可能多的作业选择尽可 能短的作业先运行n使处理机保持使处理机保持“忙忙”选择计算量大的作业先运行,那么势必使得输入输出设备空闲n使输入输出设备充分利用使输入输出设备充分利用只有选择I/O繁忙的作业,I/O设备才能充分使用n对所有的作业都是公平合理的对所有的作业都是公平合理的这个目标就更难达到了 NOTE BOOK Operating SystemOperating System2.4.1 作业调度算法目标与设计因作业调度算法目标与设计因素素p设计调度

25、算法时要考虑的一些因素设计调度算法时要考虑的一些因素(3点点):n与系统设计目标一致:与系统设计目标一致:l批处理应着重提高系统吞吐量l交互式注意用户能忍受响应时间 n注意系统资源平衡使用注意系统资源平衡使用;应将计算量大作业和输入输出繁忙作业搭配起来n应保证提交作业在规定截止时间内完成,应保证提交作业在规定截止时间内完成,且应设法缩短作业的平均周转时间且应设法缩短作业的平均周转时间考虑越多会使系统实现越复杂,反而增加系统开考虑越多会使系统实现越复杂,反而增加系统开销,大多数系统都采用相对简单的调度算法销,大多数系统都采用相对简单的调度算法 NOTE BOOK Operating System

26、Operating System2.4.1 作业调度算法目标与设计因作业调度算法目标与设计因素素p调度准则调度准则(6点点) n作业到达时间作业到达时间n预先为作业确定的优先级预先为作业确定的优先级n这两个因素在作业提交后,其它考虑因素:这两个因素在作业提交后,其它考虑因素:n作业所需的作业所需的CPU时间时间 C(以后还要讨论)(以后还要讨论)n存储要求存储要求 Mn打印输出的行数打印输出的行数 L 这些值只能根据用户提交的作业说明来估算得到这些值只能根据用户提交的作业说明来估算得到 NOTE BOOK Operating SystemOperating System2.4.2 单道批处理作

27、业调度算法单道批处理作业调度算法 常见的有常见的有 4 种:种:p先来先服务算法(先来先服务算法(FCFS)按照进入“输入井”先后次序挑选作业p短作业优先算法(短作业优先算法(SJF)在控制说明书加以说明(估计运行时间)p响应比最高者优先算法(响应比最高者优先算法(HRP)既考虑运行时间,又考虑等待时间。其中:p优先数调度算法(优先数调度算法(用户、系统或两者确定) 优先数优先数 =用户给定优先数用户给定优先数-运行时间运行时间+等待时间等待时间-输出量输出量响应比响应比 = =周转时间周转时间运行时间运行时间 等待时间等待时间 + + 运行时间运行时间 运行时间运行时间 = = NOTE B

28、OOK Operating SystemOperating System2.4.3 多道批处理作业调度算法多道批处理作业调度算法l在单道批处理系统中,内存仅存放一个作业l在多道批系统中可装入多个作业,这可以大大提高系统资源的利用率l多道批处理系统采用的调度算法更接近进程调度算法,故在第4章中进一步详尽讨论 NOTE BOOK Operating SystemOperating System2.5 交互式作业控制交互式作业控制 用户使用交互式命令对作业进行控制,更灵活用户使用交互式命令对作业进行控制,更灵活2.5.1 2.5.1 命令接口的结构命令接口的结构2.5.2 2.5.2 联机命令联机命

29、令2.5.3 2.5.3 命令解释程序命令解释程序2.5.4 2.5.4 终端处理程序终端处理程序2.5.5 2.5.5 交互式系统实例交互式系统实例分时系统分时系统 NOTE BOOK Operating SystemOperating System2.5.1 命令接口的结构命令接口的结构 命令接口由命令处理器命令接口由命令处理器/程序来实现;命令处程序来实现;命令处理器的实现方式主要有如下理器的实现方式主要有如下3种:种:n作为OS一个部分(如,OS/MVT或VAX/VMS)n作为OS的一个独特模块,能方便地修改或替换(如,RT-11或CP/M)n作为一易于被替换的普通程序(UNIX操作系

30、统) NOTE BOOK Operating SystemOperating System2.5.1 命令接口的结构命令接口的结构图2.9 给出了不同命令接口结构的示意。在某些系统中,可能用专门设计的命令接口替代标准的命令接口。例如,多用户UNIX,用户可有不同命令接口操作系统包括命令接口命令接口.命令接口命令接口(a)命令接口作为)命令接口作为操作系统的组成部分操作系统的组成部分(b)命令接口作为)命令接口作为一个单独的模块一个单独的模块操作系统操作系统终端终端1终端终端2终端终端3操作系统操作系统(c c)命令接口作为一个独立的程序)命令接口作为一个独立的程序图图2.9 2.9 命令接口的

31、结构命令接口的结构 NOTE BOOK Operating SystemOperating System2.5.2 联机命令联机命令命令包含两部分: 命令名命令名 告诉系统做什么 参数参数 要求系统如何做 命令的一般格式为:命令的一般格式为: 命令名命令名 参数参数1,参数,参数2 一个系统的命令语言就是所提供的操作控制命令的集合,可以分成如下几种类型 NOTE BOOK Operating SystemOperating System2.5.2 联机命令联机命令通常可以分为通常可以分为 5 大类:大类:p系统访问命令系统访问命令 n 注册命令;注册命令;系统做一些必要的核对工作n 注销命令;

32、注销命令;系统回收其占用的资源等p文件管理命令文件管理命令建立、编辑、修改等各种操作p编译和执行命令编译和执行命令编译成目标程序,键入名执行p询问命令询问命令要求系统显示作业时间、主存空间等p操作员专用命令操作员专用命令只能由操作员控制台上发出 NOTE BOOK Operating SystemOperating System2.5.3 命令解释程序命令解释程序命令解释程序有两种处理方法:命令解释程序有两种处理方法:p由终端命令解释程序直接处理在没有创建子进程功能系统中,一个进程(作业)对应一个终端用户p由子进程代为处理在具有创建子进程功能 的系统中,对较复杂命令,如对于C源程序进行编译,命

33、令解释程序本身不能处理,此时创建一个子进程,并由该子进程运行C编译程序 NOTE BOOK Operating SystemOperating System2.5.4 终端处理程序终端处理程序p终端处理过程(远程分时终端的情形)终端处理过程(远程分时终端的情形) 用户控制作业运行大致有4个阶段:n终端的连接终端的连接远程终端租用专线/借助交换线+拨电话号码,以建立终端用户和系统的联系n用户注册用户注册注册可看作作业调度注册可看作作业调度n作业控制作业控制使用命令语言控制作业的执行n用户退出用户退出输入“注销”命令退出,系统收回资源,显示“使用系统时间”,及应付费用 NOTE BOOK Operating SystemOperating System

温馨提示

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

评论

0/150

提交评论