第二章 操作系统用户界面(精品).ppt
第二章 操作系统用户界面 第一节 作业的基本概念一、作业的定义 1、作业:从用户的角度,作业是指在一 次应用业务处 理过程中,从输入开始到输出结束为止,用户要求 计算机所做的与该次业务处理相关的全部工作。2、作业步:完成一个作业的过程中所经历的相对独立 的工作。3、作业的组成:作业从内容上包含程序、数据、作业 说明书(作业控制块)。4、作业说明书:用作业控制语言书写的,用于对作业执行情况进行控制的特 殊文件。5、作业的特点:a、是一个动态的概念;b、在批处理系统中,作业是抢占内存资源的基本单位。二、作业组织 作业是由程序、数据、作业说明书组成。1、程序、数据:完成用户所要求的业务处理工作。2、作业说明书:体现用户对作业的控制意图,且由作 业说明书生成作业控制块。3、JCB表格内容:登记作业要求的资源情况,预计执 行时间和执行优先级等。4、作业说明书内容:包括作业基本描述信息、作业控 制描述信息、资源要求描述信息。(1)作业基本描述:含用户名、作业明、使用的编 程语言、允许的最大处理时间等。(2)作业控制描述信息:含控制方式、各作业步的控制 顺序、出错处理等。(3)资源要求描述信息:含要求处理时间、内存空间、外设种类、数量、处理机优先级、所需处理时间、库函数、实用程序等。注意:(1)在微机中,人们常用批处理文件编写作业说明书。(2)作业说明书方式主要用于批处理系统中,且不同计算机厂家对自己的系统定义有各自的作业说明书格式和内容。第二节 作业建立作业的建立:将一个作业所包含的程序、数据、作业说明书由输入设备送入外 存的输入井,并通过作业注册程序为 该作业申请建立一个相应的JCB过程。一、作业的输入方式 1、联机输入方式:(1)特点:a、主要用于交互式系统中,用户与主机 通过交互会话方式输入作业;b、外围设备与主机直接相连;c、由于CPU与外设速度不匹配,CPU利 用率低。(2)示意图:2、脱机输入方式 (1)目的:解决联机输入CPU利用率低的问题。(2)示意图:主机外存输入/输出主机高 速 外围设备后援存储器低档机I1后援存储器低档机I2 (3)特点:a、CPU效率高,但以牺牲低档机为代价;b、需要用户干预和移动后援存储器;c、灵活性差,当遇紧急情况时无法直接将作业交 给主机处理。3、直接耦合方式:(1)方法:将主机与外围低档机通过一个大容量的 外存直接耦合起来,省去脱机方式中靠人工移动 后援存储器的过程。(3)示意图:主机公用存储器低档机低档机 (3)缺点:成本高。4、SPOOLING(假脱机系统)(1)多台I/O设备通过通道或DMA器件和主机、外存 连接起来。(2)原理图:输入设备输入设备通道输入井输出井通道输出设备输出设备通 道 主机系统输入管理模块输出管理模块 (3)特点:a、外设得以并行工作;b、CPU利用率高;c、与直接耦合方式相比,降低了成本。5、网络输入方式:以上述四种微基础(略)。二、JCB建立:1、建立:由作业注册程序为已输入的作业建立。2、JCB的内容:(1)作业名:以区分作业;(2)估计执行时间、建立时间、优先级等为作业调度 提供依据;(3)作业说明书:控制作业执行的依据;(4)程序设计语言类型,指明所需的编译系统和库函 数等;(5)作业状态:描述作业生存期的各个阶段。a、提交态:从作业输入请求开始到建立JCB表为 止。b、后备态:从建立JCB表开始到作业调度程序选中 该作业进入内存为止,作业在作业等待 队列中所处的状态。c、执行态:从作业被调度选中开始到该作业执行结 束为止。d、完成态:从作业之行结束到被撤销为止。(6)对内存、外存的要求。第三节 命令控制界面接口(补充)一、用户界面的发展 1、第一代用户界面,在一维空间(命令 行界面和编程人员在程序中的系统调用)用户要使用计算机,首先要熟悉一 套操作命令,而且不同的操作系统命令 是各不相同的,熟悉英文名称及其缩写 有助于记忆命令;多数的命令行有很多选项 实施多种控制操作能力;操作系统中必备一 套相应的命令解释程序。2、第二代用户界面,在二维空间(图形界面)(1)用户观看,单击缩影的图符。如Windows是视窗 操作系统发展的里程碑;(2)美国的苹果公司的Macintosh系列微机,其人机界 面设计仍是较优秀的;(3)在UNIX操作系统上,早已广为流行一种图形用户 界面,他就是X-Windows,它也有类似的功能,但 不属于操作系统核心的内容,需另行配置安装;(4)图形用户界面便于用户操作使用计算机,在显示 屏上可以建立很多缩微型形象化的图标,用户用鼠 标器单击就能调出程序工作,即所见所得。3、第三代用户界面,在三维空间(虚拟现实的界面元素)(1)目前已有不少的游戏软件在三维硬件显示卡的支 持下,改成三维动画效果。(2)在计算机的很多应用领域中,如建筑、医学等,需要有3维计算的图像显示立体效果;(3)现有的界面已能看到很多“虚拟仪器”,如电话机、放音机等,在计算机的“桌面”上显示出人们熟悉的家 用电器或其他仪器设备的操作面板。4、虚拟机概念 (1)虚拟软驱、虚拟内存、虚拟硬盘、虚拟打印机、虚拟现实等技术均已出现并得以应用;(2)计算机也可以虚拟,可以使用虚拟机来创造出多 个理想的工作环境,而这一切只需在一台机器上可以 完成。二、界面管理的任务:1、界面管理的任务是:使用多媒体虚拟现实和科学计 算可视化等技术寻求最佳的人机通信方式;2、任何一种软件首先涉及人机交互的控制界面,目前 的计算机也离不开操作系统的界面。计算机的发展史 不仅是计算机在处理速度和存储容量飞速提高的历史,而且也是计算机用户界面不断改进的历史,Windows 系统中80%以上的编程代码是涉及与人打交道的界面 设计。3、作为面向最终用户的“作业”管理来看,人机交互界面 也可称为用户界面,已成为计算机系统的一个重要组 成部分,是计算机科学与心理学、图形艺术和人素学 的交叉研究领域。他是计算机领域的竞争焦点从硬件 转向软件之后,又一新的重要研究领域。三、界面管理的功能:1、实现高效的人机通信 在传统的人机交互系统中,人被认为是操作者 去适应机器,人被认为是用户,能与机器对话,但无 主动参与感;而在虚拟现实系统中,人应是主动的参 与者,机器对人的各种动作做出反应,若将人的听、说、手和眼等协同动作,采用多通道、以自然方式交 互,可以实现高效的人机通信。2、改善计算机的可用性、可学性和有效性 键盘和鼠标均需用户“精确”输入,而人的动作或思 想,往往不很精确,要求计算机能理解人们的要求,甚至能纠正人的错误,所以智能化的界面是一个重要 的方向。3、支持三维和多媒体技术 人的生活空间是三维的,头脑在进行思维时可 以进入多维的空间,而当今计算机的屏幕是二维的,虽然通过图形用户界面已提供了一些仿三维的按钮等 界面元素,但界面仍难以进行3维操作。4、为广大用户提供适应不同应用的众多界面构造工具 及语言。开发GUI的工作量及难度十分可观,普通用户已 很难自行开发,必须依靠熟练的程序员或方便的工具。现在已有一些GUI开发工具,如Visual Basic,Visual c+,Power builder,Visual foxpro等,还有一些电子表格、数据库查询语言或超文本制作语(Hypertalk,OpenScipt)类似自然语言风格,但其中有的不支持汉字、有的适 应性差。四、用户界面研究 1、WIMP界面 WIMP界面是指窗口(Windows)、图符(icons)菜单(menu)、指点装置(pointing),它是目前个人 计算机流行的用户界面。2、WYSIWYG(what you see os what you get)所见即所得 3、多通道(multi-modal user interface,MMI)为了充分发挥CPU的高速运算性能,是CPU与外部 设备之间以及外部设备与外部设备之间实现更多的并行 工作。4、人机询问技术(man-machine interrogation technique,MMIT)人机交互的界面发展,是机器能像人一样地进行“交 谈”。5、Post-WIMP时代(后WIMP)同时操作多个设备,例如多个传感器、多个通道、多个人同时使用以至能识别人的双手及形体语言等多 模式识别。6、X-window 它是86年美国MIT的雅典娜工程小组为了提供一个 独立于硬件的用户图形界面而开发成功的,广为流行 的是83年发行的X11.2版本。尤其与UNIX操作系统结 合,是唯一既可运行于IBM-PC到各种大中型机以及巨 型机,又可运行于X终端上。同时,它也给程序员编 程提供了工具箱编程接口和事件驱动型编程模型。他 有多窗口、按钮、菜单、图标、滚动条和鼠标等控制 输入命令的工具。7、虚拟现实 (1)虚拟现实是用计算机技术来生成一个逼真的3维 视觉、听觉、触觉或嗅觉等感觉世界,让用户可以 从自己的视点出发,利用自然的技能和某些设备对 这生成的虚拟世界客体进行浏览和交互考察。(2)虚拟现实是一项综合的的技术涉及计算机图形学、人机接口技术、传感技术及人工智能技术等,需要 计算机、心理学、人类工程学等专家共同开发研究。(3)实际应用的虚拟系统大体可分为4类:a、桌面虚拟现实系统,也成窗口中的VR,它成本 低,需要用于CAD/CAM、建筑设计的领域;b、沉浸虚拟现实系统,使用头盔显示器把用户的 视觉、听觉及其他感觉封闭起来,产生一种身临 其境的错觉;c、分布式虚拟现实系统,它建立在沉静虚拟现实系 统和分布式交互仿真的基础上;d、增强现实。五、用户界面设计的特点:1、计算机不断适应人的需求,以方便用户为目的。一 般用户欢迎“傻瓜型”机器;2、现代操作系统程序编写代码中80%以上与用户界面的 设计有关。界面设计不单是技术上的设计问题,还有 一个艺术上的问题。要增强个性化的设计,即允许有 个人的选择和改编的可能;c、美国微软公司是以商业运作为指挥棒,源代码是不 公开的。而MIT对购买X-Windows源程序的开发单位 只进行象征性的收费,是它能得到迅速的发展。类似 的Linux操作系统源代码是公开的,因此使它3年就走 完UNIX20年的历程。d、多窗口系统一般都采用事件驱动控制方式。系统内 有一个事件驱动控制程序,负责接收输入事件,并在 接收事件后为用户反馈信息,然后按某种调度方式从 接收的事件队列中取出相应事件并进行处理,最后还 对已处理过的事件进行清理工作。第四节 作业调度(补充)一、作业调度的功能 (1)采用作业控制块(JCB)记录系统 中个作业工作状况;(2)根据选定的调度算法,从后备作业 队列中选出一部分或一个作业投入运 行;(3)为被选中的作业做好运行前的准备工作,包括选择相应的进程执行单元以及为这些进 程分配系统资源,州县判断用户的资源要求 是否能够满足。(4)作业运行结束后的善后处理工作。二、作业调度算法 1、先来先服务(FCFS)按作业进入输入井的先后次序安排。优点是实现 简单,FIFO队列顺序工作,对相同的或均衡的作业较 为合理;缺点是不利于运行时间短的作业。2、最短作业优先(shortest jib first,SJF)(1)方法:选择那些估计需要执行时间最短的作业投 入执行,为他们创建进程和分配资源。(2)特点:可使得系统在同一时间内处理的作业数最 多,从而吞吐量也大于其它调度方式。但是对于一个不断有作业进入的批处理系统 来说,该方法可能使得长作业永远得不到调度执行 的的机会。3、最高响应比优先法(highest response-ratio next,HRN)(1)方法:同时考虑每个作业的等待时间长短和估计 需要的执行时间长短,从中选出相应比最高的作业 投入执行。(2)响应比或响应系数比定义:R=(W+T)/T T:为作业估计需要的执行时间,W:为作业在后 备状态队列中的等待时间。(3)缺点:实现复杂,每次调度前要对所有作业扫描一 遍,比较后再调度。4、定时轮转法:按时间片轮转,可分为短时间的固定时间片和长 时间的不固定时间片。在UNIX中,采用长度为几毫秒至几十毫秒的固 定时间片轮转;在Windows中,完成多任务的工作方 式是协调式及抢占式,并不按固定时间片工作。5、优先数法:按优先数排队次序工作。分为静态和动态:经 态是在排队前计算优先数,动态是在调度时计算优 先数。又可分为用户给定优先数法和系统给定优先 数,例如:系统给定前台和后台工作的优先数。6、事件驱动法:美国微软公司的MS-Windows采用事件驱动法,它不同于固定时间片完成多任务。每当发生一些事件 就进入相应的调度程序工作,典型的事件,例如,用 户打开一个新的“窗口”。从用户角度表面看,如果定 义作业是让计算机干一件事情,事情可大可小,可多 可少,作业与事件是类似的,作业可以有许多工作步 完成。作业一般只工作或任务的整体;更广泛。实际 上,作业的退出、链接、夭折、完成以及封闭等都可 以看成是一个事件。用户点击窗口界面上的各种图标 就可通知计算机干一件事。系统通过事件驱动程序执 行任务。7、各种不同类型作业搭配调度算法:一个实际的操作系统往往是综合的,即采用以上 所述的几种算法组合,以适应不同用户不同需求的均 衡满足。系统调度原则是综合考虑到CPU运行时间多 少、对内存的要求、多外设的要求、对输入输出吞吐 量的以及等待时间等