操作系统接口_第1页
操作系统接口_第2页
操作系统接口_第3页
操作系统接口_第4页
操作系统接口_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

会计学1操作系统接口7.1联机用户接口用户接口可以分为如下两类:(1)联机用户接口(交互式)(操作命令)(2)脱机用户接口(作业控制语言)第1页/共42页7.1.1联机用户接口不同操作系统的联机命令接口有所不同,命令的种类、数量及功能方面,以及命令的形式、用法等方面。从用法和形式方面可分成以下两种:(1)字符显示式用户界面;(2)图形化用户界面。第2页/共42页1.命令行方式该方式是指以行为单位输入和显示不同的命令。命令的执行是串行、间断的,后一个命令的输入一般需等到前一个命令执行结束,如用户键入的一条命令处理完成后,系统发出新的命令输入提示符,用户才可以继续输入下一条命令。简单命令的一般形式为:Commandarg1arg2...argn其中,Command是命令名,又称命令动词,其余为该命令所带的执行参数,有些命令可以没有参数。

(1)A>dirc:/windows(2)A>copya.txtb.txt(3)A>edit第3页/共42页2.批命令方式用户预先把一系列命令组织在一种称为批命令文件的文件中,一次建立,多次执行。使用这种方式可减少用户输入命令的次数,既节省了时间和减少了出错概率,又方便了用户。通常批命令文件都有特殊的文件扩展名,如MS-DOS系统的.BAT文件。第4页/共42页7.1.2联机命令的类型根据命令所完成功能的不同,可分成以下几类:①系统访问类;②磁盘操作类;③文件操作类;④目录操作类;⑤通信类;⑥其他命令。第5页/共42页1.系统访问类为了保证系统的安全性,凡要在多用户系统的终端上上机的用户,都必须先在系统管理员处获得一合法的注册名和口令。以后,每当用户在接通其所用终端的电源后,便由系统直接调用,并在屏幕上显示出以下的注册命令:Login:

/提示用户键入自己的注册名Password:

/提示用户键入自己的口令第6页/共42页2.磁盘操作命令在微机操作系统中,通常都提供了若干条磁盘操作命令。(1)磁盘格式化命令Format(2)复制整个软盘命令Diskcopy(3)软盘比较命令Diskcomp(4)备份命令Backup第7页/共42页3.文件操作命令每个操作系统都提供了一组文件操作命令。在微机OS中的文件操作命令有下述几种:

(1)显示文件命令type

(2)拷贝文件命令copy

(3)文件比较命令comp

(4)重新命名命令Rename

(5)删除文件命令erase第8页/共42页4.目录操作命令(1)建立子目录命令mkdir(2)显示目录命令dir(3)删除子目录命令rmdir(4)显示目录结构命令tree(5)改变当前目录命令chdir第9页/共42页

5.其它命令(1)输入输出重定向命令。在有的OS中定义了两个标准I/O设备。即键盘和显示终端。如果在命令中设置输出重定向“>”符,表示将命令的输出改向。若在命令中设置输入重定向“<”符,则不再是从键盘而是从重定向符左边参数所指定的文件或设备上,取得输入信息。(2)管道连接。这是指把第一条命令的输出信息作为第二条命令的输入信息。这样,由两个(含两条)以上的命令可形成一条管道。在MS-DOS和UNIX中,都用“|”作为管道符号,其一般格式为:Command1|Command2|…|Commandn;第10页/共42页(3)过滤命令。用于读取指定文件或标准输入,从中找出由参数指定的模式,然后把所有包含该模式的行都打印出来。例如,MS-DOS中用命令

find/N“erase”(路径名)可对由路径名指定的输入文件逐行检索,把含有字符串“erase”的行输出。(4)批命令。为了多次反复地执行指定的若干条命令,可以提供一特定文件。在MS-DOS中提供了一种特殊文件,其后缀名用“.BAT”;在UNIX系统中称为命令文件。它们都是利用一些键盘命令构成一个程序,一次建立供多次使用。第11页/共42页7.1.3键盘终端处理程序键盘终端处理程序应具有的功能:(1)接收用户从终端上打入的字符。(2)字符缓冲,用于暂存所接收的字符。(3)回送显示。(4)屏幕编辑。(5)特殊字符处理。第12页/共42页1.字符接收功能

面向字符方式:驱动程序将用户从终端键入的字符不加任何修改传送给用户程序。

面向行方式:终端处理程序将接受的字符暂存在行缓冲中,并对其加以编辑,当接受到行结束符时才将此行的信息送命令解释程序。第13页/共42页2.字符缓冲

字符缓冲是指暂存从终端输入的字符,其方式有两种:专用缓冲区方式:系统为每个终端设置一缓冲区,用于暂存用户键入的字符,此方式在终端数目较多时所需的缓冲数量较大,且利用率较低,故该方式比较适合于单用户系统或终端较少的多用户系统。

公用缓冲池方式:系统为各个终端只设置一个由多个大小相同的缓冲区构成的公用缓冲池,当有数据从终端输入时,需向缓冲池申请一个缓冲区来接收字符,若一个装满则再申请一个,并通过指针相连直至输入完毕,当一缓冲区内的字符传送给用户进程之后,将缓冲区从链中移出。此方式下缓冲的利用率较高。第14页/共42页图7-1两种缓冲方式第15页/共42页3.回送显示回送显示是指用户每从键盘键入一个字符,终端处理程序便将该字符送屏幕显示,其实现方式有硬件和软件两种,用硬件实现速度较快,但缺乏灵活性,用软件实现可根据需要回显并方便字符变换。4.屏幕编辑(1)删除字符键。(2)删除一行键。(3)插入键。(4)移动光标键。(5)屏幕上卷或下移键。第16页/共42页5.特殊字符处理

(1)中断字符。

当程序在运行中出现异常情况时,用户可通过键入中断字符的办法来中止当前程序的运行。在许多系统中是利用Break或Delete或Ctrl+C键作为中断字符。

(2)停止上卷字符。

用户键入此字符后,终端处理程序应使正在上卷的屏幕暂停上卷,以便用户仔细观察屏幕内容。在有的系统中,是利用Ctrl+S键来停止屏幕上卷的。

(3)恢复上卷字符。

有的系统利用Ctrl+Q键使停止上卷的屏幕恢复上卷。终端处理程序收到该字符后,便恢复屏幕的上卷功能。第17页/共42页7.1.4命令解释程序1.命令解释程序的作用命令解释程序的主要作用是在屏幕上给出提示符,请用户键入命令,然后读入该命令,识别命令,再转到相应命令处理程序的入口地址,把控制权交给该处理程序去执行,并将处理结果送屏幕上显示。若用户键入的命令有错,则应显示出某一出错信息。第18页/共42页2.命令解释程序的组成(MS-DOS)常驻部分中断服务子程序、暂存部分恢复子程序初始化部分启动时获得控制权。还包括对Autoexec.bat文件的处理程序,并决定应用程序装入的基址。系统启动后,由处理程序找到并执行AUTOEXEC.BAT文件。由于该文件在用完后不再被需要,因而它将被第一个由COMMAND.COM装入的文件所覆盖。暂存部分包含了所有的内部命令处理模块、批文件处理程序,以及装入和执行外部命令的程序。第19页/共42页3.命令解释程序的工作流程系统在接通电源或复位后,初始化部分获得控制权,对整个系统完成初始化工作,并自动执行AUTOEXEC.BAT文件,之后便把控制权交给暂存部分。暂存部分首先读入键盘缓冲区中的命令,判别其文件名、扩展名及驱动器名是否正确。若无错,再识别该命令。命令识别方法:表格法{命令名及入口地址}如果暂存部分在该表中能找到键入的命令,且是内部命令,便可以直接从对应表项中获得该命令处理程序的入口地址,然后执行该命令。如果发现键入的命令不属于内部命令而是外部命令,则暂存部分还须为之建立命令行;再通过执行系统调用exec来装入该命令的处理程序,并得到其基地址;然后执行相应的命令。第20页/共42页是内部命令?DIR命令处理程序Type命令处理程序Copy命令处理程序Date命令处理程序命令合法否?输入命令行从外存调入外部命令执行显示提示符第21页/共42页7.3系统调用程序接口是OS专门为用户程序设置的,也是用户程序取得OS服务的唯一途径。程序接口通常是由各种类型的系统调用组成的。应用程序通过系统调用实现与OS通信,并可取得它的服务。第22页/共42页7.3.1系统调用的基本概念在OS的核心中设置了一组用于实现各种系统功能的子程序(过程)。由于这些程序或过程是OS系统本身程序模块中的一部分,为了保护操作系统程序不被用户程序破坏,OS向应用程序提供了一系列的系统调用命令,让应用程序通过系统调用去调用所需的系统过程。第23页/共42页1.系统态和用户态为了保证系统程序不被应用程序有意或无意地破坏,为计算机设置了两种状态:系统态(也称为管态或核心态)和用户态(也称为目态)。操作系统在系统态运行,而应用程序只能在用户态运行。现代多数操作系统将CPU的指令集分为特权指令和非特权指令两类。1)特权指令:就是在系统态时运行的指令,是关系到系统全局的指令。特权指令只允许操作系统使用,不允许应用程序使用。2)非特权指令:是在用户态时运行的指令。一般应用程序所使用的都是非特权指令,它只能完成一般性的操作和任务。这种限制是由硬件实现的,如果在应用程序中使用了特权指令,就会发出权限出错信号。第24页/共42页2.系统调用当应用程序中需要操作系统提供服务时,应用程序必须使用系统调用命令。由操作系统捕获到该命令后,便将CPU的状态从用户态转换到系统态,然后执行操作系统中相应的子程序(例程),完成所需的功能。执行完成后,系统又将CPU状态从系统态转换到用户态,再继续执行应用程序。系统调用与一般过程调用的差别:(1)运行在不同的系统状态。(2)状态的转换通过软中断进入。(3)返回问题。(4)嵌套调用。第25页/共42页系统调用命令调用返回系统功能用户程序(a)系统调用与返回系统调用命令调用系统功能系统调用命令返回系统子功能(b)程序之间的嵌套调用第26页/共42页3.中断机制系统调用是通过中断机制实现的,并且一个操作系统的所有系统调用都通过同一个中断入口来实现。如MS-DOS提供了INT21H。终端机制本身也是受保护的。只有授权给应用程序的中断号,才是可以被应用程序调用的。如Linux仅仅给应用程序授权了4个中断号:3、4、5以及80h,80h正时系统调用的中断号。第27页/共42页7.3.2系统调用的类型1.进程控制类系统调用这类系统调用主要用于对进程的控制,如创建一个新的进程和终止一个进程的运行,获得和设置进程属性等。1)创建和终止进程的系统调用2)获得和设置进程属性的系统调用3)等待某事件出现的系统调用第28页/共42页2.文件操纵类系统调用对文件进行操纵的系统调用数量较多,有创建文件、删除文件、打开文件、关闭文件、读文件、写文件、建立目录、移动文件的读/写指针、改变文件的属性等。

1)创建和删除文件

2)打开和关闭文件

3)读和写文件第29页/共42页3.进程通信类系统调用

在OS中经常采用两种进程通信方式,即消息传递方式和共享存储区方式。当系统中采用消息传递方式时,在通信前,必须先打开一个连接。用户在利用共享存储区进行通信之前,须先建立一个共享存储区,再将该共享存储区连接到进程自身的虚地址空间上。第30页/共42页7.3.3POSIX标准国际标准化组织ISO给出的有关系统调用的国际标准POSIX1003.1(PortableOperatingSystemIX)。POSIX定义了标准应用程序接口(API),用于保证编制的应用程序可以在源代码一级上在多种操作系统上移植运行。只有符合这一标准的应用程序,才有可能完全兼容多种操作系统,即在多种操作系统下都能够运行。POSIX标准定义了一组过程,这组过程是构造系统调用所必须的。通过调用这些过程所提供的服务,确定了一系列系统调用的功能。POSIX标准所定义的一组过程虽然指定了系统调用的功能,但并没有明确规定系统调用是以什么形式实现的,是库函数还是其它形式。第31页/共42页图

Unix/Linux系统程序、库函数、系统调用的分层关系

第32页/共42页7.3.4系统调用的实现

1.中断和陷入硬件机构

(1)什么是中断和陷入。

中断是指CPU对系统发生某事件时的这样一种响应:CPU暂停正在执行的程序,在保留现场后自动地转去执行该事件的中断处理程序;执行完后,再返回到原程序的断点处继续执行。还可进一步把中断分为外中断和内中断。外中断,是指由于外部设备事件所引起的中断,如通常的磁盘中断、打印机中断等;而内中断则是指由于CPU内部事件所引起的中断,如程序出错(非法指令、地址越界)、电源故障等。内中断(trap)也被译为“捕获”或“陷入”。通常,陷入是由于执行了现行指令所引起的;而中断则是由于系统中某事件引起的,该事件与现行指令无关。第33页/共42页第34页/共42页2)中断和陷入向量中断向量指中断处理程序入口地址和相应的处理机状态字PSW。相应地,把存放这两个字的单元称为中断向量单元。对于陷入,也有陷入向量,不同的系统调用对应不同的陷入向量,在进行陷入处理时,根据陷入指令中的陷入向量,转入实现相应的系统调用功能的子程序,即陷入处理程序。第35页/共42页中断向量单元

外设种类

优先级

中断处理程序入口地址

060

电传输出

4

klrint

064

电传输入

4

klxint

070

纸带机输入

4

perint

074

纸带机输出

4

pcpint

(a)中断向量

(b)陷入向量

陷入向量单元

陷入种类

优先级

陷入处理程序入口地址

004

总线超时

7

trap

064

非法指令

7

trap

070

电源故障

7

trap

074

trap指令

7

trap

温馨提示

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

评论

0/150

提交评论