导图社区 操作系统桥梁作用篇
操作系统个人学习总结中国大学慕课网青岛大学
编辑于2020-03-07 05:59:18桥梁作用篇
概述
作业管理模块是操作系统中最外层的直接面对用户的模块
为用户提供系统接口,将用户需求提交系统,再将处理结果反馈给用户
负责用户管,核准用户合法性,管理用户使用资源及费用等情况
作业
内容
用户提交给计算机系统的任务
程序:完成任务所要执行的代码
数据:代码执行过程处理的数据
类别
批处理型作业
批处理方式提交的作业
主要用于巨型机和大型服务器系统
成批提交作业后,系统将所有作业组织成作业流,然后对它们逐一进行控制和调度(脱机运行)
交互型作业
以交互方式提交的作业
广泛用于各种系统
可以独占一台终端机,对自己的作业实施交互控制(联机运行)
实时型作业
响应时间有实时需求的作业
用于实时系统
根据作业对响应时间严格性要求不同可细分为硬实时和软实时作业
管理调度方式
批处理
批作业管理机制
作业控制块JCB
作业状态
作业调度
作业的装入和卸出
交互
不经作业调度
直接进入内存
通过进程调度和进程控制管理
实时
实时任务管理和实时调度
JCB
用户管理
功能
创建新用户
删除老用户
验证用户身份
维护用户信息
配置各个用户的运行环境
为用户设置使用权限
用户组的设置与管理
用途
方便计费
方便系统安全管理
接口管理
功能
为用户提供不同的用户接口
用途
为用户使用计算机系统,运行不同类型的作业提供方便
批作业的管理控制与调度
功能
将批作业收容到外存的‘作业输入井’,建立作业控制块
记录作业控制信息
通过作业调度选择后备作业转载入内存
在作业完成后将作业卸出
要点
作业状态
作业控制块
作业调度
作业的装载与卸出
操作系统接口
操作员级接口
脱机命令接口(作业控制说明语言)
批处理系统中,用户提交给系统的一个计算任务,就是一个作业
批作业
程序
数据
作业控制说明书
作业控制说明书由作业控制语言编写,也就是由一条条控制作业如何运行的命令组成
作业控制说明语言是由一组作业控制命令组成的集合,专门用于批处理系统
联机命令接口
命令行方式操作接口(键盘命令)
图形化界面操作指令(鼠标点击)
程序员级接口(系统调用)
系统指令
特权指令
直接管理控制系统资源和状态的泛指,用错可能导致整个系统的奔溃
比如请内存、设置时钟等
由系统程序执行
非特权指令
由应用程序执行
系统调用的服务例程
系统资源的分配、驱动、调度以及管理数据的检索、修改等操作,是不能允许用户程序自行处理的,否则就无安全性及管理控制之说了
操作系统以系统调用形式提供一系列实现预定底层功能的内核函数,每个系统调用都有写好的服务例程,每个服务例程都有其入口地址
CPU的工作状态
管态(系统态)
执行系统程序的状态
允许执行所有指令
目态(用户态)
执行用户程序的状态
只允许执行非特权指令
作业调度(高级调度)
批处理系统中采用的一级调度
主要功能是从处于后备状态的作业中按照某种算法选择一道或者几道作业装入内存
主要解决的是作业与作业之间的自动转接问题,即免去作业控制中的人工操作的问题
作业调度算法
4种基础的作业调度算法
先来先服务 FCFS
选择最先进入后备队列的作业装入内存
优点
比较容易实现
缺点
不区分作业长短
不顾及轻重缓急
对时间要求紧迫的作业不能做到急事急办
短作业优先 SJF
从后备作业中选择运行时间最短的作业装入内存
优点
照顾短作业用户的利益
提高系统吞吐量
让作业的平均周转时间降下来
缺点
推迟长作业运行,可能出现饥饿现象
估计运行时间本身又可能不太准确
高响应比优先 HRF
定义
R = (tw +ts)/ts = tw/ts + 1 ~~tw/ts
tw:作业的等待时间
ts:作业的估计运行时间
优点
折衷考虑到作业进入系统的先后次序
又顾及到作业的运行长度
缺点
每次调度都需要计算每个作业的响应比,开销大
高优先级优先 HPF
该算法每次总是选择后备作业中优先级最高的作业装入内存
当一个作业进入系统,根据它的属性为作业赋予了以一个优先级
一种比较灵活的调度算法,优先级可以根据需要灵活确定
经常作为基于作业运行紧迫性的一种调度方案
均衡调度算法
作业分类
计算型
I/O型
输入型
输出型
均衡型
根据内存容量的限制,选择一组资源互补型的作业装入
目的
在作业运行期间,尽可能提高CPU和各种设备之间的并行度
作业调度性能的衡量准则
系统吞吐量
单位时间内系统完成的工作量称吞吐量
作业调度要追求的第一目标
Q吞吐量与作业的平均周转时间T有如下关系
T越小Q越大
平均周转时间=总周转时间/个数。
对短作业优惠
这一准则主要为了吸引中小用户使用计算机
为了描述系统对短小作业优惠程度,可使用作业的平均带权周转时间W作为评价参数
平均带权周转时间 = 作业的周转时间T/系统为其提供服务的服务时间
其他指标
处理机利用率高
响应时间有保证
优先权有保证
截止时间有保证
资源均衡利用
作业的管理控制
批作业的状态
后备状态
子主题
驻留状态(运行状态)
已经提交到外存的‘作业收容井’,等待调度装入
完成状态
作业相关代码已执行结束,已不再占有内存空间和系统各种设备,正在等待卸出和数据缓输出
作业控制块JCB
为了掌握作业的有关情况,管理程序需要对作业进行必要的登记
登记信息
作业号
作业类别
用户名及用户账号
作业状态
提交到系统的时间
优先级别
作业所在的外存位置
资源需求
运行长度
已经运行的时间
JCB队列指针
收费标准
不同的的作业I/O方式
联机I/O
一种早期的I/O方式
主机连接I/O设备,在作业运行过程中,占用着CPU进行输入和输出过程
缺点:快速的CPU等待慢速的I/O设备
脱机I/O
将I/O操作与主机运行相脱离的方式
例子:IBM 7094上的脱机输入输出系统
推荐:电影隐藏的任务
Spooling假脱机I/O(在线外设并行访问)
现代操作系统I/O方式
将输入与输出功能从操作系统内核中分离出来,单独形成I/O进程来完成用户的输入输出工作
作业控制方式
操作系统必须对用户作业的全过程实施控制
脱机作业控制
一般适用于批处理系统中
所有作业的控制信息都由用户按照系统提供的作业控制语言来编制
用户提交作业之后,作业的运行完全脱离用户的干预
联机作业控制
大部分实时系统和实时系统采用的一种作业控制方式
整个控制过程由用户使用操作系统提供的操作命令,与计算机通过交互会话式来控制作业执行
系统调用
系统调用是应用程序获得操作系统服务的唯一途径
进程和作业管理
文件操作类
设备管理类
主存管理类
信息维护类
通信类(进程线程之间)
系统调用和API
系统调用在管态下
API在目态下
系统调用实现
编写系统调用处理内核函数
设计一张系统调用入口地址表
每个入口地址都指向系统调用的处理内核函数,有的系统还包含系统调用自带参数的个数
陷入处理机制,开辟现场保护区,以保存发生系统调用时的处理器现场