已阅读5页,还剩49页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章 操作系统用户界面,2.1 简介 2.2 作业的基本概念:作业、作业步 2.3 作业的建立 2.4 用户接口 2.5 系统调用 2.6 Linux 和Windows的系统调用实例,2.1 简介,操作系统用户界面用户与计算机硬件交互的接口 操作系统用户类型:命令使用用户和程序编程接口用户 命令控制界面操作系统的操作命令界面 程序编程界面操作系统为编程人员提供的接口,操作系统用户的不同界面,操作系统为不同用户提供不同的用户界面 普通用户和管理员用户界面:命令界面 编程人员用户界面:系统调用函数接口,第二章 用户接口与作业管理,2.2 作业(JOB)的基本概念 2.2.1 作业(从用户角度) 编程过程,在一次应用业务处理过程中,从输入开始到输出结束,用户要求计算机所作的有关该次业务处理的全部工作称为一个作业。 作业步:在一个作业的处理过程中,计算机所作的相对独立的工作。作业由不同顺序的作业步组成。,目标程序段,目标程序,第二章 用户接口与作业管理,2.2 作业(JOB)的基本概念 2.2.1 作业(从系统角度) 作业= 程序+数据(作业体)+ 作业说明书(作业控制语言) 在批处理系统中,作业是抢占内存的基本单位,即以作业为单位将程序和数据调入内存。,第二章 用户接口与作业管理,2.2 作业(JOB)的基本概念 2.2.2 作业组织 作业=程序+数据+作业说明书 作业说明书 体现用户的控制意图 包括作业基本情况、作业控制、作业资源要求的描述 作业基本情况:用户名、作业名、编程语言、最大处理时间等 作业控制描述:作业控制方式、作业步的操作顺序、作业执行出错处理 作业资源要求描述:处理时间、优先级、内存空间、外设类型和数量、库函数或实用程序等 它由作业控制语言(JCL)编写,第二章 用户接口与作业管理,2.2 作业(JOB)的基本概念 2.2.2 作业组织 作业控制语言 用户用于描述批处理作业处理过程控制意图的一种特殊程序 书写作业说明书的语言称为作业控制语言(JCL) 例如:批处理文件或shell,第二章 用户接口与作业管理,2.2 作业(JOB)的基本概念 2.2.3 作业的处理过程及状态,第二章 用户接口与作业管理,作业提交:作业的输入; 作业收容(后备状态):作业在外存处于等待状态 作业执行:先到“就绪“,经调度“运行“,有I/O请求“等待“,I/O完成到“就绪“ 作业完成:作业的输出;,2.2 作业(JOB)的基本概念 2.2.3 作业的处理过程及状态,第二章 用户接口与作业管理,2.3作业的建立 一个作业的全部程序和数据输入到外存且在系统中建立了相应的作业控制块(job control blockJCB) 包括:作业的输入、作业控制块的建立 作业的输入:将作业的程序、数据和作业说明书从输入设备输入到外存,并形成有关初始信息 必须有外部启动信号通知系统调用相应的输入管理程序决定了作业的输入方式 作业输入过程的结束也必须由用户给出信号。,第二章 用户接口与作业管理,2.3 作业的建立 2.3.1 作业输入方式 联机输入方式:外围设备和主机直接连接,又称预输入方式,单台设备和主机连接时,I/O与作业处理不能并行;降低了CPU效率 。 多台外设同时联机输入SPOOLING系统,第二章 用户接口与作业管理,2.3 作业的建立 2.3.1 作业输入方式 脱机输入方式:利用低档个人计算机作为外围处理机进行输入处理 在个人机上,用户通过联机方式将作业输入到后援存储器,然后将装有输入数据的后援存储器拿到主机的高速外设上与主机连接。 特点 解决了主机CPU的浪费,以牺牲个人机为代价 灵活性差,需人工干预介质传送,不安全,第二章 用户接口与作业管理,人工完成,第二章 用户接口与作业管理,2.3 作业的建立 2.3.1 作业输入方式 直接耦合方式:将主机和外围低档机通过一个公用的大容量外存直接耦合,特点 保留了脱机方式快速的优点,克服了其人工干预的缺点 需要大容量公用存储器和多台低档机,成本高,第二章 用户接口与作业管理,2.3 作业的建立 2.3.1 作业输入方式 SPOOLING系统:假脱机(Simultaneously Peripheral Operation On Line-同时外围设备联机操作) 系统把作业处理的全过程划分为相对独立的三个部分-输入流、处理流和输出流 spooling-in/spooling-out进程:控制输入/输出,包括输入程序模块、输出程序模块、作业调度程序,第二章 用户接口与作业管理,2.3 作业的建立 2.3.1 作业输入方式 虚拟设备 SPOOLING系统 独占型设备 数量有限,成为系统中的“瓶颈”资源,使进程处于阻塞 状态;设备利用率比较低 虚拟设备技术: 通过共享型设备来模拟独占型设备的动作,使独占型设 备成为共享型设备,提高设备的利用率和系统的效率, 这种设备被称为虚拟设备,实现这一技术的硬件和软件 系统被成为SPOOLing系统,或者假脱机系统。,第二章 用户接口与作业管理,2.3 作业的建立 2.3.1 作业输入方式 SPOOLING系统,第二章 用户接口与作业管理,在系统输入模块收到作业输入请求信号后,输入管理模块中的读过程将信息从输入装置读入缓冲区; 当缓冲区满时,由写过程将信息写到外存输入井中。读过程和写过程反复循环,直到一个作业输入完毕。 当读过程读到一个硬件结束标志之后,系统再次驱动写过程把最后一批信息写入外存,并调用中断处理程序结束该次输入。 然后,系统该该作业建立作业控制块JCB,从而使输入井中的作业进入作业等待队列,等待作业调用程序选中后进入内存。,工作过程,第二章 用户接口与作业管理,2.3 作业的建立 2.3.1 作业输入方式 SPOOLING系统作业和进程状态转换,第二章 用户接口与作业管理,2.3 作业的建立 2.3.1 作业输入方式 SPOOLING系统工作原理 作业执行前用慢速设备将作业预先输入到后援存储器(如磁盘、磁鼓,称为输入井)中,称为预输入 作业运行后,使用数据时,从输入井中取出 作业执行不必直接启动外设输出数据,只需将这些数据写入输出井中 作业全部运行完毕,再由外设输出全部数据和信息,称为缓输出 实现了对作业输入、组织调度和输出的统一管理 使外设在CPU直接控制下,与CPU并行工作(假脱机),第二章 用户接口与作业管理,假设系统中全部打印机采用了虚拟设备技术(即Spooling技术),当某进程要求打印输出时,输出Spooling并不是将某台打印机分配给该进程,而是在某共享设备(磁盘)上的输出井,为其分配一块存储区,同时为该进程的输出数据建立一个文件,该进程的输出数据实际上并未从打印机上输出,只是以文件形式输出,并输出存放在输出井中。,Spooling技术举例,第二章 用户接口与作业管理,这个输出文件实际相当于虚拟的打印机。这些输出井中的文件形成了一个输出队列,然后调度输出 用户进程并未真正分到打印机, 用户进程被分配的只是共享设备中的一个存储区 在SPOOLING系统中,为了弥补独享设备与共享设备间数据传输速度的差异,使用缓冲区技术。,Spooling技术举例,第二章 用户接口与作业管理,2.3 作业的建立 2.3.1 作业输入方式 网络输入方式:当用户需要在计算机网络中某一台主机上输入的信息传送到同一网络中的另一台主机上进行操作或执行时,即构成网络输入方式。,第二章 用户接口与作业管理,2.3 作业的建立 2.3.2 JCB的建立 JCB是在作业建立时系统根据作业说明书建立的; 在运行过程中,JCB是系统对作业进行管理的必要信息。 作业名 估计执行时间 优先数(用于调度) 作业说明书文件名 程序类型(需调用的系统程序) 资源要求:(静态,或中间可以随作业步变化) 作业状态:提交、后备、执行、完成 作业的建立过程,包括作业的输入和作业JCB的建立,第二章 用户接口与作业管理,2.4 用户接口 程序级接口系统为用户在程序一级提供有关服务而设置,由一组系统调用命令组成 负责管理和控制运行的程序 在这些程序与系统控制的资源和提供的服务间实现交互作用 用汇编语言:在程序中直接用系统调用命令 用高级语言:可在编程时使用过程调用语句 操作级接口为用户提供各种命令 脱机方式:用户通过JCL编写作业控制程序提交给系统,系统执行过程中用户无法干预; 联机方式:系统为用户提供操作命令,用户通过命令与系统对话,控制程序执行和管理计算机系统。,第二章 用户接口与作业管理,2.4 用户接口 操作级接口联机控制方式的命令种类 环境设置:改变终端用户所在位置、执行路径等; 执行权限管理:控制用户访问系统和操作文件的权限; 系统管理:系统维护、开机关机、增加或减少终端用户、计时收费等; 文件管理:管理和控制终端用户的文件; 编辑、编译、链接装配和执行编辑命令; 通信:主机远程终端、主机主机 资源要求:用户向系统申请资源。,第二章 用户接口与作业管理,2.4 用户接口 操作级接口脱机与联机控制方式比较 联机方式:用户直接参与控制作业执行 脱机方式:批处理(传统的脱机方式、命令文件) 图形用户接口( GUI, GRAPHIC USER INTERFACE ) 在命令行方式下,用户与操作系统的交互要求用户记忆命令格式。在图形用户接口方式下,用户可利用鼠标对屏幕上的图标进行操作,完成与操作系统的交互,从而减少记忆内容,方便用户使用。它的技术基础是高分辩显示器和鼠标。,第二章 用户接口与作业管理,2.4 用户接口(图形用户接口),(Linux),第二章 用户接口与作业管理,2.4 用户接口(图形用户接口),(Linux文字),第二章 用户接口与作业管理,2.4 用户接口(图形用户接口),(Linux图形),第二章 用户接口与作业管理,2.4 用户接口 Windows图形用户接口,图标,第二章 用户接口与作业管理,2.4 用户接口 Windows图形用户接口,窗口,第二章 用户接口与作业管理,2.4 用户接口 Windows图形用户接口,对话框,第二章 用户接口与作业管理,2.4 用户接口 Windows图形用户接口,菜单,第二章 用户接口与作业管理,2.4 用户接口 Windows图形用户接口,菜单,第二章 用户接口与作业管理,2.5 系统调用 系统调用的功能 存储管理:内存的申请和释放 系统管理:设置和读取时间、读取用户和主机标识等 Gtime 读取时间 Stime 设置时间 Getuid 读取用户标识,第二章 用户接口与作业管理,2.5 系统调用 系统调用的功能 通过系统调用接口也可使用系统命令,C语言里的system()函数可调用shell来完成命令 如 UNIX系统: system(“cp -r doc /tmp“),第二章 用户接口与作业管理,系统调用举例,MOVE DX,OFFSETBUFF MOVE CX,BYTE MOVE BX,HANDLE MOVE AH,3FH INT 21H,第二章 用户接口与作业管理,2.5 系统调用 系统调用的实现过程 实际上系统调用语句本身是硬件提供的(机器指令),但其所调用的功能是操作系统提供的。每种机器的机器指令集中都有一条系统调用指令。,第二章 用户接口与作业管理,引起原因不同 陷入通常由处理机正在执行的现行指令引起, 中断是由与现行指令无关的中断源引起的 服务对象不同 陷入处理程序提供的服务为当前进程所用, 中断处理程序提供的服务则不是为当前进程的 相应时机不同 CPU在执行完一条指令之后,下一条指令开始之前响应中断, 在一条指令执行中也可以响应陷入。如非法指令执行时,尽管被执行的非法指令不能执行结束,但CPU仍可对其进行处理。,中断和陷入(trap)的区别,第二章 用户接口与作业管理,设置系统调用号和参数。 调用号作为指令的一部分(如早期UNIX),或装入到特定寄存器里(如:DOS int 21h,AH=调用号。) 参数装入到特定寄存器里,或以寄存器指针指向参数表(内存区域)。 执行trap(INT)指令:入口的一般性处理,查入口跳转表,跳转到相应功能的过程。 保护CPU现场(将PC与PSW入栈),改变CPU执行状态(处理机状态字PSW切换,地址空间表切换) 将参数取到核心空间 执行操作系统内部代码; 执行iret指令:将执行结果装入适当位置,恢复CPU现场(以栈顶内容置PSW和PC)。,第二章 用户接口与作业管理,2.5 系统调用 系统调用与普通过程调用 相同点 改变指令流程 重复执行和公用 改变指令流程后需要返回原处 不同点 系统调用是动态调用,而CALL调用方式是静态调用 执行状态不同 进入方式不同 与进程调度的关系不同,第二章 用户接口与作业管理,1. 系统调用是动态调用,而CALL调用方式是静态调用;,系统调用是动态调用,程序中不包含被调用代码,好处: (1)用户程序长度缩短 (2)当OS升级时,调用方不必改变 系统调用方式的调用地址和返回地址都是不固定的,系统调用指令中不包含调用地址,只包含功能号,是按功能号(在可执行目标程序中)调用的。,第二章 用户接口与作业管理,1. 系统调用是动态调用,而CALL调用方式是静态调用;,系统调用返回指令中不包括返回地址,通过栈保存和弹出返回地址。系统调用返回地址不固定,因为用户程序在不同的地方调用OS。 CALL调用方式是静态调用,被调用代码与调用代码在同一程序之内。CALL调用方式,其调用地址是固定的,包含在调用语句中;返回地址是不固定的(同一子程序可能被不同处多次调用),在程序执行过程中通过栈的实现来保存和弹出返回地址。,第二章 用户接口与作业管理,2. 执行状态不同,调用和返回经历了不同的系统状态。通常核心和应用程序的代码分别运行在CPU的不同的状态下(系统态/核心态/管态和用户态/目态),所用地址空间也不同核心的代码可以直接访问应用进程的地址空间,反之不然。,第二章 用户接口与作业管理,3. 进入方式不同,CALL指令的内部实现过程: 返回地址压栈(即该CALL指令所在的地址); 将该CALL指令中所含的地址(即被调用代码所在地址)送入PC RET
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 05 选必中教材文言文逐篇过关挖空训练(原卷版)2026版-高中语文文言文逐篇过关挖空训练
- 高中地理 5.1 认识环境管理教学设计 新人教版选修6
- 第五课 网络信息辨真伪教学设计小学综合实践活动三年级下册人民版
- Unit 11 Controlling fire教学设计初中英语六年级下册牛津上海(试用本)
- 第5课时《圆柱的体积练习》 教学设计六年级下册数学苏教版
- 北师大版三年级下册数学第四单元第7课时《算得对吗》教学课件(新教材)
- 大班健康游戏《看得见的情绪》教案
- 第二单元综合探究 领悟辩证精髓 处理复杂问题 教学设计-2023-2024学年高中政治统编版选择性必修三逻辑与思维
- 2025年医疗隐私保护中的伦理审查机制构建
- 感恩父母 拥抱亲情 教学设计及反思 2025-2026学年高一拓展活动式主题班会
- 2026年统编版历史中考热点预测(全国)
- 超市果蔬区培训
- 公路监理培训制度
- 阿斯利康在线测评题库答案
- 2026年福建智和置业有限公司招聘备考题库附答案详解
- 餐饮厨房安全培训知识课件
- 华为采购基本内控制度
- 2025年乌海市事业单位考试试题真题及答案
- 2026年及未来5年市场数据中国全氟磺酸树脂行业市场深度分析及发展前景预测报告
- 2025中国热带农业科学院热带生物技术研究所第一批招聘23人(第1号)(公共基础知识)测试题附答案解析
- 2025年中国质量协会质量专业能力考试(六西格玛绿带)在线题库及答案
评论
0/150
提交评论