《操作系统第2章作业管理和用户接口》由会员分享,可在线阅读,更多相关《操作系统第2章作业管理和用户接口(31页珍藏版)》请在金锄头文库上搜索。
1、第2章 作业管理和用户接口2.1 用户与操作系统间的接口2.2 作业管理的基本概念2.3 作业管理的任务和功能2.4 作业的输入与输出2.5 作业调度2.6 作业控制2.7 Windows XP的用户接口2024/7/271操作系统第2章作业管理和用户接口2.1 用户与操作系统间的接口2024/7/272操作系统第2章作业管理和用户接口操作系统的用户界面(或称接口)是操作系统提供给用户与计算机打交道的外部机制。用户能够借助这种机制和系统提供的手段来控制用户所在的系统。命令接口,是为用户提供的直接使用接口,用户利用这些命令可以组织和控制作业的执行或管理计算机系统;程序接口,是为用户提供的间接使用
2、接口,用户利用这个接口在设计程序时调用操作系统的相应功能。2024/7/273操作系统第2章作业管理和用户接口操作系统提供两个用户接口:程序接口:系统功能调用命令接口:作业控制语言( 早期批处理操作系统) 键 盘 命 令 ( 交 互 式 操 作 系 统 , 分 时 操 作 系 统为代表)图形用户接口(LINUX、WINDOWS)2024/7/274操作系统第2章作业管理和用户接口程序接口系统调用系统调用是操作系统与用户的接口之一,用户在程序中使用系统调用请求操作系统的服务。(系统调用命令、进管指令、访管指令)。系统调用的功能设备管理、文件管理、进程控制、进程通信、存储管理、系统管理通过系统调用
3、接口也可使用系统命令。C语言里的system()函数如 UNIX系统: system(cp -r doc /tmp)2024/7/275操作系统第2章作业管理和用户接口系统调用的实现实际上系统调用语句本身是硬件提供的(机器指令),但其所调用的功能是操作系统提供的。每种机器的机器指令集中都有一条系统调用指令。 不同的操作系统,系统调用实现的具体方法有所不同,但其实质的特点是相同的:每个系统调用对应一个系统调用号;每个系统调用有一个对应的执行程序段;每个系统调用要求一定数量的输入参数和返回值;整个系统有一个系统调用执行程序入口地址表;2024/7/276操作系统第2章作业管理和用户接口2024/7
4、/277操作系统第2章作业管理和用户接口系统调用与普通过程调用的相同点和不同系统调用与普通过程调用的相同点和不同点点相同点改变指令流程重复执行和公用改变指令流程后需要返回原处不同点执行状态不同进入方式不同返回不同嵌套或递归调用2024/7/278操作系统第2章作业管理和用户接口命令接口联机命令接口也叫交互式用户接口,它用于联机作业控制,它是由一组键盘操作命令组成。用户通过控制台或终端键入操作命令,向系统提出各种服务请求。用户每输入完一条命令,控制就转向命令解释程序,然后命令解释程序对键入的命令解释执行,完成指定的功能。最后,控制又转回到控制台或终端,此时用户可以键入下一条命令。联机命令接口处理
5、的是交互式作业,它的控制方式有三种,即键盘命令、菜单控制和窗口控制。 脱机命令接口也称批处理用户接口,它用于脱机作业控制。脱机作业控制又分为作业控制卡和作业说明书两种方式。由一组作业控制命令组成 。 2024/7/279操作系统第2章作业管理和用户接口作业控制语言在批处理操作系统时代,用户使用机是采用脱机方式,即用户将自己的程序、数据和用作业控制语言编写的上机操作的步骤的程序一起提交给计算中心(或机房),隔一段时间去机房取结果。是描述批处理作业控制执行的标准,是对用户作业组织和管理命令的集合,是系统提供给用户用来描述其作业控制意图的工具。 2024/7/2710操作系统第2章作业管理和用户接口
6、2.2 作业管理的基本概念一个作业是指在一次应用业务处理过程中,从输入开始到输出结束,用户要求计算机所做的有关该次业务处理的全部工作。用户的观点:在一次业务处理过程中,从输入程序和数据到输出结果的全过程。作业步:形成中间结果文件。系统的观点(针对作业进行资源分配):作业由程序及数据(作业体)和作业说明书(作业控制语言)2024/7/2711操作系统第2章作业管理和用户接口作业由不同的顺序相连的作业步组成。作业步是在一个作业的处理过程中,计算机所做的相对独立的工作。作业流:一次有一批作业进入系统,并在操作系统控制下,一个接一个地进行处理作业分类批量型作业终端型作业(交互型作业)2024/7/27
7、12操作系统第2章作业管理和用户接口2.3 作业管理的任务和功能作业管理的主要任务:是完成用户要求的全过程处理上的宏观管理。作业进入作业调度作业控制作业退出采用的数据结构 每个作业设置一个作业控制块(JCB),用来记录作业的有关信息 2024/7/2713操作系统第2章作业管理和用户接口2.4 作业的输入与输出无通道处理方式:联机(降低了CPU效率):由主机直接控制输入/输出;I/O与作业处理不能并行。脱机(人工干预):通过磁带或磁盘在外围处理机与主机之间交换作业(需人工移动);用于主机不太快的情况。直接耦合:通过共享外存在外围处理机与主机之间交换作业;用于高速主机。2024/7/2714操作
8、系统第2章作业管理和用户接口有通道处理:输入/输出由主机和通道来承担。假脱机(spooling, Simultaneously Peripheral Operation On Line):系统把作业处理的全过程划分为相对独立的三个部分-输入流、处理流和输出流。spooling-in/spooling-out进程:控制输入/输出;网络:在网络上一台机器进行作业输入/输出,在另一台主机上运行;2024/7/2715操作系统第2章作业管理和用户接口2.5 作业调度作业状态2024/7/2716操作系统第2章作业管理和用户接口作业控制块(Job Control Block-JCB):作业存在的唯一标志
9、,是系统为管理作业所设置的一个数据结构,存放了管理和控制作业所必需的信息内容简介:作业名、当前状态、资源要求清单(外设号、内存大小、文件量)、资源使用情况(时间记录:进入、开始运行、已运行时间、内存地址)、作业类型(占CPU时间、I/O吞吐量、响应时间要求)、优先权等注:管理表格设计要记住设计原则,即要想管理得好其表项内容要记录必要的详细内容2024/7/2717操作系统第2章作业管理和用户接口作业调度是指按某种算法把处于后备状态的作业的一个或一批调度到主机上运行。作业调度也称为宏观调度宏观调度。作业调度程序要完成以下工作:(1) 按照某种调度算法从后备作业队列中挑选作业。(2) 为选中的作业
10、分配主存和外设资源。(3) 为选中的作业建立相应的进程。(4) 构造和填写作业运行时所需的有关表格。(5) 作业结束时完成该作业的善后处理工作,如收回资源,输出必要的信息,撤消该作业的全部进程 (PCB) 和作业控制块 JCB。2024/7/2718操作系统第2章作业管理和用户接口调度原则:公平,合理,使用户满意提高系统资源利用率,如提高系统吞吐量作业调度算法的评价因素作业吞吐量:运行尽可能多的作业;充分利用资源:CPU忙、I/O设备忙;对各作业公平、合理,使用户满意:执行时间长短、等待时间等;2024/7/2719操作系统第2章作业管理和用户接口作业调度的性能指标平均周转时间周转时间:设i作
11、业的周转时间为Ti=Tci-Tsc;(TciTsc分别为作业的完成时间和作业的提交时间)平均周转时间: T=(Ti)/n(n为作业个数)平均带权周转时间带权周转时间:设i作业的带权周转时间为Wi=Ti/tri;( tri作业的运行时间)平均周转时间: W=(Wi)/n(n为作业个数)2024/7/2720操作系统第2章作业管理和用户接口作业调度算法 先来先服务(FCFS)算法 按照作业进入系统的先后次序进行调度,先进入系统者先调度;即启动等待时间最长的作业。优点:实现简单、公平缺点:没考虑资源利用率和作业的特殊性FCFS算法利于长作业,不利于短作业,而大多数的作业是I/O繁忙的短作业。以FCF
12、S作为主调度算法是不常用的。2024/7/2721操作系统第2章作业管理和用户接口短作业优先调度算法(SJF) 以要求运行时间长短进行调度,即启动要求运行时间最短的作业。优点:易于实现,强调了资源的充分利用,保证了系统的最大吞吐量(单位时间里处理作业的个数)。缺点:不公平,会造成长作业长期等待。结论:假设系统中所有作业同时到达,可以证明采用SJF能得到最短的作业平均周转时间。2024/7/2722操作系统第2章作业管理和用户接口先来先服务调度算法和短作业优先调度算法2024/7/2723操作系统第2章作业管理和用户接口高响应比优先(HRF):响应比最高的作业优先启动。响应比=(等待时间+估计运
13、行时间)/ 估计运行时间该算法是FCFS和SJF的结合,克服了两种算法的缺点优点: 公平,吞吐率大缺点: 增加了计算,增加了开销2024/7/2724操作系统第2章作业管理和用户接口优先数调度算法 选择优先级高的作业投入运行优先数的确定用户确定系统确定静态优先数动态优先数分类调度算法 把作业分类,作业调度从不同类型作业中去调度作业根据作业对资源要求分类:I/O型、CPU型和均衡型2024/7/2725操作系统第2章作业管理和用户接口2.6 作业控制脱机作业控制是指用户把自己对作业执行的控制意图连同该作业的源程序和初始数据一起输入到计算机系统中,系统就可以按照说明书来控制作业的执行。特点按照这种
14、方式执行的作业,不需要用户的干预,由系统自动完成。这种方式也称为脱机控制方式,或自动控制方式,它适合对作业的成批处理。采用这种处理方式的作业称为批处理作业,或脱机作业。2024/7/2726操作系统第2章作业管理和用户接口作业控制卡作业控制卡方式是指用户将其操作意图,用控制语言提供的有关作业控制命令穿孔在若干卡片上,以控制作业的运行的一种形式。用户按照要求将作业控制卡插入到作业卡片叠的适当位置上。系统分批读入这些卡片后开始运行,并按照这些控制卡的信息,指挥和控制作业的运行,这些作业控制卡是早期的一种作业控制方式。作业说明书作业说明书也是用作业控制语言来表达用户对作业控制意识的,在形式上同用高级
15、编程语言编制的程序相似。相对于作业控制卡分散的缺点它具有集中、便于修改、灵活等优点。美国1905机GEOGE语言是典型的高级算法的作业控制语言。2024/7/2727操作系统第2章作业管理和用户接口联机作业控制用户把自己对作业执行的控制意图用操作控制命令输入到计算机系统中,在作业执行过程中,用户逐条输入命令,系统根据接到的命令控制作业的执行。一条命令所要求的工作做完后,系统通知用户命令的执行情况,且允许用户再输入一条命令,以控制作业继续执行,直到作业执行结束。在作业执行过程中系统与用户不断地交换信息。采用这种方式执行的作业,需要用户的及时干预,这种方式也称为直接控制方式,或手动控制方式,它适合
16、对终端用户作业的处理。采用这种控制方式的作业称为终端作业或交互式作业。 2024/7/2728操作系统第2章作业管理和用户接口交互式作业的控制命令控制这种控制方式是通过用户使用系统提供的操作控制命令(键盘命令)实现的 。菜单控制当一个程序具有若干项可以供用户选择的功能时,一般都用交互式方式进行分支处理。 窗口控制 窗口控制采用了图形化的操作界面 。GUI2024/7/2729操作系统第2章作业管理和用户接口终端作业管理终端连接是指终端设备与计算机系统在线路上接通。 用户注册是指对终端作业的作业调度。 作业控制是指注册成功的用户通过系统提供的命令或会话语句控制作业的执行。 用户退出 是指释放用户占用的资源退出系统。 2024/7/2730操作系统第2章作业管理和用户接口2.7 Windows XP的用户接口命令接口系统命令:命令提示符图形用户界面GUI1. 窗口系统(window system)的特点2. 窗口系统的图形元素及其状态3. 窗口管理器(window manager)程序接口API2024/7/2731操作系统第2章作业管理和用户接口