N计算机操作系统教程第三章2_第1页
N计算机操作系统教程第三章2_第2页
N计算机操作系统教程第三章2_第3页
N计算机操作系统教程第三章2_第4页
N计算机操作系统教程第三章2_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机操作系统教程---------Linux实例分析程骅信息科学与工程学院操作系统的用户接口1作业管理2.批处理的作业管理3.处理机调度级别4.Linux系统调度用实现5.第3章作业管理及用户接口

3.1

操作系统的用户接口程序级接口作业控制级接口3.1.1程序级接口

用户在程序中直接使用系统调用指令来调用操作系统的有关功能。1.什么是系统调用指令2.系统调用指令的形式程序级接口(通过OS提供的一套系统调用来定义)3.系统调用执行过程4.处理机的状态及特权指令管态:

处理机在执行操作系统的程序代码时所处的状态目态:

处理机在执行用户程序和其它系统应用程序时所处的状态3.1.2作业控制级接口作业级接口:是操作系统为用户在作业一级请求系统服务而设置的脱机用户接口(批处理)——作业控制语言这种接口主要是用于批处理系统联机用户接口(交互式)——命令级接口(键盘命令)用于以交互方式请求操作系统服务命令行接口图用用户界面命令级接口:命令行接口CommandlineInterface命令级接口:图用户界面GraphicalUserInterface3.2作业管理3.2.1作业的基本概念作业:用户在一次计算过程中或一次事务处理过程中,要求计算机系统所做工作的总称。作业步:一个作业可划分成若干部分,处理作业的各个独立的子任务称为一个作业步。作业流:把若干作业依次放在输入设备上,在操作系统控制下依次运行用户作业作业步作业步进程进程线程线程.........由用户创建由用户指定由系统创建作业、作业步进程和线程的关系基本概念作业的组成:由程序、数据和作业说明书三部分组成。作业的处理过程:作业的类型:脱机作业------脱机用户接口------批处理方式联机作业------联机用户接口------交互式方式3.2.2作业控制方式1.批处理方式2.交互控制方式(1)操作控制命令

(2)菜单技术

(3)窗口技术

交互式系统作业管理由一组操作系统命令实现,采用人机对话的方式来控制作业的运行。为联机用户接口方式接口方式:命令驱动方式窗口系统与菜单驱动方式命令文件方式命令驱动方式用户通过控制台终端输入操作系统提供的命令来控制自己的作业运行,系统接受到一条命令后由命令处理程序解释并执行,然后通过屏幕显示将结果报告给用户。用户根据结果决定下一步的操作,直到作业完成。基本任务:解释命令,传送命令以便执行接受系统信息,提交给用户(以响应语言的形式)特点:交互式命令的接口复杂,系统利用率低;控制灵活方便接口包括:一组联机命令,终端处理程序,命令解释程序终端处理与命令解释程序终端处理程序用户同操作系统的通信通过一个输入/输出装置来实现,由一个终端处理程序管理和控制直接影响命令接口的一些问题回送显示(Echoing)提前打入(Typeahead)字符变换行缓冲中断字符(BreakCharacters)命令解释程序两种处理方法:由终端命令解释程序直接处理由子进程代为处理命令接口的结构命令接口由命令处理器来实现命令处理器的实现方式:作为OS的一个部分,如,OS/MVT或VAX/VMS作为OS的一个独特模块,能方便地修改或替换,如RT-11或CP/M作为一易于被替换的普通程序,如UNIX在某些系统中,可能用专门设计的命令接口替代标准的命令接口,如,多用户UNIX,用户可有不同命令接口命令语言命令语言规定由OS执行的一系列操作多数命令行中要给出一些参数,每一命令语句实际上是带有参数的一个过程调用一个命令语言通常提供下列几组命令:(1)系统访问命令(2)文件管理命令(3)编辑、编译和执行命令(4)询问命令(5)操作员专用命令命令行:规定由操作系统执行的一系列操作命令行、命令格式、命令分类、命令简化窗口系统与菜单驱动方式命令行方式:要求用户记忆命令格式图形用户接口方式:用户可利用鼠标对屏幕上的图标进行操作,完成与操作系统的交互,从而减少记忆内容,方便用户使用。图形用户接口的技术基础:高分辩显示器和鼠标效率没有命令行方式高命令文件方式把一系列命令组装成文件的方法,然后用文件名作为命令名执行另外一系列命令针对大量顺序操作功能而设计,实现了联机状态下的批处理操作批处理命令可以是专门的命令,也可是系统的基本命令;还有有关的语法结构,循环、分支、转移、判别等,构成一套特殊的命令语言特点:接受参数、变量,宏变量替换允许嵌套形式调用其他命令文件允许参数来自终端的命令文件本身允许执行显示到终端、存入文件或送入打印机允许命令加入注释出错时允许用户干预可把输入传给程序,可有循环、分支、转移等例:UNIX的作业管理shell命令处理程序1.shell的类型2.初始化文件3.基本特征4.输入输出重定向5.管道6.后台执行7.环境变量和内部变量8.别名9.常用的外部命令批处理3.3批处理作业的管理3.3.1批处理作业的组织3.3.2批处理作业的输入3.3.3作业控制块是作业的描述信息与控制信息批处理系统作业处理把对作业进行控制的意图连同程序和数据及发生故障后的处理措施一起输入系统中,由系统根据该意图来控制作业的执行。为脱机用户接口方式由作业控制语言JCL组成作业控制语言JCL书写作业说明书的语言称为作业控制语言用于描述批处理作业处理过程控制意图的一种特殊程序类别:包括I/O命令、编译命令、操作命令及条件命令等脱机用户接口的形式作业控制卡用在早期批处理系统管理中。使用作业控制语言JCL,穿孔在卡片上作业说明书使用某些作业控制命令将用户对作业的意图写成作业说明书,实现对作业的控制。表达用户对作业的控制意图内容:作业的基本描述、作业控制描述、资源要求描述作业控制块

(JCB,JobControlBlock)用来对作业进行描述的数据结构称为作业控制块(JCB)作业控制块是批处理作业存在的标志保存系统对于作业进行管理所需要的全部信息位于磁盘区域中,和作业一一对应内容:信息数量及内容因系统而异生命周期:建立,使用,撤销3.3.4作业状态1.提交状态(进入状态)用户通过输入设备向系统提交一个作业时所处的状态。2.后备状态用户作业经输入设备送入输入井中存放,等待进入内存时所处的状况3.执行状态(执行状态)作业分配到所需资源,被调入内存时所处的状况4.完成状态(退出状态)作业完成了计算任务,结果由打印机输出批处理作业的状态及转换3.4处理机调度的级别高级调度:又称为作业调度

根据一定的算法,从输入的一批作业中选出若干个作业调入内存.2.低级调度:又称进程调度

根据一定的调度算法,从就绪队列中选择一个进程,使其获得处理机执行。3.线程调度

作业调度的功能1)记录系统中各个作业的情况2)按照某种调度算法从后备作业中挑选作业3)为选中的作业分配内存和外设等资源并为作业建立相应的进程4)作业结束后进行善后处理工作,即收回该作业所占用的全部资源,撤消与该作业相关的全部进程和该作业的JCB

3.4.1作业调度2.性能评价标准(1)调度策略的选择1)提高处理机与外设的并行程度2)提高主存的利用效率3)提高作业的吞吐量4)作业调度算法应尽量简单,使系统的时间和空间开销最小(2)作业调度性能衡量1)周转时间作业i的周转时间:Ti=Tei–Tsi作业的平均周转时间:

2)带权周转时间作业i的带权周转时间:Wi=Ti∕TriTei:作业i的完成时间Tsi:作业i的提交时间Ti:作业i的周转时间Tri:作业i的执行时间作业的平均带权周转时间:

(1)先来先服务(FCFS)

3.常用的作业调度算法优点:算法简单、便于实现

缺点:导致短作业等待时间过长

作业名进入输入井时间需计算时间需内存量(KB)A8:064215B8:183060C8:362450D9:182410E9:181220(2)短作业优先算法(SJF)优点:作业平均等待时间最小和作业吞吐重量大

缺点:若系统不断接纳新作业,则可能导致大作业长期等待

(3)最高响应比优先算法(HRN)响应比=作业等待时间∕作业运行时间

(4)优先级算法分为静态优先数法和动态优先数法

作业优先数=(等待时间)2-所需运行时间-16×输出量

例如:

1.

进程调度的功能

3.4.2进程调度

(1)记录当前进程的情况

(2)选择占有处理机的进程。(3)进行进程上下文切换1)完成任务。正在运行的进程完成其任务后,

释放对CPU的控制

2)等待资源。由于等待某些资源或事件,正在

运行的进程不得不放弃CPU

2.进程调度的时机3)运行到时。在分时系统中,当前进程使用完规

定的时间片,时钟中断使该进程让

出CPU

4)发现标志。核心处理完中断或陷入事件后,

发现系统中“重新调度”标志被置上

(1)保存处理器的上下文,包括程序计数器和其它寄存器(2)用新状态和其它相关信息更新正在运行

进程的PCB3.进程上下文切换(3)把原来的进程移至就绪或等待队列(4)选择另一就绪进程并更新被选进程PCB

(5)从被选中进程中重装入CPU上下文

3.6.1进程调度

调度方式采用“抢占式优先级”方式调度策略3.5Linux系统中的进程调度

SCHED_FIFO适合于实时进程2)SCHED_RR对应“时间片轮转法”,适合于

每次运行需要较长时间的实时进程3)SCHED_OTHER是传统的UNIX调度策略,

适合于交互式的分时进程

1)当前进程调用nanosleep()或者pause(),使自己进入睡眠状态,主动让出一段时间CPU的使用权

3.调度时机2)进程终止,永久地放弃对CPU的使用

3)在时钟中断处理程序执行过程中,发现当前进程连续

运行的时间过长

4)当唤醒一个睡眠进程时,发现被唤醒的进程比当前进

程更有资格运行

5)一个进程通过执行系统调用来改变调度策

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论