操作系统用户界面第2章.ppt_第1页
操作系统用户界面第2章.ppt_第2页
操作系统用户界面第2章.ppt_第3页
操作系统用户界面第2章.ppt_第4页
操作系统用户界面第2章.ppt_第5页
已阅读5页,还剩72页未读 继续免费阅读

下载本文档

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

文档简介

1、第1章 学习小结,操作系统概念、地位与作用 操作系统的基本类型及其特点 多道程序设计及其特点 现代操作系统的主要功能 现代操作系统的基本特征,第2章 操作系统用户界面,本章主要从用户使用和系统管理两方面出发, 讨论操作系统为用户提供的编程接口和命令控制接口。 首先讨论操作系统的命令控制接口及与其相关的作业控制和管理概念,然后介绍系统调用与编程接口,最后介绍操作系统用户界面示例。,第2章 操作系统用户界面,作业的基本概念 作业的建立 命令控制界面接口 系统调用 UNIX用户界面(自学) 课时:2.0,作业的基本概念,作业的定义 从用户的角度,在一次应用业务处理过程中,从输入开始到输出结束,用户要

2、求计算机所做的有关该次业务处理的全部工作称为一个作业。 作业由不同的顺序相连的作业步组成。作业步是计算机所做的一个相对独立的工作。,作业的基本概念,作业的定义 从系统的角度,作业由程序、数据和作业说明书组成。 在批处理系统中,系统是以作业为单位把程序和数据调入内存执行的。 作业的概念常用在批处理系统中。,作业的建立,作业的组织 作业说明书体现用户的控制意图。由作业说明书在系统中生成一个称为作业控制块(job control block,JCB)的表格。 JCB包含三方面内容,即基本描述、控制描述和资源要求描述。,作业的建立,作业的建立,作业的组织 作业说明书主要实现批处理的控制,不同计算机厂家

3、都有各自的作业说明书的格式和内容。 在微机系统中,人们常用批处理文件或shell程序方式编写作业说明书。 尤其在Unix类系统中shell程序设计也很重要。,作业的建立过程 一个作业的建立过程包括两个子过程: 作业的输入:输入数据、程序、作业说明书等; JCB的建立:申请创建作业的JCB,标志着系统中存在该作业。,作业的建立,作业输入方式 常分为三种,即联机输入方式、脱机输入方式、SPOOLING系统。 1)联机输入方式 用户和系统通过交互会话来输入作业 外围设备直接和主机相连接,作业的建立,作业输入方式 2)脱机输入方式 称为预输入方式。为了解决单台设备联机输入时的CPU浪费问题,利用辅机作

4、为外围处理机进行输入处理。 在辅机上,将作业输入到高速设备磁盘或磁带上;再把磁盘与主机联机输入作业。,作业的建立,作业输入方式 3)SPOOLING系统 SPOOLING(Simultaneous Peripheral Operations On-Line),即同时的外围设备联机操作,也称假脱机。 其工作原理如图2.4所示。,作业的建立,作业的建立,技术支持:通道技术和中断技术,SPOOLING 结构,作业输入方式 3)SPOOLING系统 在SPOOLING系统中,作业的输入输出过程由主机控制、通道操作完成,需由中断技术支持。,作业的建立,作业的建立,作业的执行周期与状态转换图,作业输入方式

5、 3)SPOOLING系统 组成 硬件:大容量外存(磁盘) 软件: 预输入程序:I/O输入井; 作业调度程序:选择后备作业进入内存; 井读程序:输入井内存; 井写程序:内存输出井; 缓输出程序:输出井 I/O;,作业的建立,操作系统的命令控制界面就是用来组织和控制作业运行的。包括脱机和联机方式。 脱机方式:用户以作业控制说明书方式或命令文件方式提交给系统,由系统按照作业说明书或命令文件中所规定的顺序控制作业执行。 如:Linux系统下shell程序。,命令控制界面接口,联机方式:用户直接使用操作命令与系统进行交互式会话完成系统的控制和管理。 Windows用户日常操作都属于联机方式。 在现代操

6、作系统中,大都提供脱机(批处理)方式和联机控制方式。,命令控制界面接口,系统调用是操作系统提供给编程人员的唯一接口,有助于提高了OS的安全性。 利用系统调用,用户程序可以动态请求和释放系统资源,完成与硬件相关的工作以及控制程序的执行等。 OS中系统调用服务机构称为陷入(trap)处理机构。与此对应,把由于系统调用引起处理机中断的指令称为陷入指令(或称访管指令)。,系统调用接口,系统调用接口,系统调用的执行过程,特权指令与CPU运行状态 特权指令指只能由操作系统使用的指令。 用户态:也称常态、目态、外壳态,即 CPU执行用户程序,不允许执行特权指令。 系统态:也称特态、管态、核心态,即CPU执行

7、系统程序,可执行所有指令。 Trap指令属于哪类指令?,系统调用接口,系统调用与一般过程调用的比较 相同点: 改变指令流程; 重复执行和公用; 改变指令流程后需要返回原处;,系统调用接口,系统调用与一般过程调用的比较 不同点: 运行在不同的系统状态:一般过程调用,其调用程序和被调用程序都运行在相同状态,核心态或用户态;系统调用,调用程序在用户态,被调用程序在系统态。,系统调用接口,系统调用与一般过程调用的比较 不同点: 嵌套或递归调用:对系统调用,一般不允许在同一个进程中发生嵌套或递归(不同进程可以重入同一个系统调用)。 进入方式不同:利用int或trap指令进行系统调用;利用call 或 j

8、mp 指令进入普通的过程调用。,系统调用接口,系统调用与一般过程调用的比较 不同点: 系统调用是动态的,一般过程调用是静态的: 系统调用程序中不包含被调用代码,调用地址和返回地址都是不固定的;而一般过程调用的被调用代码与调用代码在同一程序之内,其调用地址是固定的,返回地址是不固定的。,系统调用接口,自学要求: UNIX的发展历史 UNIX的特点 UNIX的接口,UNIX用户界面,习 题,什么是作业和作业步? 作业由哪几部分组成? 叙述SPOOLING系统的工作原理。 简述作业控制块及其作用。 操作系统提供哪些接口? 结合实际,总结你的日常作业控制方式。 什么是系统调用?与一般过程调用有何区别。

9、 区别两种系统(CPU)运行状态。 试述UNIX的主要特点,【例】操作系统提供给程序员的接口是( ) A 进程 B 系统调用 C 库函数 D 系统调用和库函数 【答案】B,【例】用户在程序中试图读某文件的第100个逻辑块,使用操作系统的( )接口 A 系统调用 B 图形用户接口 C 原语 D 键盘命令 【答案】A,【例】在下列语言中属于脱机作业控制语言的是( ) A 作业控制语言 B 汇编语言 C 会话式程序设计语言 D解释BASIC 【答案】A,【例】用户使用操作系统通常有三种手段,它们是终端命令,系统调用命令和( ) A 计算机高级命令 B 宏命令 C 作业控制语言 D 汇编语言 【答案】

10、C,【例】用户要在程序一级获得系统帮助,必须通过( )。 A.进程调度 B.作业调度 C.键盘命令 D .系统调用 【答案】D,【例】用户的应用程序和应用系统是通过( )提供的支持和服务来使用系统资源完成其操作的。 A 点击鼠标 B 键盘命令 C 系统调用 D 图形用户界面 【答案】C,【例】用户可以通过( )两种方式来使用计算机。 A 命令方式和函数方式 B 命令方式和系统调用方式 C 命令方式和文件管理方式 D 设备管理方式和系统调用方式 【答案】B,【例】系统调用的目的是( )。 A. 请求系统服务 B. 终止系统服务 C. 申请系统资源 D. 释放系统资源 【答案】A,【例】系统调用是

11、由操作系统提供的内部调用,它( )。 A. 直接通过键盘交互方式使用 B. 只能通过用户程序间接使用 C. 是命令接口中的命令使用 D. 与系统的命令一样 【答案】B,【例】操作系统内核与用户程序、应用程序之间的接口是( )。 A. shell 命令 B. 图形界面 C. 系统调用 D. C 语言函数 【答案】C,【例】当CPU执行操作系统代码时,称处理机处于( )。 A 执行态 B 目态 C 管态 D 就绪态 【答案】C,【例】为了便于用户直接或间接地控制自己的作业,操作系统向用户提供了命令接口,该接口又可进一步分为( ) A 联机用户接口和脱机用户接口 B 程序接口和图形接口 C 联机用户

12、接口和程序接口 D 脱机用户接口和图形接口 【答案】A,【例】 用户在一次解题或一个事务处理过程中要求计算机系统所做工作的集合称为_。 【答案】作业,【例】所谓系统调用,就是用户在程序中调用_所提供的一些子功能 【答案】操作系统,【例】脱机命令接口和联机命令接口有什么不同? 【答案】脱机命令接口是OS提供给批处理作业用户的作业控制语言。批处理用户不能直接与自己的运行作业进行交互,只能向系统提供用作业控制语言编写的作业说明书,并委托系统按作业说明书中的作业控制命令,来对它们的作业进行控制和管理 联机命令接口则不要求用户填写作业说明书,此时,系统将向用户一组键盘命令或其他操作方式的命令,用户可通过

13、这些命令来交互地控制自己程序的运行,并获得操作系统的服务。,【例】处理机为什么要区分核心态和用户态两种操作方式?什么情况下进行两种方式的转换? 【解答】为了保护操作系统不受破坏,通常将CPU的执行方式分为两种:核心态和用户态。在核心态,允许执行CPU的指令全集,而在用户态,只能执行非特权指令,从而使系统得到保护。,当用户希望得到操作系统服务时,使用系统调用命令。这样,当CPU执行到系统调用时,CPU的执行方式就由用户态变为核心态,执行用户希望的服务。完成服务后,在返回用户程序之前,CPU的执行状态再变为用户态,继续执行用户程序。,【例】简述系统调用与过程调用有什么相同和不同点。 【解答】相同点

14、:执行都改变指令的流程;都可以重复执行和共享调用;允许嵌套调用。 区别: 1 运行在不同的系统状态。 一般过程调用,其调用程序和被调用程序都运行在相同的状态:核心态或用户态。 系统调用中,调用程序运行在用户态,被调用程序运行在核心态。用户态向核心态转变时,通过陷入指令实现。,2 进入方式不同。 一般的过程调用不涉及系统状态的转换,由调用程序直接通过调用语句转向调用过程。 系统调用,调用和被调用过程在不同系统状态,不允许由调用过程直接转向被调用过程,必须通过软中断机制先由用户态转换为核心态。,3 返回问题 一般过程调用在被调用过程执行完后,将直接返回到调用过程继续执行; 系统调用,如果系统采用抢

15、占调度方式,则在被调用过程执行完后,必须先对系统中所有要求运行的进程做优先分析。只有当调用进程仍具有最高优先权时,才返回到调用进程继续执行;否则,将引起重新调度。,【例】区别概念:操作命令与 系统调用 【解答】操作命令是提供给普通用户使用的与操作系统的接口方式,其目的是便于用户利用利用这种接口方式组织和控制作业的执行。 系统调用是操作系统向编程人员提供的请求操作系统服务和使用设备时的一种接口。操作系统调用命令对应操作系统提供服务的一些子程序。用户通过这些称为特殊指令的命令来调用这些子程序,已取得操作系统的服务。,【例】简述系统调用的实现过程 【解答】系统调用是操作系统提供给软件开发人员的惟一接

16、口,开发人员可利用它使用系统功能。OS核心中都由一组实现系统功能的过程(子程序),系统调用是对上述过程的调用。因此,系统调用直观上像一个黑箱子,对用户屏蔽操作系统的具体动作而只提供有关的功能。,为了实现系统调用,系统设计人员还必须为实现各种系统调用功能的子程序编造入口地址表,每个入口都与相应的系统子程序名对应起来。然后,由陷阱处理程序把陷进指令中所包含的功能号与该入口地址表中的有关项对应起来,从而有系统调用功能号驱动有关系统子程序执行。,由于在系统调用处理结束后,用户程序还需利用系统调用的返回结果继续执行,因此,在进入系统调用处理前,陷阱处理机构还需保存处理机现场。再者,在系统调用处理结束后,

17、陷阱处理机构还要恢复处理机现场。在操作系统中,处理机的现场一般被保护在特定的内存区或寄存器中。,【例】命令接口和图形用户接口分别有什么优缺点? 【解答】命令接口的优点是功能强,速度快,灵活性好,屏幕开销少,缺点是显示不直接,难学难记。 图形用户接口的优点是显示直观,操作简便,易学;缺点是实现的代码规模大,对内外存容量,cpu速度和显示器的要求较高。,作业的几种状态,作业的几种状态,【例】作业的全部信息都已通过输入机输入,并由操作系统将其存放在磁盘的某些盘区等待运行,这种状态称为作业的( )。 A 提交状态 B 运行状态 C 后备状态 D 完成状态,【分析】作业从提交到完成,分为4种状态: 1

18、提交状态:通过终端向计算机键入 2 后备状态:作业全部通过输入机输入,由OS将其存放在磁盘中。 3 运行状态:作业被调度程序选中送入主存中投入运行 4 完成状态:作业完成,释放资源,退出系统 【答案】C,【例】作业在生存期有4个状态,它们( ),后备,执行和完成 A 就绪 B 提交 C 等待 D 开始 【答案】B,【例】下列叙述中,符合批处理作业特征的有_。 (A)其中包含有作业说明书 (B)具有就绪状态 (C)运行过程和用户没有交互作用 (D)其中包含有程序和数据 (E)用户可以通过键盘输入程序运行过程需要的数据 【解析】采用批处理控制方式的作业,用户把对作业执行的控制意图用作业控制语言写成

19、一份说明书,连同该作业的源程序和初始数据一起输入到计算机系统,系统就可按用户说明书来控制作业的执行。作业执行过程中用户不能干预,一切由系统自动地控制作业的执行。 因此,选项(A)、(C)、(D)是正确的。“就绪状态”是进程具有的状态,作业没有该状态,选项(B)是错误的;由于运行过程和用户没有交互作用,所以“用户可以通过键盘输入程序运行过程需要的数据”(选项E)是错误的。 【答案】ACD,【例】一个作业从进入系统到运行结束,经历的状态包括_。 (A)进入状态 (B)就绪状态 (C)后备状态 (D)运行状态 (E)完成状态 【解析】一个作业从进入系统到运行结束,一般要经历进入、后备、运行和完成四个

20、阶段,相应地,作业亦有进入、后备、运行和完成四种状态。因此,选项(A)、(C)、(D)、(E)是正确的。 注意,作业的运行状态是指作业被调入内存运行,不意味着占用处理机。 【答案】ACDE,【例】下列有关作业的叙述中,_是正确的。 (A)作业一旦被作业调度选中,即占有了 (B)批处理系统对作业的控制意图是靠作业说明书来实现的,用户不能控制作业的执行 (C)作业调度程序从处于等待状态的队列中选取作业投入运行 (D)作业一旦被作业调度选中,该作业即进入内存 (E)允许多个用户在各自的终端上同时交互地使用计算机的系统称为分时操作系统 【解析】作业提交后进入作业队列,处于后备状态;作业调度程序从处于后

21、备状态的队列中选取作业,作业一旦被作业调度选中,该作业即进入内存。 因此,选项(A)、(C)是错误的 【答案】BDE,【例】作业一旦被作业调度选中,即占有了。 ( ) 【解析】一个作业一旦被作业调度选中,说明作业处于运行状态,该作业已进入到内存中,并以进程形式存在于系统中,属该作业的进程可能处于运行、就绪或等待状态,不一定占有。 【答案】错误,【例】简述作业在系统中有哪几种状态。 【解析】 一个作业从进入系统到运行结束,一般要经历进入、后备、运行和完成四个阶段,相应地,作业亦有进入、后备、运行和完成四种状态。 (1)进入状态:作业的信息正在从输入设备上预输入到输入井,此时称作业处于进入状态。

22、(2)后备状态:当作业的全部信息都已输入,且由操作系统将其存放在输入井中,此时称作业处于后备状态。系统将所有处于后备状态的作业组成后备作业队列,等待作业调度程序的调度。 (3)运行状态:一个后备作业被作业调度程序选中,分配了必要的资源,调入内存运行,称作业处于运行状态 。 (4)完成状态:当作业正常运行完毕或因发生错误非正常终止时,作业进入完成状态。,SPOOLing,【例】虚拟设备是指( ) A 把共享设备模拟独占设备 B 允许用户程序不必全部装入主存便可使用系统中的设备 C 允许用户以标准化方式来使用设备 D 允许用户使用比系统中具有的物理设备更多的设备 【答案】A,【例】下面4个选项中不

23、属于SPOOLing系统特点的是( )。 A提高了内存的利用率 B 提高了I/O操作的速度 C将独占设备改造为共享设备 D 实现了虚拟设备功能,【分析】所有字符设备都是独享设备并属于慢速设备,本质上属于顺序存取设备。因此,一个进程在某台字符设备上进行数据交换,要等待较长时间,并且在该数据交换完成之前,其他进程不能同时访问这台设备,当一个进程正在使用这类设备进行一次较大量的数据交换时,其他需要同时访问该设备的进程就要等待较长时间,从而降低了整个系统的并发能力。SPOOLing技术正是针对上述问题提出的一种设备管理技术。,在多道程序系统中,用程序模拟脱机输入/输出时外围控制机的功能,这样在主机的直

24、接控制下实现脱机输入/输出功能。此时的外围操作与CPU对数据处理同时进行,这种在联机情况下实现的外围设备同时操作称为SPOOLing,假脱机。 SPOOLing系统的核心思想是利用一台可共享的,高速大容量的块设备(磁盘)来模拟独享设备的操作,使一台独享设备变成多台可并行使用的虚拟设备。其主要特征是提高了I/O操作的速度,将独享设备改造成为共享设备;实现了虚拟设备功能。 【答案】A,【例】在关于SPOOLing的叙述中,( )描述是不正确的 A SPOOLing系统中不需要独占设备 B SPOOLing系统加快了执行速度 C SPOOLing系统使独占设备变成共享设备 D SPOOLing系统利

25、用了处理器与通道并行工作管理。,【分析】 SPOOLing系统有如下特征: 1 提高了速度。对数据进行的I/O操作,已从低速I/O设备进行的I/O操作,演变为从输入井或输出井中数据的存取,如同脱机输入输出一样,提高了I/O速度,缓解了CPU与低速I/O设备之间速度不匹配的矛盾。 2 将独占设备改造成共享设备。在SPOOLing系统中,实际上并没有任何进程分配设备,而只是在输入井或输出井中,这样,便把独占设备改造成共享设备 3 实现了虚拟设备功能。宏观上,多个进程在同时使用一台独占设备,而对每一个进程而言,都认为自己独占一个设备。 【答案】A,【例】虚拟设备是操作系统利用某种I/O技术,将某个_设备改造为多个用户可以共享的设备。 【分析】虚拟设备是利用某种技术把独占设备改造成可由多个进程共享的设备。虚拟分配技术是利用共享设备去模拟独占设备,从而使独占设备成为共享的,快速I/O的设备,实现虚拟分配的最有名的技术是SPO

温馨提示

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

评论

0/150

提交评论