操作系统简介:作业管理

作业管理

  • 一、作业管理
    • 1.1 作业控制
    • 1.2 作业的状态及其转换
    • 1.3 作业控制块和作业后备队列
  • 二、作业调度
    • 2.1 调度算法的选择
    • 2.2 作业调度算法
    • 2.3 作业调度算法性能的衡量指标
  • 三、人机界面

作业:系统为完成一个用户的计算任务(或一次事务处理)所做的工作总和。如对用户编写的程序经过编译、连接、装入以及执行等步骤得到结果,这其中的每一个步骤称为一个作业步。
作业管理程序:操作系统用来控制作业进入、执行和撤销的一组程序。

一、作业管理

1.1 作业控制

两种方式控制用户作业的运行:脱机和联机。

  1. 在脱机控制方式中,作业运行的过程是无须人工干预的,因此,用户必须将自己想让计算机干什么的意图用作业控制语言(JCL)编写成作业说明书,连同作业一起提交给计算机系统。
  2. 在联机控制方式中,操作系统向用户提供了一组联机命令,用户可以通过终端输入命令,将自己想让计算机干什么的意图告诉计算机,以控制作业的运行过程,此过程需要人工干预。

作业组成:程序、数据和作业说明书。

  • 作业说明书包括作业基本情况、作业控制、作业资源要求的描述,它体现用户的控制意图。其中,作业基本情况包括用户名、作业名、编程语言和最大处理时间等;作业控制包括作业控制方式、作业步的操作顺序、作业执行出错处理;作业资源要求的描述包括处理时间、优先级、主存空间、外设类型和数量、实用程序要求等。

1.2 作业的状态及其转换

作业的状态有4种:提交、后备、执行和完成。
在这里插入图片描述

  1. 提交。作业提交给计算机中心,通过输入设备送入计算机系统的过程称为提交状态。
  2. 后备。通过 Spooling 系统将作业输入到计算机系统的后备存储器(磁盘)中,随时等待作业调度程序调度时的状态。
  3. 执行。一旦作业被作业调度程序选中,为其分配了必要的资源,并建立相应的进程后该作业便进入了执行状态。
  4. 完成。当作业正常结束或异常终止时,作业进入完成状态。此时,由作业调度程序对该作业进行善后处理。如撤销作业的作业控制块,收回作业所占的系统资源,将作业的执行结果形成输出文件放到输出井中,由 Spooling 系统控制输出。

1.3 作业控制块和作业后备队列

作业控制块(JCB)是记录与该作业有关的各种信息的登记表。JCB 是作业存在的唯一标志,主要包括用户名、作业名和状态标志等信息。
作业后备队列由若干个JCB 组成。由于在输入井中有较多的后备作业,为了便于作业调度程序调度,通常将作业控制块排成一个或多个队列,而这些队列称为作业后备队列。

二、作业调度

2.1 调度算法的选择

选择的调度算法必须与系统的整个设计目标一致。如批处理操作系统要求处理能力;分时操作系统要求用户的响应时间;实时操作系统要求即使响应和处理与时间有关的时间等。调度算法需要考虑一下因素:

  1. 均衡使用系统资源。使“IO 繁忙”的作业和“CPU 繁忙”的作业搭配起来执行。
  2. 平衡系统和用户的要求。确定算法时要尽量缓和系统和用户之间的矛盾。
  3. 缩短作业的平均周转时间。在多用户环境下,作业“立即执行”往往难以做到,但是应保证进入系统的作业在规定的截止时间内完成,而且系统应设法缩短作业的平均周转时间。

2.2 作业调度算法

单道批量处理算法:

  1. 先到先服务;
  2. 短作业优先;
  3. 响应比高者优先。响应比定义为:
    在这里插入图片描述
    作业响应时间为作业进入系统后的等待时间与作业的执行时间之和。响应比高者优先算法在每次调度前都要计算所有备选作业(在作业后备队列中)的响应比,然后选择响应比最高的作业执行。该算法比较复杂,系统开销大。

多道批量处理:在多道批量处理系统中,通常采用优先级调度算法和均衡调度算法进行作业调度。

  • 优先级调度算法的基本思想是:为了照顾时间要求紧迫的作业,或者为了照顾“IO 繁忙”的作业,以充分发挥外设的效率;或者在一个兼顾分时操作和批量处理的系统中,为了照顾终端会话型作业,以便获得合理的响应时间,需要采用基于优先级的调度策略,即高优先级优先由用户指定优先级,优先级高的作业先启动。
  • 均衡调度算法的基本思想是:根据系统的运行情况和作业本身的特性对作业进行分类。作业调度程序轮流地从这些不同类别的作业中挑选作业执行。这种算法力求均衡地使用系统的名种资源,即注意发挥系统效率,又使用户满意。例如,将出现在输入井中的作业分成A、B、C三个队列。A 队:短作业,其计算时间小于某个值,无特殊外设要求,B队:要用到磁带的作业,它们要使用一条或多条私用磁带。C队:长作业,其计算时间超过一定值。

2.3 作业调度算法性能的衡量指标

在一个以批量处理为主的系统中,通常用平均周转时间或平均周转系数来衡量调度性能的优劣。
在这里插入图片描述
从用户的角度来说,总是希望自己的作业在提交后能立即执行,这意味着当等待时间为0时,作业的周转时间最短.。但是,作业的执行时间,并不能直观地衡量出系统的性能,而周转系数却能直观反映系统的调度性能。从整个系统的角度,不可能满足每个用户的这种要求,而只能是系统的平均周转时间或平均周转系数最小。
Note:先到先运行,后到有拥堵时先运行短作业,采用短作业优先的作业调度算法。

显然,作业的平均周转时间越短,意味着这个作业在系统中停留的时间越短,因而系统的利用率也就越高。另外,也能使用户都感到比较满意。因此,用平均周转时间和平均周转系数来衡量调度性能比较合理。就平均周转时间和平均周转系数来说,最短作业优先算法最小,先来先服务算法最大,响应比高者优先算法居中。

三、人机界面

用户界面(User Interace)是计算机中实现用户与计算机通信的软件、硬件部分的总称。
用户界面也称用户接口,或人机界面。
用户界面的硬件部分包括用户向计算机输入数据或命令的输入装置,以及由计算机输出供用户观察或处理的输出装置。用户界面的软件部分包括用户与计算机相互通信的协议、约定、操纵命令及其处理软件。计算机用户界面的发展过程可分为4个阶段:控制面板式(开关、穿孔纸、指示灯及打印机)、字符用户界面(键盘、显示器及打印机)、图形用户界面(图形、视频等超文本)及新一代用户界面(VR)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/893604.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

RabbitMQ 核心功能详解

引言 在现代分布式系统中,消息队列已经成为一种不可或缺的组件。它不仅能够实现应用之间的解耦,还能提高系统的灵活性和可扩展性。RabbitMQ 是一款基于 AMQP(Advanced Message Queuing Protocol)协议的消息中间件,以其…

【人工智能】人工智能的10大算法详解(优缺点+实际案例)

人工智能(AI)是现代科技的重要领域,其中的算法是实现智能的核心。本文将介绍10种常见的人工智能算法,包括它们的原理、训练方法、优缺点及适用场景。 1. 线性回归(Linear Regression) 模型原理 线性回归…

2021年10月自考《软件开发工具》03173试题

目录 一.选择题 二.填空题 三.简答题 五.综合题 一.选择题 1.下列各项属于集成化开发工具的是 (书中)P96页 A.WORDSTAR B.FLOW C.Dictionary/3000 D.Visual Studio 2.软件工程的思想主要服务于 (书中)P84页面 A.用户 B.项目…

虚拟现实辅助工程技术在现代汽车制造中的重要性

虚拟现实辅助工程(VR Aided Engineering),简称VAE,作为数字化转型的重要手段,在各行各业被越来越广泛的应用。随着汽车变得越来越复杂,虚拟现实辅助工程技术逐渐成为汽车行业产品开发过程中不可或缺的一部分…

Redis --- 第四讲 --- 常用数据结构 --- string类型

一、认识数据类型和编码方式 有序集合,相当于除了存储member之外,还需要存储一个score(权重,分数) Redis底层在实现上述数据结构的时候,会在源码层面,针对上述实现进行特定的优化,来…

3 机器学习之假设空间

归纳(induction)与演绎(deduction)是科学推理的两大基本手段。前者是从特殊到一般的“泛化”(generalization)过程,即从具体的事实归结出一般性规律;后者则是从一般到特殊的“特化”(specialization)过程,即从基础原理推演出具体状况。例如&a…

学习JAVA中的Spring MVC常用注解及三层架构,这一篇就够了

Spring Web MVC 一:什么是 Spring Web MVC?什么是Servlet呢?什么是Servlet API1.1 MVC 定义1.2 什么是Spring MVC ?1.3SpringBoot和SpringMVC的区别 二:Spring MVC中常用注解的使用2.1 RequestMapping:地址映射2.2 RequestBody:请…

Golang | Leetcode Golang题解之第476题数字的补数

题目&#xff1a; 题解&#xff1a; func findComplement(num int) int {highBit : 0for i : 1; i < 30; i {if num < 1<<i {break}highBit i}mask : 1<<(highBit1) - 1return num ^ mask }

大模型缺的脑子,终于在智能体上长好了

智能体是一种通用问题解决器&#xff0c;从软件工程的角度看来&#xff0c;智能体是一种基于大语言模型的&#xff0c;具备规划思考能力、记忆能力、使用工具函数的能力&#xff0c;能自主完成给定任务的计算机程序。 大模型拥有接受输入&#xff0c;分析推理&#xff0c;继而…

k8s备份恢复(velero)

velero简介 velero官网&#xff1a; https://velero.io/ velero-github&#xff1a; https://github.com/vmware-tanzu/velero velero的特性 备份可以按集群资源的子集&#xff0c;按命名空间、资源类型标签选择器进行过滤&#xff0c;从而为备份和恢复的内容提供高度的灵活…

【Linux】【Jenkins】后端maven项目打包教程-Linux版

本次安装版本&#xff1a;2.4 jenkins详细安装教程1、安装git环境2、安装mavne环境2.1 下载依赖2.2、解压、赋权2.2、配置环境变量2.3、验证安装 3、jenkins-插件下载3.1、进入jenkins-->系统管理3.2、进入系统管理-->插件管理3.3、下载两个插件&#xff08;如果之前下载…

创建GitHub仓库和Git更换远程仓库

文章为个人笔记&#xff0c;详情请看reference 创建 GitHub 创建好账号点击自己头像&#xff0c;出现下拉菜单&#xff0c;点击Your profile 创建成功如下 下载Git 绑定用户 设置ssh-key ssh-keygen -t rsa -C “xxxxxx163.com 之后一直en回车 C:\Users\Y\ .ssh id_rsa…

数据不裸奔:如何确保AI分析顾客数据时的隐私保护

在这个信息爆炸的时代&#xff0c;数据已成为最宝贵的资源之一。人工智能&#xff08;AI&#xff09;技术的发展&#xff0c;使得我们能够从海量数据中提取有价值的信息&#xff0c;为商业决策提供支持。然而&#xff0c;随着AI在数据分析领域的广泛应用&#xff0c;顾客隐私保…

Leetcode 1857. 有向图中最大颜色值

1.题目基本信息 1.1.题目描述 给你一个 有向图 &#xff0c;它含有 n 个节点和 m 条边。节点编号从 0 到 n – 1 。 给你一个字符串 colors &#xff0c;其中 colors[i] 是小写英文字母&#xff0c;表示图中第 i 个节点的 颜色 &#xff08;下标从 0 开始&#xff09;。同时…

免费版视频压缩软件:让视频处理更便捷

现在不少人已经习惯通过视频来记录生活、传播信息和进行娱乐的重要方式。但是由于设备大家现在录制的文件都会比较大&#xff0c;这时候就比较需要一些缩小视频的工具了。今天我们一起来探讨视频压缩软件免费版来为我们带来的生动世界。 1.Foxit视频压缩大师 链接直达&#x…

《深度学习》【项目】自然语言处理——情感分析 <上>

目录 一、项目介绍 1、项目任务 2、评论信息内容 3、待思考问题 1&#xff09;目标 2&#xff09;输入字词格式 3&#xff09;每一次传入的词/字的个数是否就是评论的长度 4&#xff09;一条评论如果超过32个词/字怎么处理&#xff1f; 5&#xff09;一条评论如果…

[每周一更]-(第119期):“BP”大揭秘:生物学与金融学中的微小单位竟有如此大不同!

最近&#xff08;2024.09.29&#xff09;央行要把存量房贷在LPR&#xff08;贷款市场报价利率&#xff09;基础上&#xff0c;降低30BP&#xff0c;刚好基因行业内&#xff0c;也有bp的概念&#xff0c;通过发音无法区分&#xff0c;以下就讲解下生物学的bp和金融学的BP的概念的…

【汇编语言】寄存器(内存访问)(三)—— 字的传送

文章目录 前言1. 字的传送2. 问题一3. 问题一的分析与解答4. 问题二5. 问题二的分析与解答结语 前言 &#x1f4cc; 汇编语言是很多相关课程&#xff08;如数据结构、操作系统、微机原理&#xff09;的重要基础。但仅仅从课程的角度出发就太片面了&#xff0c;其实学习汇编语言…

Linuxtop命令查看CPU、内存使用率、解释

1. top 命令 top 是最常用的实时监控工具之一&#xff0c;可以显示 CPU 的总利用率以及各个进程的 CPU 使用情况。在Linux命令行直接输入top即可查看动态原始数据 top 在 top 命令的输出中&#xff0c;最上面的一行会显示 CPU 的使用情况&#xff1a; us&#xff08;User&a…

day01-Qt5入门

day01-Qt5入门 1.下载Qtcreate 官网地址&#xff1a;http://qt-project.org/downloads 2.配置环境变量 将类似于 D:\Qt\Qt5.1.1\5.1.1\mingw48_32\bin 的目录添加到环境变量中 3.创建一个新项目 输入自己的项目名称&#xff0c;后面默认下一部 4.运行第一个项目 在窗口…