【软件测试】操作系统篇:第二章 作业管理
来源:互联网 发布:.engineer域名 编辑:程序博客网 时间:2024/04/29 11:01
第二章 作业管理
1、基本概念
1)作业(Job)是让计算机完成一件事或任务,可大可小,可多可少。
2)作业步(Job steps) :作业顺序执行的工作单元。
3)作业流(Job Stream) :作业步的控制流程。
4)作业类别分为终端型作业和批量型作业。
2、三代用户界面
1)第一代用户界面:操作命令和系统调用(一维空间)
2)第二代用户界面:图形界面(二维空间)
3)第三代用户界面:虚拟现实的界面元素(三维空间)
3、界面管理的功能
1)实现高效的人机通信
2)改善计算机的可用性、可学性和有效性
3)支持三维及多媒体技术
4)为广大用户提供适应不同应用的众多界面构造工具及语言
4、作业调度
1)作业调度功能
(1)采用JCB(作业控制块)表格,记录各作业状况;
(2)按选定的算法,从后备作业队列中选出一部分(多道)或一个作业投入运行;
(3)为被选中的作业做好运行前的准备工作,例如建立相应的执行进程和分配系统资源;
(4)作业运行结束的善后处理工作。
2)作业调度算法
(1)先来先服务(FCFS)
作业平均周转时间=å(作业完成时刻i-作业提交时刻i)/n个作业
(2)最短作业优先:在作业内容参差很不均衡时有合理性
(3)最高响应比优先
响应比(系数)=作业响应时间(等待+运行)/作业运行时间
(4)定时轮转法:按时间片分为固定时间片和不固定时间片
(5)优先数法:急事先办的原则
(6)事件驱动法:MS-Windows采用此算法
5、Shell命令解释和控制语言
Shell是用户与操作系统交互作用的界面。作为命令解释程序它接收用户输入的命令,进行分析,创建子进程实现命令的功能,等子进程终止工作后,发出提示符。此外,Shell还是一种高级程序设计语言,有变量、关键字、各种控制语句,支持函数模块,有自己的语法结构。
6、例题解析
【例1】下表给出作业l,2,3的提交时间和运行时间。采用先来先服务调度算法和短作业优先调度算法,试问平均周转时间各为多少?(时间单位:小时,以十进制进行计算 。)
作业号
提交时间
运行时间
1
2
3
0.0
0.4
1.0
8.0
4.0
1.0
分析 解这样的题关键是要根据系统采用的调度算法,弄清系统中各道作业随时间的推进情况。我们用一个作业执行时间图来形象地表示作业的执行情况,帮助我们理解此题。
采用先来先服务调度算法,是按照作业提交的先后次序挑选作业,先进入的作业优先被挑选。然后按照“排队买票”的办法,依次选择作业。其作业执行时间图如下:
采用短作业优先调度算法,作业调度时根据作业的运行时间,优先选择计算时间短且资源能得满足的作业。其作业执行时间图如下:
由于作业1,2,3是依次到来的,所以当开始时系统中只有作业1,于是作业1先被选中。在8.0时刻,作业1运行完成,这时系统中有两道作业在等待调度,作业2和作业3,按照短作业优先调度算法,作业3只要运行1个时间单位,而作业2要运行4个时间单位,于是作业3被优先选中,所以作业3先运行。待作业3运行完毕,最后运行作业2。作业调度的次序是1,3,2。
另外,要记住以下公式:
作业i的周转时间Ti=作业完成时间-作业提交时间
系统中n个作业的平均周转时间 ,其中Ti为作业i的周转时间。
解:
采用先来先服务调度策略,则调度顺序为l、2、3。
作业号 提交时间 运行时间 开始时间 完成时间 周转时间
1 0.0 8.0 0.0 8.0 8.0
2 0.4 4.0 8.0 12.0 11.6
3 1.0 1.0 12.0 13.0 12.0
平均周转时间T=(8+11.6+12)/3=10.53
采用短作业优先调度策略,则调度顺序为l、3、2。
作业号 提交时间 运行时间 开始时间 完成时间 周转时间
1 0.0 8.0 0.0 8.0 8.0
3 1.0 1.0 8.0 9.0 8.0
2 0.4 4.0 9.0 13.0 12.6
平均周转时间T=(8+8+12.6)/3=9.53
【例2】在一个单道的程序设计系统中,有3个作业J1、J2、J3,它们到达输入井的时间分别为8:50、9:00、9:30,它们需要执行的时间分别为1.5小时、0.4小时、1小时。系统在10:00按响应比高者优先算法对它们进行调度,请回答:
(1)作业被选中执行的次序是什么?
(2)三个作业被选中时的响应比分别是多少?
分析 响应比=作业周转时间/作业运行时间
=1+作业等待时间/作业运行时间
系统在10:00,计算作业的响应比:
以J1为例,它的作业计算时间是1.5小时,即90分钟;J1从8:50到达输入井,在10:00时刻,J1的等待时间为70分钟,因此作业J1的响应比为:1+70分钟/90分钟=1.77
同理,J2:1+60分钟/24分钟=3.5 J3:1+30分钟/60分钟=1.5
因此按照响应比高者优先算法,优先调度J2。
在10:24,J2完成。这时计算J1、J3的响应比:
J1:1+(70+24)分钟/90分钟=2.04 J3:1+(30+24)分钟/60分钟=1.9
按照响应比高者优先算法,优先调度J1。
在11:54,J1完成,系统调度J3,J3的响应比为1+(30+24+90)分钟/60分钟=3.4 因此,作业被选中执行的次序是J2、J1、J3。
三个作业被选中时的响应比分别是:J1,2.04;J2,3.5;J3,3.4。
解:
(1)作业被选中执行的次序是J2、J1、J3。
(2)三个作业被选中时的响应比分别是:J1,1.04;J2,2.5;J3,2.4。
【例3】设有进程A、B、C、D依次进入就绪队列(相隔一个时间单位),它们的优先级(优先数大的优先级较高)如下表所示:
进程
CPU时间
优先数
A
20
3
B
15
1
C
8
4
D
10
3
试问采用“先来先服务”、“静态优先数法”调度算法(注:优先数大的优先级高),选中进程的执行次序。
解:采用先来先服务调度算法,按照进程进入就绪队列的先后次序占有CPU,其执行次序是A-B-C-D。
采用静态优先数法,进程A最先就绪,在0时刻先占有CPU运行,随后1时刻进程B进入就绪队列,2时刻进程C进入就绪队列,3时刻进程D进入就绪队列。由于采用静态优先数法,不容许随时间的推移改变进程的优先级,所以当进程A运行结束时,系统的就绪队列中有B、C、D三个进程,而进程C优先级最高,于是选中C;这样分析下去,进程的执行次序是A-C-D-B。
官方博文地址:http://www.17core.com/blog/html/201102/179.html
- 【软件测试】操作系统篇:第二章 作业管理
- 【软件测试】操作系统篇:第二章 作业管理
- 操作系统第二章作业
- 【软件测试】操作系统篇:第三章 文件管理
- 【软件测试】操作系统篇:第四章 存储管理
- 【软件测试】操作系统篇:第六章 进程及处理机管理
- 【软件测试】操作系统篇:第三章 文件管理
- 【软件测试】操作系统篇:第四章 存储管理
- 【软件测试】操作系统篇:第六章 进程及处理机管理
- 软件第二章作业
- 操作系统 第七章 作业管理
- 软件测试管理--第二章 2.1节
- 软件测试管理--第二章 2.2节
- 软件测试管理--第二章 2.2节
- 操作系统第二章 进程管理
- 【软件测试】操作系统篇:第七章 操作系统结构和程序设计
- 【软件测试】操作系统篇:第七章 操作系统结构和程序设计
- 【软件测试】操作系统篇:前言
- 给想当程序员的大二学生的建议
- 给想当程序员的大二学生的建议
- Android启动研究(三)
- 钱能C++语言读书笔记(九)类型转换之动态转型(dynamic_cast)
- 001 : log4j 报错
- 【软件测试】操作系统篇:第二章 作业管理
- 纯vc sdk实现http post 方式上传数据到web服务器
- vs2008下载
- 科普文章-人脸识别发展历史介绍
- 彻底杜绝SQL注入
- VC操作EXCEL实例
- asp利用owc11生成excel,代码如下:
- Centos IP、DNS设置
- C# TextBox只能输入数字(不包括点号)