操作系统接口.ppt
《操作系统接口.ppt》由会员分享,可在线阅读,更多相关《操作系统接口.ppt(160页珍藏版)》请在三一办公上搜索。
1、第七章操作系统接口,教学目的:操作系统向用户提供“用户与操作系统的接口”,该接口支持用户与操作系统之间进行交互,该接口分为命令接口和程序接口两类。掌握用户与操作系统接口可使用户更全面掌握操作系统的使用。教学要求:熟悉用户与操作系统的两类接口:命令接口和程序接口。了解MS-DOS、WINDOWS和UNIX的接口。了解操作系统的原理和接口。,7.0 用户与操作系统的接口,(1)用户接口 用户接口是计算机系统与用户之间进行交互作用和通信的通路。对绝大多数用户而言,一个计算机系统的可接受性在很大程度上取决于这个用户接口。用户接口分为命令接口和程序接口两类。1。命令接口 命令接口是籍助于在用户和操作系统
2、之间提供高级通信来控制一组程序的处理。这个接口之所以称命令接口,是因为用户可以通过打入或在作业中发出一系列命令,告诉OS执行那些功能。这一类接口是用于作业控制的,其中又分联机用户接口和脱机用户接口。,联机用户接口:联机用户接口也叫交互式用户接口,它用于联机作业控制,它是由一组键盘操作命令组成。交互式用户接口交互方式又分成二类,一类是字符方式,终端命令,提供面向流的通信,如MS-DOS。另一类是图形方式,提供“对话框”、“图标”、“菜单”等图形用户接口(GUI)如Windows。脱机用户接口也称批处理用户接口,它用于脱机作业控制。脱机作业控制又分为作业控制卡和作业说明书两种方式。,作业控制卡方式
3、是指用户将其操作意图,用控制语言提供的有关作业控制命令穿孔在若干卡片上,以控制作业的运行的一种形式。用户按照要求将作业控制卡插入到作业卡片叠的适当位置上。系统分批读入这些卡片后开始运行,并按照这些控制卡的信息,指挥和控制作业的运行,这些作业控制卡是早期的一种作业控制方式。作业说明书也是用作业控制语言来表达用户对作业控制意识的,在形式上同用高级编程语言编制的程序相似。相对于作业控制卡分散的缺点它具有集中、便于修改、灵活等优点。美国1905机GEOGE语言是典型的高级算法的作业控制语言。,2。程序接口 程序接口是OS为正要运行的程序提供服务并与之通信的一个设施,它供所有的用户程序使用,也供OS的其
4、它组成部分,特别是命令处理程序使用。当一个程序正在执行时,程序接口接受对系统服务及资源申请,并与OS的资源管理程序进行通信。这个程序接口主要由系统调用组成。,系统调用是用户在程序中调用OS所提供的一些子功能模块,它是一种特殊的过程调用。用户程序运行在用户态下,它通过软件中断进入核心,调用系统过程(子模块),运行在核心态,返回后仍在用户态下运行。用户程序系统调用从功能上分可包括进程管理、文件管理、信息维护、设备IO管理等几方面。系统调用过程大体上分成以下三步:设置系统调用号和参数;系统调用命令的一般处理;系统调用命令处理程序做具体处理。,7.1联机用户接口,7.1.1 联机用户接口联机用户接口,
5、也称为联机命令接口。不同操作系统的联机命令接口有所不同,这不仅指命令的种类、数量及功能方面,也可能体现在命令的形式、用法等方面。不同的用法和形式构成了不同的用户界面,可分成以下两种:(1)字符显示式用户界面;(2)图形化用户界面。,1命令行方式该方式是指以行为单位输入和显示不同的命令。每行长度一般不超过256个字符,命令的结束通常以回车符为标记。命令的执行是串行、间断的,后一个命令的输入一般需等到前一个命令执行结束,如用户键入的一条命令处理完成后,系统发出新的命令输入提示符,用户才可以继续输入下一条命令。,也有许多操作系统提供了命令的并行执行方式,例如一条命令的执行需要耗费较长时间,并且用户也
6、不急需其结果时(即两条命令执行是不相关的),则可以在一个命令的结尾输入特定的标记,将该命令作为后台命令处理,用户接着即可继续输入下一条命令,系统便可对两条命令进行并行处理。一般而言,对新用户来说,命令行方式十分繁琐,难以记忆,但对有经验的用户而言,命令行方式用起来快捷便当、十分灵活,所以,至今许多操作员仍常使用这种命令方式。简单命令的一般形式为:Command arg1 arg2 argn其中,Command 是命令名,又称命令动词,其余为该命令所带的执行参数,有些命令可以没有参数。,2批命令方式在操作命令的实际使用过程中,经常遇到需要对多条命令的连续使用,或若干条命令的重复使用,或对不同命令
7、进行选择性使用的情况。如果用户每次都采用命令行方式,将命令一条条由键盘输入,既浪费时间,又容易出错。因此,操作系统都支持一种称为批命令的特别命令方式,允许用户预先把一系列命令组织在一种称为批命令文件的文件中,一次建立,多次执行。使用这种方式可减少用户输入命令的次数,既节省了时间和减少了出错概率,又方便了用户。通常批命令文件都有特殊的文件扩展名,如MS-DOS系统的.BAT文件。,同时,操作系统还提供了一套控制子命令,增强对命令文件使用的支持。用户可以使用这些子命令和形式参数书写批命令文件,使得这样的批命令文件可以执行不同的命令序列,从而增强了命令接口的处理能力。如UNIX 和Linux 中的S
8、hell不仅是一种交互型命令解释程序,也是一种命令级程序设计语言解释系统,它允许用户使用Shell 简单命令、位置参数和控制流语句编制带形式参数的批命令文件,称做Shell 文件或Shell 过程,Shell 可以自动解释和执行该文件或过程中的命令。,7.1.2联机命令的类型为了能向用户提供多方面的服务,通常,OS都向用户提供了几十条甚至上百条的联机命令。根据这些命令所完成功能的不同,可把它们分成以下几类:系统访问类;磁盘操作类;文件操作类;目录操作类;通信类;其他命令。现分述如下。,1系统访问类在单用户微型机中,一般没有设置系统访问命令。然而在多用户系统中,为了保证系统的安全性,都毫无例外地
9、设置了系统访问命令,即注册命令Login。用户在每次开始使用某终端时,都须使用该命令,使系统能识别该用户。凡要在多用户系统的终端上上机的用户,都必须先在系统管理员处获得一合法的注册名和口令。以后,每当用户在接通其所用终端的电源后,便由系统直接调用,并在屏幕上显示出以下的注册命令:,Login:/提示用户键入自己的注册名当用户键入正确的注册名,并按下回车键后,屏幕上又会出现:Password:/提示用户键入自己的口令用户在键入口令时,系统将关闭掉回送显示,以使口令不在屏幕上显示出来。如果键入的口令正确而使注册成功时,屏幕上会立即出现系统提示符(所用符号随系统而异),表示用户可以开始键入命令。如果
10、用户多次(通常不超过三次)键入的注册名或口令都有错,系统将解除与用户的联接。,2磁盘操作命令在微机操作系统中,通常都提供了若干条磁盘操作命令。(1)磁盘格式化命令Format。它被用于对指定驱动器上的软盘进行格式化。每张新盘在使用前都必须先格式化。其目的是使磁盘记录格式能为操作系统所接受。可见,不同操作系统将磁盘初始化后的格式各异。此外,在格式化过程中,还将对有缺陷的磁道和扇区加保留记号,以防止将它分配给数据文件。,(2)复制整个软盘命令Diskcopy。该命令用于复制整个磁盘,另外它还有附加的格式化功能。如果目标盘片是尚未格式化的,则该命令在执行时,首先将未格式化的软盘格式化,然后再进行复制
11、。(3)软盘比较命令Diskcomp。该命令用于将源盘与目标盘的各磁道及各扇区中的数据逐一进行比较。(4)备份命令Backup。该命令用于把硬盘上的文件复制到软盘上,而RESTORE命令则完成相反的操作。,3文件操作命令每个操作系统都提供了一组文件操作命令。在微机OS中的文件操作命令有下述几种:(1)显示文件命令type:用于将指定文件内容显示在屏幕上。(2)拷贝文件命令copy:用于实现文件的拷贝。(3)文件比较命令comp:用于对两个指定文件进行比较。两文件可以在同一个或不同的驱动器上。(4)重新命名命令Rename:用于将以第一参数命名的文件改成用第二参数给定的名字。(5)删除文件命令e
12、rase:用于删除一个或一组文件,当参数路径名为*.BAK时,表示删除指定目录下的所有其扩展名为.Bak的文件。,4目录操作命令(1)建立子目录命令mkdir:用于建立指定名字的新目录。(2)显示目录命令dir:用于显示指定磁盘中的目录项。(3)删除子目录命令rmdir:用于删除指定的子目录文件,但不能删除普通文件,而且,一次只能删除一个空目录(其中仅含“.”和“.”两个文件),不能删除根及当前目录。(4)显示目录结构命令tree:用于显示指定盘上的所有目录路径及其层次关系。(5)改变当前目录命令chdir:用于将当前目录改变为由路径名参数给定的目录。用“.”作参数时,表示应返回到上一级目录下
13、。,5其它命令(1)输入输出重定向命令。在有的OS中定义了两个标准I/O设备。通常,命令的输入取自标准输入设备,即键盘;而命令的输出通常是送往标准输出设备,即显示终端。如果在命令中设置输出重定向“”符,其后接文件名或设备名,表示将命令的输出改向,送到指定文件或设备上。类似地,若在命令中设置输入重定向“”符,则不再是从键盘而是从重定向符左边参数所指定的文件或设备上,取得输入信息。,(2)管道连接。这是指把第一条命令的输出信息作为第二条命令的输入信息;类似地,又可把第二条命令的输出信息作为第三条命令的输入信息。这样,由两个(含两条)以上的命令可形成一条管道。在MS-DOS和UNIX中,都用“|”作
14、为管道符号,其一般格式为:Command1|Command2|Commandn;,(3)过滤命令。在UNIX及MS-DOS中都有过滤命令,用于读取指定文件或标准输入,从中找出由参数指定的模式,然后把所有包含该模式的行都打印出来。例如,MS-DOS中用命令find/N“erase”(路径名)可对由路径名指定的输入文件逐行检索,把含有字符串“erase”的行输出。其中,/N是选择开关,表示输出含有指定字串的行;如果不用N而用C,则表示只输出含有指定字串的行数;若用V,则表示输出不含指定字串的行。,(4)批命令。为了能连续地使用多条键盘命令,或多次反复地执行指定的若干条命令,而又免去每次重敲这些命令
15、的麻烦,可以提供一特定文件。在MS-DOS中提供了一种特殊文件,其后缀名用“.BAT”;在UNIX系统中称为命令文件。它们都是利用一些键盘命令构成一个程序,一次建立供多次使用。在MS-DOS中用batch命令去执行由指定或默认驱动器的工作目录上指定文件中所包含的一些命令。,7.1.3键盘终端处理程序为了实现人机交互,还须在微机或终端上配置相应的键盘终端处理程序,它应具有下述几方面的功能:(1)接收用户从终端上打入的字符。(2)字符缓冲,用于暂存所接收的字符。(3)回送显示。(4)屏幕编辑。(5)特殊字符处理。,1字符接收功能为了实现人机交互,键盘终端处理程序必须能够接收从终端输入的字符,并将之
16、传送给用户程序。有两种方式来实现字符接收功能:(1)面向字符方式。驱动程序只接收从终端打入的字符,并且不加修改地将它传送给用户程序。这通常是一串未加工的ASCII码。但大多数的用户并不喜欢这种方式。,(2)面向行方式。终端处理程序将所接收的字符暂存在行缓冲中,并可对行内字符进行编辑。仅在收到行结束符后,才将一行正确的信息送命令解释程序。在有的计算机中,从键盘硬件送出的是键的编码(简称键码),而不是ASCII码。例如,当打入a键时,是将键码“30”放入I/O寄存器,此时,终端处理程序必须参照某种表格,将键码转换成ASCII码。应当注意,某些IBM的兼容机使用的不是标准键码。此时,处理程序还须选用
17、相应的表格将其转换成标准键码。,2字符缓冲功能为了能暂存从终端键入的字符,以降低中断处理器的频率,在终端处理程序中,还必须具有字符缓冲功能。字符缓冲可采用以下两种方式之一:(1)专用缓冲区方式。这是指系统为每个终端设置一个缓冲区,暂存用户键入的一批字符,缓冲区的典型长度为200个字符左右。这种方式较适合于单用户微机或终端很少的多用户机。当终端数目较多时,需要的缓冲区数目可能很大,且每个缓冲区的利用率也很低。例如,当有100个终端时,要求有20 KB的缓冲区。但专用缓冲区方式可使终端处理程序简化。图7-1(a)示出了专用缓冲区方式。,图7-1两种缓冲方式,(2)公用缓冲池方式。系统不必为每个终端
18、设置专用缓冲区,只须设置一个由多个缓冲区构成的公用缓冲池。其中的每个缓冲区大小相同,如为20个字符,再将所有的空缓冲区链接成一个空缓冲区链。当终端有数据输入时,可先向空缓冲区链申请一空缓冲区来接收输入字符;当该缓冲区装满后,再申请一空缓冲区。这样,直至全部输入完毕,并利用链接指针将这些装有输入数据的缓冲区链接成一条输入链。每当该输入链中一个缓冲区内的字符被全部传送给用户程序后,便将该缓冲区从输入链中移出,再重新链入空缓冲区链中。显然,利用公用缓冲池方式可有效地提高缓冲的利用率。图7-1(b)示出了公用缓冲池方式。,3回送显示回送显示(回显)是指每当用户从键盘输入一个字符后,终端处理程序便将该字
19、符送往屏幕显示。有些终端的回显由硬件实现,其速度较快,但往往会引起麻烦。如当用户键入口令时,为防止口令被盗用,显然不该有回显。此外,用硬件实现回显也缺乏灵活性,因而近年来多改用软件来实现回显,这样可以做到在用户需要时才回显。用软件实现回显,还可方便地进行字符变换,如将键盘输入的小写英文字母变成大写,或相反。驱动程序在将输入的字符送往屏幕回显时,应打印在正确的位置上;当光标走到一行的最后一个位置后,便应返回到下一行的开始位置。例如,当所键入的字符数目超过一行的80个(字符)时,应自动地将下一个字符打印到下一行的开始位置。,4屏幕编辑用户经常希望能对从键盘打入的数据(字符)进行修改,如删除(插入)
20、一个或多个字符。为此,在终端处理程序中,还应能实现屏幕编辑功能,包括能提供若干个编辑键。常用的编辑键有:(1)删除字符键。它允许将用户刚键入的字符删除。在有的系统中是利用退格键即Backspace(Ctrl+H)键。当用户敲该键时,处理程序并不将刚键入的字符送入字符队列,而是从字符队列中移出其前的一个字符。,(2)删除一行键。该键用于将刚输入的一行删去。(3)插入键。利用该键在光标处可插入一个字符或一行正文。(4)移动光标键。在键盘上有用于对光标进行上、下、左、右移动的键。(5)屏幕上卷或下移键,等等。,5特殊字符处理终端处理程序必须能对若干特殊字符进行及时处理,这些字符是:(1)中断字符。当
21、程序在运行中出现异常情况时,用户可通过键入中断字符的办法来中止当前程序的运行。在许多系统中是利用Break或Delete或Ctrl+C键作为中断字符。对中断字符的处理比较复杂。当终端处理程序收到用户键入的中断字符后,将向该终端上的所有进程发送一个要求进程终止的软中断信号,这些进程收到该软中断信号后,便进行自我终止。,(2)停止上卷字符。用户键入此字符后,终端处理程序应使正在上卷的屏幕暂停上卷,以便用户仔细观察屏幕内容。在有的系统中,是利用Ctrl+S键来停止屏幕上卷的。(3)恢复上卷字符。有的系统利用Ctrl+Q键使停止上卷的屏幕恢复上卷。终端处理程序收到该字符后,便恢复屏幕的上卷功能。上述的
22、Ctrl+S与Ctrl+Q两字符并不被存储,而是被用去设置终端数据结构中的某个标志。每当终端试图输出时,都须先检查该标志。若该标志已被设置,便不再把字符送至屏幕。,7.1.4命令解释程序1命令解释程序的作用在联机操作方式下,终端处理程序把用户键入的信息送键盘缓冲区中保存。一旦用户键入回车符,便立即把控制权交给命令处理程序。显然,对于不同的命令,应有能完成特定功能的命令处理程序与之对应。可见,命令解释程序的主要作用是在屏幕上给出提示符,请用户键入命令,然后读入该命令,识别命令,再转到相应命令处理程序的入口地址,把控制权交给该处理程序去执行,并将处理结果送屏幕上显示。若用户键入的命令有错,而命令解
23、释程序未能予以识别,或在执行中间出现问题时,则应显示出某一出错信息。,2命令解释程序的组成(1)常驻部分。这部分包括一些中断服务子程序。例如:正常退出中断INT 20,它用于在用户程序执行完毕后,退回操作系统;驻留退出中断INT 27,用这种方式,退出程序可驻留在内存中;还有用于处理和显示标准错误信息的INT 24等。常驻部分还包括这样的程序:当用户程序终止后,它检查暂存部分是否已被用户程序覆盖,若已被覆盖,便重新将暂存部分调入内存。,(2)初始化部分。它跟随在常驻内存部分之后,在启动时获得控制权。这部分还包括对AUTOEXEC.BAT文件的处理程序,并决定应用程序装入的基地址。每当系统接电或
24、重新启动后,由处理程序找到并执行AUTOEXEC.BAT文件。由于该文件在用完后不再被需要,因而它将被第一个由COMMAND.COM装入的文件所覆盖。(3)暂存部分。这部分主要是命令解释程序,并包含了所有的内部命令处理程序、批文件处理程序,以及装入和执行外部命令的程序。它们都驻留在内存中,但用户程序可以使用并覆盖这部分内存,在用户程序结束时,常驻程序又会将它们重新从磁盘调入内存,恢复暂存部分。,3命令解释程序的工作流程系统在接通电源或复位后,初始化部分获得控制权,对整个系统完成初始化工作,并自动执行AUTOEXEC.BAT文件,之后便把控制权交给暂存部分。暂存部分首先读入键盘缓冲区中的命令,判
25、别其文件名、扩展名及驱动器名是否正确。若发现有错,在给出出错信息后返回;若无错,再识别该命令。,一种简单的识别命令的方法是基于一张表格,其中的每一表目都是由命令名及其处理程序的入口地址两项所组成的。如果暂存部分在该表中能找到键入的命令,且是内部命令,便可以直接从对应表项中获得该命令处理程序的入口地址,然后把控制权交给该处理程序去执行该命令。如果发现键入的命令不属于内部命令而是外部命令,则暂存部分还须为之建立命令行;再通过执行系统调用exec来装入该命令的处理程序,并得到其基地址;然后把控制权交给该程序去执行相应的命令。图7-2 示出了MS-DOS的COMMAND.COM的工作流程。,图7-2C
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 接口
链接地址:https://www.31ppt.com/p-6472729.html