收藏 分享(赏)

作系统第七章.doc

上传人:weiwoduzun 文档编号:5635653 上传时间:2019-03-10 格式:DOC 页数:11 大小:61KB
下载 相关 举报
作系统第七章.doc_第1页
第1页 / 共11页
作系统第七章.doc_第2页
第2页 / 共11页
作系统第七章.doc_第3页
第3页 / 共11页
作系统第七章.doc_第4页
第4页 / 共11页
作系统第七章.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

1、第七章 操作系统接口 7.1 联机命令接口 7.1.1 联机命令的类型 为了能向用户提供多方面的服务,通常,OS 都向用户提供了几十条甚至上百条的联机命令.根据这些命令所完成功能的不同,可把它们分成以下几类: 系统访问类; 磁盘操作类; 文件操作类; 目录操作类 ; 通信类; 其他命令. 1. 系统访问类在单用户微型机中,一般没有设置系统访问命令; 然而在多用户系统中 ,为了保证系统的安全性,都毫无例外地设置了系统访问命令, 即注册命令 Login. 用户在每次开始使用某终端时,都须使用该命令,使系统能识别该用户.凡要在多用户系统的终端上上机的用户,都必须先在系统管理员处获得一合法的注册名和口

2、令.以后,每当用户在接通其所用终端的电源后,便由系统直接调用并在屏幕上显示出以下的注册命令:Login: /提示用户键入自己的注册名 当用户键入正确的注册名,并按下回车键后,屏幕上又会出现:Password: /提示用户键入自己的口令2. 键盘操作命令(1) 磁盘格式化命令 Format. 它被用于对指定驱动器上的软盘进行格式化. 每张新盘在使用前都必须先格式化. 其目的是使其记录格式能为操作系统所接受,可见,不同操作系统将磁盘初始化后的格式各异.此外,在格式化过程中,还将对有缺陷的磁道和扇区加保留记号,以防止将它分配给数据文件. (2) 复制整个软盘命令 Diskcopy. 该命令用于复制整

3、个磁盘,另外它还有附加的格式化功能. 如果目标盘片是尚未格式化的,则该命令在执行时, 首先将未格式化的软盘格式化,然后再进行复制.(3) 软盘比较命令 Diskcomp. 该命令用于将源盘与目标盘的各磁道及各扇区中的数据逐一进行比较.(4) 备份命令 Backup. 该命令用于把硬盘上的文件复制到软盘上; 而 RESTORE 命令则完成相反的操作. 3. 文件操作命令(1) 显示文件命令 type.用于将指定文件显示在屏幕上 .(2) 拷贝文件命令 copy. 用于实现文件的拷贝.(3) 文件比较命令 comp.该命令用于对两个指定文件进行比较 . 两文件可以在同一个或 不同的驱动器上.(4)

4、 重新命名命令 Rename.该命令用于将以第一参数命名的文件, 改成用第二参数给定的名字.(5) 删除文件命令 erase.该命令用于删除一个或一组文件 ,当参数路径名为*.BAK 时,表示删除指定目录下的所有其扩展名为.Bak 的文件. 4. 目录操作命令(1) 建立子目录命令 mkdir. 用于建立指定名字的新目录.(2) 显示目录命令 dir.显示指定磁盘中的目录项.(3) 删除子目录命令 rmdir.该命令用于删除指定的子目录文件 ,但不能删除普通文件,而且,一次只能删除一个空目录( 其中仅含“.“ 和“ 两个文件), 不能删除根及当前 目录.(4) 显示目录结构命令 tree.该命

5、令用于显示指定盘上的所有目录路径及其层次关系.(5) 改变当前目录命令 chdir.该命令用于将当前目录改变为由路径名参数给定的目录 .用“作参数时 ,表示应返回到上一级目录下 . 5. 其它命令(1) 输入输出重定向命令. 在有的 OS 中定义了两个标准 I/O 设备.通常,命令的输入取自标准输入设备,即键盘;而命令的输出通常是送往标准输出设备, 即显示终端. 如果在命令中设置输出重定向“ 符,其后接文件名或设备名, 表示将命令的输出改向, 送到指定文件或设备上.类似地,若在命令中设置输入重定向“file2 时,表示把文件 file1 的内容,打印输出到文件 file2 上.同理, 对于命令

6、$ wc 表示对标准输入中的行中字和字符进行计数. 若改变其输入, 用命令 $ wc则表示把从文件 file3 中读出的行中的字和字符进行计数.须指明的是,在做输出转向时,若上述的文件 file2 并不存在,则先创建它;若已存在,则认为它是空白的,执行上述输出转向命令时,是用命令的输出数据去重写该文件;如果文件 file2 事先已有内容,则命令执行结果将用文件 file1 的内容去更新文件 file2 的原有内容.现在,如果又要求把 file4 的内容附加到现有的文件 file2 的末尾,则应使用另一个输出转向符“, 即此时应再用命令$ cat file4file2 便可在文件 file2 中

7、,除了上次复制的 file1 内容外,后面又附加了 file4 的内容.当然,若想一次把两个文件 file1 和 file4 全部复制到 file2 中 ,则可用命令$ cat file1 file4file2 此外,也可在一个命令行中,同时改变输入与输出.例如, 命令行a.outfile0 表示,在可执行文件 a.out 执行时,将从文件 file1 中提取数据, 而把 a.out 的执行结果数据输出到文件 file0 中. 2. 管道命令在有了上述的重定向思想后,为了进一步增强功能, 人们又进一步把这种思想加以扩充,用符号“|“来连接两条命令 ,使其前一条命令的输出作为后一条命令的输入.

8、即$ command 1|command 2 例如,对于下述输入cat file|wc 将使命令 cat 把文件 file 中的数据,作为 wc 命令的计数用输入. 7.2.3 通信命令 1. 信箱通信命令 mail它被作为在 UNIX 的各用户之间, 进行非交互式通信的工具.mail 采用信箱通信方式.发信者把要发送的消息写成信件,“邮寄 “到对方的信箱中.通常各用户的私有信箱采用各自的注册名命名,即它是目录/usr/spool/mail 中的一个文件,而文件名又是用接收者的注册名来命名的.信箱中的信件可以一直保留到被信箱所有者消除为止.因而,用 mail 进行通信时,不要求接收者利用终端与

9、发送者会话.亦即,在发信者发送信息时,虽然接收者已在系统中注册过,但允许他此时没有使用系统;也可以是虽在使用系统 ,但拒绝接收任何信息. 接收者也用 mail 命令读取信件,可使用可选项 r,q 或 p 等. 其命令格式为:mail-r-q-p-file-F persons由于信箱中可存放所接收的多个信件,这就存在一个选取信件的问题.上述几个选项分别表示:按先进先出顺序显示各信件的内容;在打入中断字符(DEL 或 RETURN)后,退出 mail 程序而不改变信箱的内容;以及一次性地显示信箱全部内容而不带询问,把指定文件当作信件来显示.在不使用-p 选项时,表示在显示完一个信件后 ,便出现“

10、“,以询问用户是否继续显示下一条消息,或选读完最后一条消息后退出 mail. 2. 对话通信命令 write命令格式为:write userttyname当接收者只有一个终端时,终端名可缺省.当接收者的终端被允许接收消息时,屏幕提示会通知接收者源用户名及其所用终端名. 3. 允许或拒绝接收消息的 mesg 命令其格式为:mesg-n-y选项 n 表示拒绝对方的写许可(即拒绝接收消息);选项 y 指示恢复对方的写许可,仅在此时,双方才可联机通信.当用户正在联机编写一份资料而不愿被别人干扰时,常选用 n 选项来拒绝对方的写许可.编辑完毕,再用带有 y 选项的 mesg 命令来恢复对方的写许可,不带

11、自变量的mesg 命令只报告当前状态而不改变它. 7.2.4 后台命令 UNIX 系统提供了这种机制, 用户可以在这种命令后面再加上“然后, 在源和目标进程之间便可开始通信 . 可以利用发送消息的系统调用 send message或者用接收消息的系统调用 receive message 来交换信息.通信结束后,还须再利用关闭连接的系统调用 close connection 结束通信. 7.3.3 系统调用的实现 1. 中断和陷入硬件机构(1) 什么是中断和陷入. 中断是指 CPU 对系统发生某事件时的这样一种响应:CPU 暂停正在执行的程序,在保留现场后自动地转去执行该事件的中断处理程序;执行

12、完后,再返回到原程序的断点处继续执行 .图 7 - 4 中断时的 CPU 轨迹 (2) 中断和陷入向量. 2. 系统调用号和参数的设置 直接将参数送入相应的寄存器中. (2) 参数表方式. 图 7 - 6 系统调用的参数形式 3. 系统调用的处理步骤 首先,将处理机状态由用户态转为系统态;之后,由硬件和内核程序进行系统调用的一般性处理,即首先保护被中断进程的 CPU 环境,将处理机状态字 PSW,程序计数器 PC,系统调用号,用户栈指针以及通用寄存器内容等,压入堆栈;然后,将用户定义的参数传送到指定的地方保存起来.其次,是分析系统调用类型,转入相应的系统调用处理子程序.最后,在系统调用处理子程

13、序执行完后,应恢复被中断的或设置新进程的 CPU 现场,然后返回被中断进程或新进程, 继续往下执行. 4. 系统调用处理子程序的处理过程进入 Creat 的处理子程序后,核心将根据用户给定的文件路径名 Path, 利用目录检索过程,去查找指定文件的目录项.查找目录的方式可以用顺序查找法,也可用 Hash 查找法.如果在文件目录中找到了指定文件的目录项,表示用户要利用一个已有文件来建立一个新文件.但如果在该已有(存) 文件的属性中有不允许写属性,或者创建者不具有对该文件进行修改的权限 ,使认为是出错而做出错处理;若不存在访问权限问题 ,便将已存文件的数据盘块释放掉,准备写入新的数据文件.如未找到

14、指名文件,则表示要创建一个新文件,核心便从其目录文件中找出一个空目录项,并初始化该目录项,包括填写文件名,文件属性,文件建立日期等,然后将新建文件打开. 7.4 UNIX 系统调用 7.4.1 UNIX 系统调用的类型 1. 进程控制 创建进程(fork).(2) 终止进程(exit). (3) 等待子进程结束(wait). (4) 执行一个文件(exec). (5) 获得进程 ID. (6) 获得用户 ID. (7) 进程暂停(pause). 2. 文件操纵 创建文件(creat). (2) 打开文件(open). (3) 关闭文件(close). (4) 读和写文件 read 和 writ

15、e.(5) 连接和去连接(link 和 unlink). 文件描述符 fd; buf 缓冲区首址 . 用户要求传送的字节数 nbyte. 3. 进程间通信 消息机制. (2) 共享存储器机制. (3) 信号量机制. 4. 信息维护 设置和获得时间.(2) 获得进程和子进程时间(times). (3) 设置文件访问和修改时间(utime). (4) 获得当前 UNIX 系统的名称(uname). 7.4.2 被中断进程的环境保护 1. CPU 环境保护当用户程序处在用户态,且在执行系统调用命令(即 CHMK 命令) 之前,应在用户空间提供系统调用所需的参数表,并将该参数表的地址送入 R0 寄存器

16、.在执行 CHMK 命令后,处理机将由用户态转为核心态,并由硬件自动地将处理机状态长字(PSL),程序计数器(PC)和代码操作数(code)压入用户核心栈 ,继而从中断和陷入向量表中取出 trap.S 的入口地址然后便转入中断和陷入总控程序 trap.S 中执行. trap.S 程序执行后,继续将陷入类型 type 和用户栈指针 usp 压入用户核心栈,接着还要将被中断进程的 CPU 环境中的一系列寄存器如 R0R11 的部分或全部内容压入栈中.至于哪些寄存器的内容要压入栈中,这取决于特定寄存器中的屏蔽码,该屏蔽码的每一位都与 R0R11 中的一个寄存器相对应.当某一位置成 1 时,表示对应寄

17、存器的内容应压入栈中. 2. AP 和 FP 指针 图 7 - 7 用户核心栈 7.4.3 系统调用陷入后需处理的若干公共问题 1. 确定系统调用号trap(usp, type, code, PC, PSL)其中,参数 PSL 为陷入时处理机状态字长,PC 为程序计数器,code 为代码操作数,type 为陷入类型号,usp 为用户栈指针.对陷入的处理可分为多种情况,如果陷入是由于系统调用所引起的,则对此陷入的第一步处理, 便是确定系统调用号.通常,系统调用号是包含在代码操作数中,故可利用 code 来确定系统调用号 i. 其方法是: 令i=code 第二个元素是系统调用经寄存器传送的参数个数

18、; 第三个元素是相应系统调用处理子程序的入口地址.在系统中设置了该表之后,便可根据系统调用号 i 从系统调用定义表中找出相应的表目 ,再按照表目中的入口地址转入相应的处理子程序,由该程序去完成相应系统调用的特定功能.在该子程序执行完后,仍返回到中断和陷入总控程序中的 trap.C 程序中,去完成返回到断点前的公共处理部分. 4. 系统调用返回前的公共处理在 UNIX 系统中 ,进程调度的主要依据,是进程的动态优先级.随着进程执行时间的加长,其优先级将逐步降低.每当执行了系统调用命令,并由系统调用处理子程序返回到 trap.C 后,都将重新计算该进程的优先级;另外 ,在系统调用执行过程中,若发生

19、了错误使进程无法继续运行时,系统会设置再调度标志.处理子程序在计算了进程的优先级后,又去检查该再调度标志是否已又被设置.若已设置, 便调用 switch 调度程序,再去从所有的就绪进程中选择优先级最高的进程, 把处理机让给该进程去运行. 7.5 图形用户接口 7.5.1 桌面,图标和任务栏 1. 桌面与图标的初步概念所谓桌面,是指整个屏幕空间,即在运行 Windows 时用户所看到的屏幕.该桌面是由多个任务共享.为了避免混淆, 每个任务都通过各自的窗口显示其操作和运行情况,因此, Windows 允许在桌面上同时出现多个窗口.所谓窗口是指屏幕上的一块矩形区域.应用程序(包括文档) 可通过窗口向

20、用户展示出系统所能提供的各种服务及其需要用户输入的信息; 用户可通过窗口中的图标去查看和操纵应用程序或文档. 2. 桌面上常见的图标 3. “开始“按钮和任务栏 “开始“ 按钮. (2) 任务栏. (3) 任务栏的隐藏方式. (4) 任务子栏. 7.5.2 窗口 1. 窗口的组成 标题栏和窗口标题. (2) 菜单栏. (3) 工具栏. (4) 控制菜单按钮. (5) 最大化, 最小化和关闭按钮. (6) 滚动条. (7) 窗口边框. (8) 工作区域. 2. 窗口的性质 (1) 窗口的状态. (2) 窗口的改变. 7.5.3 对话框 1. 对话框的用途 对话框的主要用途是实现人机对话,即系统可通过对话框提示用户输入与任务有关的信息,比如提示用户输入要打开文件的名字,其所在目录,所在驱动器及文件类型等信息;或者对于对象的属性,窗口等的环境设置的改变等, 比如设置文件的属性,设置显示器的颜色和分辨率,设置桌面的显示效果;还可以提供用户可能需要的信息等 . 2. 对话框的组成 标题栏 2) 输入框 3) 按钮 命令按钮. (2) 选择按钮. (3) 滑块式按钮. (4) 数字式增减按钮. 图 7-10 对话框 (a)“另存为“ 对话框图 7-10 对话框

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报