操作系统教程(第二版)第3章 用户接口与作业管理
计算机操作系统作业管理和用户接口培训教材

作业生命周期: 包括提交、调 度、执行、完 成、释放等阶
段
作业调度策略: 包括先来先服 务、短作业优 先、时间片轮
转等
作业执行:包 括进程创建、 资源分配、执 行、结束等过
程
作业的调度策略
先来先服务(FCFS):按照作业到达的 时间顺序进行调度
时间片轮转:将CPU时间分成若干时间 片,每个作业轮流使用一个时间片
内存回收:当程序不再需要内存时,内存管理需要回收这些内存,以便其 :操作系统根据程序 需求分配内存空间
内存回收:操作系统在程序结 束后回收内存空间
内存碎片:内存分配和回收过 程中产生的不连续内存空间
内存管理策略:包括页式管理、 段式管理和段页式管理等
内存的共享和保护
分类:作业可以分为批处理 作业、交互式作业和实时作 业。
批处理作业:用户提交给操 作系统的一组作业,由操作 系统自动执行。
交互式作业:用户通过终端 与操作系统进行交互,实时 执行作业。
实时作业:对时间敏感的作 业,需要在规定的时间内完 成。
作业的状态和生命周期
作业状态:包 括等待、运行、 完成、终止等
作业的执行:操 作系统分配资源, 执行作业
作业的终止:作 业执行完成后, 操作系统回收资 源,终止作业
03 用户接口
命令行接口
什么是命令行 接口:一种通 过命令行输入 和输出进行交
互的接口
特点:简洁、 高效、易于自
动化
应用场景:系 统管理、软件 开发、自动化
测试等
常用命令:ls、 cd、mkdir、
内存映射技术: 包括页映射、段 映射、段页映射 等
内存扩展技术: 包括内存交换、 内存压缩、内存 共享等
07 文件系统
《操作系统》第2章 作业管理和用户接口

1
第一页,共31页。
2.1 用户(yònghù)与操作系统 间的接口
2021/12/7
HZAU 理学院计算机系 姚娟
2
第二页,共31页。
▪ 操作系统(cāo zuò xì tǒnɡ)的用户界面(或 称接口)是操作系统(cāo zuò xì tǒnɡ)提供 给用户与计算机打交道的外部机制。用户 能够借助这种机制和系统提供的手段来控 制用户所在的系统。
干预,由系统自动完成。
▪ 这种方式也称为脱机控制方式,或自动控 制方式,它适合对作业的成批处理。
2021▪/12/7采用这种处理方HZAU式理学的院计作算机系业姚娟称为批处理作业,26
第二十六页,共31页。
➢ 作业控制卡方式是指用户将其操作意图,用控制语言提 供的有关作业控制命令穿孔在若干卡片上,以控制作业 的运行的一种形式。用户按照要求将作业控制卡插入到 作业卡片叠的适当位置上。系统分批读入这些卡片后开 始运行,并按照这些控制卡的信息,指挥和控制作业的 运行,这些作业控制卡是早期的一种作业控制方式。
▪ 操作系统提供(tígōng)两个用户接口:
▪ 程序接口:系统功能调用
▪ 命令接口:
▪ 作业控制语言( 早期批处理操作系统)
▪ 键盘命令(交互式操作系统,分时操
作系
统为代表)
▪ 图形用户接口(LINUX、WINDOWS)
2021/12/7
HZAU 理学院计算机系 姚娟
4
第四页,共31页。
程序接口
第2章 作业管理和用户 (yònghù)接口
▪ 2.1 用户与操作系统间的接口 ▪ 2.2 作业管理的基本概念 ▪ 2.3 作业管理的任务和功能 ▪ 2.4 作业的输入与输出(shūchū) ▪ 2.5 作业调度 ▪ 2.6 作业控制 ▪ 2.7 Windows XP的用户接口
计算机操作系统教程课后答案

第一章绪论1.什么是操作系统的基本功能?答:操作系统的职能是管理和控制汁算机系统中的所有硬、软件资源,合理地组织计算机工作流程,并为用户提供一个良好的工作环境和友好的接口。
操作系统的基本功能包括:处理机管理、存储管理、设备管理、信息管理(文件系统管理)和用户接口等。
2.什么是批处理、分时和实时系统?各有什么特征?答:批处理系统(batchprocessingsystem):操作员把用户提交的作业分类,把一批作业编成一个作业执行序列,由专门编制的监督程序(monitor)自动依次处理。
其主要特征是:用户脱机使用计算机、成批处理、多道程序运行。
分时系统(timesharingoperationsystem):把处理机的运行时间分成很短的时间片,按时间片轮转的方式,把处理机分配给各进程使用。
其主要特征是:交互性、多用户同时性、独立性。
实时系统(realtimesystem):在被控对象允许时间范围内作出响应。
其主要特征是:对实时信息分析处理速度要比进入系统快、要求安全可靠、资源利用率低。
3.多道程序(multiprogramming)和多重处理(multiprocessing)有何区别?答;多道程序(multiprogramming)是作业之间自动调度执行、共享系统资源,并不是真正地同时执行多个作业;而多重处理(multiprocessing)系统配置多个CPU,能真正同时执行多道程序。
要有效使用多重处理,必须采用多道程序设计技术,而多道程序设计原则上不一定要求多重处理系统的支持。
4.讨论操作系统可以从哪些角度出发,如何把它们统一起来?答:讨论操作系统可以从以下角度出发:(1)操作系统是计算机资源的管理者;(2)操作系统为用户提供使用计算机的界面;(3)用进程管理观点研究操作系统,即围绕进程运行过程来讨论操作系统。
上述这些观点彼此并不矛盾,只不过代表了同一事物(操作系统)站在不同的角度来看待。
每一种观点都有助于理解、分析和设计操作系统。
第3章作业管理

2.键盘终端处理程序
键盘终端处理程序应具有以下功能:
接收用户键入的字符:接收用户从终端输入的字符并 传给用户程序。 字符缓冲:缓冲区用来暂存用户从终端输入的字符。 可以采用专用缓冲和公用缓冲方式之一
专用缓冲:系统为每个终端设置一个专用缓冲区 公用缓冲方式:设置一个由多个大小相等的缓冲区组成的公 用缓冲池,让所有终端共享。
回送显示: 屏幕编辑: 特殊字符处理:
3.命令解释程序
命令解释程序是放在最高层的,以便用户 交互使用。它的主要功能是对用户输入的 命令进行解释,然后转到想要的处理程序 去执行。Dos的命令解释程序是 command。Com,unix是shell程序。 Ms-dos的命令解释程序的工作流程看书 上p79.
Linux的几大类shell命令
有关进程及进程管理 有关文件管理 有关用户和用户管理 有关硬盘管理和文件压缩 有关网络 其他
3.3 图形接口
Windows操作系统的图形用户接口通过 桌面,图标、窗口、对话框等对象让用户 来使用操作系统的功能。
3.1 桌面、窗口、图标和任务栏
数据
输 入 程 序 作 业 调 度 输 出 程 序
进程 运行
进程 调度
输入设备
输 入 井
就绪
等待
输 出 井
输出设备
作业的输入和输出
批量作业的组成?
作业申请
作业情况 资源要求
作业体
作业的输入和输出
将作业程序、数据和作业说明书从输入设备(例 如键盘)输入到外存,并形成初始信息
作业输入方式
系统设计目标
系统的处理能力 系统资源的利用率 算法对所有作业的”公平合理”性,亦即使 所有用户感到满意.
第三章作业管理

第三章作业管理3. 1 学习指导操作系统为用户提供两个接口,一个是系统为用户提供的各种命令接口,用户利用这些操作命令来组织和控制作业的执行或管理计算机系统一个是程序接口,编程人员使用它们来请求操作系统服务。
按命令方式对作业控制方式的不同,可将命令接口分为联机命令接口和脱机命令接口。
联机命令接口又称交互式命令接口,它由一组键盘操作命令组成。
用户通过控制台或终端键入操作命令,向系统提出各种服务要求。
在微机系统中,通常把键盘命令分为内部命令和外部命令两大类。
脱机命令接口也称批处理命令接口,它是一组作业控制命令(或称作业控制语言)组成。
脱机用户是指不能直接干预作业运行的用户,他们事先用相应的作业控制命令写成一份作业操作说明书,连同作业一起提交给系统,当系统调度到该作业时,由系统中的命令解释程序对作业说明书上的命令或作业控制语句逐条解释执行。
程序接口由一组系统调用组成。
用户通过在程序中使用这些系统调用来请求操作系统提供的服务。
所谓系统调用就是用户在程序中调用操作系统所提供的一些子功能。
具体地讲,系统调用就是通过系统调用命令中断现行程序,而转去执行相应的子程序,以完成特定的系统功能。
对操作系统而言,其所提供的系统调用命令条数、格式以及所执行的功能等都不尽相同。
系统调用命令是为了扩充机器指令、增强系统功能、方便用户使用而提供的。
因此,在一些计算机系统中,把系统调用命令称为广义指令。
广义指令与机器指令在性质上是不同的,机器指令是用硬件线路直接实现的,而广义指令则是由操作系统提供的一个或多个子程序模块实现的。
用户使用操作系统的主要目的是作业处理。
一个作业进入系统到运行结束,一般需经历收容、运行、完成三个阶段,与这三个阶段对应的作业处于后备、运行和完成三种状态。
作业调度的主要功能是按照某种原则从后备作业队列中选取作业进入主存,并为作业做好运行前的准备工作和作业完成后的善后处理工作。
常用的作业调度算法有:先来先服务、短作业优先、响应比高者优先、优先数优先等调度算法。
第二张 用户接口与作业管理

• 完成状态:当作业正常运行结束或因发生错误而终止时作 业就进入了完成状态。
2020/7/12
1. 作业的状态和处理流程
spooling输入
spooling输出
后备状态
作业登录
作业调度
运行状态 作业控制
2020/7/12
• 单道批处理系统的作业调度算法 • (1)先来先服务(FCFS)调度算法 • (2) 最短作业优先(SJN)调度算法 • (3)响应比高者优先(HRN)调度算法 • (4)优先数调度算法 • (5) 均衡调度算法
2020/7/12
2.2.4 批处理作业的控制
• 一个批处理控制方式的作业被作业调度程序选中 后,操作系统按照用户组织作业时所规定的控制 要求去控制作业的执行。一个作业往往要分几个 作业步执行,一般来说,总是按作业步的顺序控 制作业的执行,即一个作业步执行结束后,就顺 序取下一个作业步继续执行,直到最后一个作业 步完成,整个作业就执行结束。
2020/7/12
2.1.1 作业的定义
2020/7/12
• 作业步 • 任何一个作业都要经过若干加工步骤才能得到
结果,我们把作业中的每一个相对独立的加工 步骤称为一个“作业步” 。 • 作业流 • 在批处理系统中,把若干个作业按某种次序合 成一批而形成作业流。 • 作业这一概念一般用于早期批处理系统和现在 的大型机、巨型机系统中,对于广为流行的微 机和工作站系统,人们一般不太使用作业的概 念。
I/O繁忙的作业,即I/O型作业。 • ④ 对所有的作业都是公平合理的。这就
要求对每个作业公平对待,不无故地或 无限期地拖延一个作业的执行。
操作系统课件

作业i的周转时间: 作业i的带权周转时间:
作业的平均周转时间:
作业的平均带权周转时间:
第三章 作业管理及用户接口
3. 常用的作业调度算法
(1) 先来先服务(FCFS) 优点:算法简单、便于实现 缺点:导致短作业等待时间过长
作业名 A B C D E 进入输入井时间 8:06 8:18 8:36 9:18 9:18 需计算时间 42 30 24 24 12 需内存量(KB) 15 60 50 10 20
第三章 作业管理及用户接口
2. 进ห้องสมุดไป่ตู้调度的时机
1) 完成任务。正在运行的进程完成其任务后, 释放对CPU的控制 2) 等待资源。由于等待某些资源或事件,正在 运行的进程不得不放弃CPU 3) 运行到时。在分时系统中,当前进程使用完规 定的时间片,时钟中断使该进程让 出CPU 4) 发现标志。核心处理完中断或陷入事件后, 发现系统中“重新调度”标志被置上
系统调用大致可分为如下几类: (1) 设备管理。该类系统调用被用来请求和释 放有关设备、以及启动设备操作等。 (2) 文件管理。对文件的读、写、创建和删除 等。 (3) 进程控制。进程是一个在功能上独立的程 序的一次执行过程。进程控制的有关系统 调用包括进程创建、进程执行、进程撤消、 执行等待和执行优先级控制等。
第三章 作业管理级用户接口
3.2 作业管理
3.2.1 作业与作业步 作业:
用户在一次算题过程中或一次事物处理 中,要求计算机系统所做的工作的集合。
作业步:
通常把计算机系统完成一个作业所需的一系 列有序的相对独立的工作步骤称为作业步。
作业:在一次应用业务处理过程中,从输入开 始到输出结束,用户要求计算机所做的有关该 次业务处理的全部工作称为一个作业。 作业由不同的顺序相连的作业步组成。作业步 是在一个作业的处理过程中,计算机所做的相 对独立的工作。一般来说,每一个作业步产生 下一个作业步的输入文件。
用户接口和作业管理课件共61页

第2章 用户接口和作业 管理(4课时)
Chapter2 用户接口和作业管理
计算机科学与工程学院
Page 1
教学目标
了解联机命令的格式、类型; 了解终端处理程序的功能及命令解释程序的作用和 工作流程; 领会系统调用的概念、类型和实现。
了解批处理口和作业管理
作业的组成:由用户程序、所需要的数据、作业说明书 三部分组成。
-作业步:一个作业的完成通常要经历建立、编译、连接 装配和运行。这些要求计算机处理的相对独立的每步骤叫做 作业步。一个作业的各个作业步之间是互相联系的,在逻辑 上是顺序执行的。
-作业流:一次有一批作业进入系统,并在操作系统控制 下,一个接一个地进行处理,称之为作业流
Chapter2 用户接口和作业管理
计算机科学与工程学院
Page 10
2.2 命令接口
命令解释程序 -功能:对用户输入的命令进行解释,并 转入相应的命令处理程序去执行 -对命令的处理方法:
① 由命令解释程序直接处理 ② 由子进程代为处理。对于比较复杂的命令,如对
一个C源程序,命令解释程序不能处理,此时为 终端用户创建一个子进程,并由该子进程运行C 编译程序,以处理该源程序。
-作业的两种基本类型:批处理作业、交互式作业
Chapter2 用户接口和作业管理
计算机科学与工程学院
Page 7
2.1 概述
2.1.2 用户接口 人们研究、设计OS的目的就是为了方便用户使用
计算机。用户通过OS控制和使用计算机,不再与裸 机发生直接的关系,这样OS就成为用户和计算机之 间的接口。
- 命令接口 - 程序接口(通常由若干系统调用组成) - 图形接口
Chapter2 用户接口和作业管理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6. 批处理作业的调度
主要功能: 审查系统能否满足用户作业的资源要求
只要通过调用相应的资源管理程序的有关部分 审核其表中是否能满足作业说明书中的要求即可
按照一定的算法从输入井中的后备作业中选取作业
调度的关键在选择恰当的算法
6. 批处理作业的调度(续1)
(1)调度算法评价
调度实质上是一个策略问题 设定的目标往往是相互冲突的
(JCL)
(2)作业控制语言的类别 包括:I/O命令、编译命令、操作命令以及条 件命令等
2. 批处理作业控制语言与作业说明书(续)
(3)作业说明书
表达用户对作业的控制意图
内容: 作业的基本描述 作业控制描述 资源要求描述
3. 作业控制块与作业表
(1)作业控制块(JCB:Job Control Block)
大多数操作系统都采用比较简单的调度算法
6. 批处理作业的调度(续3)
(2)调度算法性能的衡量
作业平均周转时间 假定某一作业进入“输入井”的时间为Si(提交时间,到
达时间),它被选中执行,得到计算结果的时间为Ei (完成时间)它的周转时间为Ti =Ei – Si 则作业平均周转时间为:
T=( )n T×i
目标:
单位时间内运行尽可能多的作业 使处理机尽可能保持“忙碌” 使各种I/O设备得以充分利用 对所有的作业都是公平合理的
6. 批处理作业的调度(续2)
要设计一个理想的调度算法是一件十分困难的事 在实际系统中,调度算法往往折衷考虑
设计调度算法时应考虑的因素: 调度算法应与系统设计目标保持一致 注意系统资源均衡使用 保证提交的作业在截止时间内完成 设法缩短作业平均周转时间
作业带权平均周转时间 W = 3.25
结束时间
10:00 11:20 10:10 10:30
周转时间 (分钟)
120 150 70 40
380
带权周转 时间
1 3 7 2
13
最短作业优先作业算法计算结果
6. 批处理作业的调度(续14)
作业
JOB1 JOB2 JOB3 JOB4
进入时间 估计运行 开始时间
3. 作业控制块与作业表(续5)
(5)作业控制块的撤消
作业完成后,其作业控制块由系统输出程序撤消 作业控制块被撤消后其作业也不复存在
3. 作业控制块与作业表(续6)
(6)作业表 每个作业有个作业控制块 所有作业JCB构成一个作业表 作业表存放在外存固定区域中,长度是固定 限制了系统所能同时容纳的作业数量
进入时间 估计运行 开始时间
时间
(分钟)
8:00
120
8:00
8:50
50
10:00
9:00
10
10:50
9:50
20
11:00
作业平均周转时间 T = 112.5
作业带权平均周转时间 W = 4.975
结束时间
10:00 10:50 11:00 11:20
周转时间 (分钟)
120 120 120 90
根据计算公式,CPU的空转率为0 采用简单轮转法调度,每小时各作业分别占用25%的CPU时
间,算得该作业组合的平均周转时间约为6小时,而平均带 权周转时间约为3
但是,若以单道程序方式运行: 平均周转时间T=(2+4+6+8)/4=5小时 平均带权周转时间W=(1+2+3+4)/4=2.5
7.作业调度与进程调度
6. 批处理作业的调度(续8)
均衡调度算法(分类排队算法)
基本思想: 根据系统运行情况和作业属性将作业分类 轮流从不同的作业类中挑选作业
目标: 力求均衡地利用各种系统资源,发挥资源使用效率 力求使用户满意
6. 批处理作业的调度(续9)
例1:将待处理作业分成如下队列: 队列1:计算量大的作业 队列2:I/O量大的作业 队列3:计算量与I/O量均衡的作业
450
带权周转 时间
1 2.4 12 4.5
19.9
先来先服务调度算法计算结果
6. 批处理作业的调度(续13)
作业
JOB1 JOB2 JOB3 JOB4
进入时间 估计运行 开始时间
时间
(分钟)
8:00
120
8:00
8:50
50
10:30
9:00
10
10:00
9:50
20
10:10
作业平均周转时间 T = 95
作业控制进程:主要负责控制作业的运行,具体解释 执行作业说明书的每一个作业步,并创建子进程来完 成相应步骤
一个作业步的处理:
(1)建立子进程
(2)为其申请资源
(3)访问该作业的JCB (4)释放占有资源
(5)撤消子进程等
作业控制程序只有一个
对应每一处于执行状态的作业有一作业控制进程
9. 作业退出
16.3
最高响应比优先作业算法计算结果
6. 批处理作业的调度(续15)
(7)多道程序对平均周转时间的影响
作业流在多道环境下运行 平均周转时间、带权平均周转时间
比单道环境下都有明显改善
不是任意作业组合都能改善调度性能 有时甚至可能变坏
6. 批处理作业的调度(续16)
例:四个各需两小时作业同时投入运行,I/O等待时间均占 25%,即占CPU时间各为1.5小时
进入状态
后备状态
运行状态
退出状态
数据
数据
…
输
作
源程序
入
业
作业说 明书
程
调
序
度
输
输入设备
入
井
作业控制进程
运行
进程 调度
作业控制块是批处理作业存在的标志 保存有系统对于作业进行管理所需要的全部信
息 位于磁盘区域中
3. 作业控制块与作业表(续1)
(2)作业控制块的内容
作业控制块中所包含的信息数量及内容因系 统而异
较简单的系统 较复杂的系统
3. 作业控制块与作业表(续2)
作业标知 用户名称 用户帐号 调度信息 资源需求 作业状态 作业类别 输入井地址 输出井地址 进入系统时间 开始处理时间 作业完成时间 作业退出时间 资源使用情况
作业控制块JCB和作业:一一对应关系
5. 作业的建立(续1)
(1)作业的输入
将作业程序、数据和作业说明书从输入设备(例如 键盘)输入到外存,并形成初始信息
作业输入方式
联机输入方式 脱机输入方式 SPOOLing系统
5. 作业的建立(续2)
联机输入方式 用户和系统通过交互会话来输入作业 外围设备直接和主机连接
(3)系统进行作业调度的决策因素
作业到达时间 预先为作业确定的优先级
系统可测定的其他因素: 作业所需的CPU时间C 存储要求M 打印输出的行数L 其他的资源要求
6. 批处理作业的调度(续6)
(4)常见的批处理作业调度算法
先来先服务算法(FCFS:First Come First Serve)
脱机输入方式 为了解决单台设备联机输入时的CPU浪费问题
5. 作业的建立(续3)
(2)JCB的建立 在系统把作业信息输入到输入井之后 根据作业说明书和有关作业信息在外存的位置等 建立作业控制表JCB
JCB包含对作业进行管理所必须的信息
JCB表的数量是一个常数 外存输入井的大小有限
只有在获得JCB表项和足够输入井空间后 作业才可能创建成功
1
i 1
n
n为被测定作业流中的作业数
6. 批处理作业的调度(续4)
平均带权周转时间 带权周转时间W=T/r=周转时间/运行时间
n Ti
1
W=( i1 )ri × n
ri 为某作业i的实际执行时间
T:衡量不同调度算法对同一个作业流的性能 W:同一调度算法对不同作业流的性能衡量
6. 批处理作业的调度(续5)
调度时,在三个队列中各取一些作业 在内存中的作业有的使用处理机 有的使用外部设备
使得系统的各种资源能得到充分利用
6. 批处理作业的调度(续10)
例2:将待处理作业分成如下三个队列: 队列1:长作业 队列2:中等长度作业 队列3:短作业
调度时 取队列1一作业,队列2一作业,队列3一作业
长作业用户和短作业用户均比较满意
最短作业优先算法(SJF:Shortest Job First)
最高响应比优先算法 (HRN:Highest Response Ratio Next)
响应比R = 作业周转时间 / 作业处理时间 =(作业处理时间+作业等待时间)/ 作业处理时间 = 1 +(作业等待时间 / 作业处理时间)
6. 批处理作业的调度(续7)
• 把输出结果送到输出设备上(启动缓输出进程完成) • 回收各种资源
10. SPOOLing系统工作原理
全称:Simultaneous Peripheral Operations On-Line
含义: 同时的外围设备联机操作(假脱机技术)
包括: 输入程序模块 输出程序模块 作业调度程序
10. SPOOLing系统工作原理(续1)
作业能否占用处理器?什么时间能够占用处理器? 由进程调度来决定
进程的初始状态为就绪状态 进程调度选择当前可占用 CPU处理进程,当它让出处理器
时,进程调度就再选另一作业的进程 作业调度与进程调度相互配合,实现作业的并行
8. 批处理作业的控制
当作业为执行态时,作业调度程序为其建立一作业控 制进程, 由该进程控制作业运行
第三章 用户接口与作业管理
一、用户与操作系统的接口
作业级接口 程序级接口 1. 作业级接口
操作系统为用户对作业运行全过程控制提供的功能 (1) 联机接口(交互式) (2) 脱机接口