第七章操作系统用户接口
第七章-操作系统的用户接口
第七章操作系统的用户接口概述•OS是计算机的资源管理器和用户接口;•OS的用户接口负责接收用户向OS提出的服务请求,传递有关信息,并将服务的结果返回给用户;•OS用户接口有两类:联机用户接口(有命令行界面和图形界面两种形式),程序接口(主要是系统调用)。
另外,在Internet中还有一种网络用户接口。
第一节联机命令接口一、什么是联机命令接口•是用户从键盘上输入的OS命令。
通过输入键盘命令,用户可以取得OS 的服务,控制自己的程序执行;•OS的联机命令接口包括:一组联机命令、命令解释程序(命令解释器)和终端处理程序;•联机命令接口的工作过程:(1) 用户在终端上(通过键盘)输入所需命令;(2) 终端处理程序接收该命令,并在屏幕上显示(回显)命令;(3) 一条命令输入完毕,由命令解释程序对命令进行分析,然后执行对应的命令处理程序,完成任务。
二、联机命令1、为了能向用户提供多方面的服务,通常,OS都向用户提供了几十条甚至上百条的联机命令。
这批命令分为内部命令和外部命令两类。
另外,用户建立的每个可执行程序也是一条联机命令(外部命令)。
根据这些命令所完成功能的不同,可把它们分成以下几类:①系统访问类;②磁盘操作类;③文件操作类;④目录操作类;⑤通信类;⑥其他命令。
2、各类命令举例•系统访问类:Login;用户注册命令•磁盘操作命令:Diskcopy;整盘复制命令Format;磁盘格式化命令Diskcomp;软盘比较命令Backup,Restore;硬盘备份与恢复命令•文件操作命令:Type;文件内容显示命令Copy;文件复制命令Comp;文件比较命令Rename;文件重命名命令Erase,Dele;文件删除命令关于文件名中的*和?的意义。
•目录操作命令:Mkdir,Md;建立一个子目录Dir;显示目录表的内容Rmdir,Rd;删除子目录Tree;显示目录结构Chdir,Cd;更改当前工作目录•其它命令I/O重定向命令:在有的OS中定义了两个标准I/O设备。
第7章操作系统接口(系统调用部分)资料
中断是指CPU对系统发生某事件时的这样一种响应:
CPU暂停正在执行的程序,在保留现场后自动地转去执行
该事件的中断处理程序;执行完后,再返回到原程序的断
点处继续执行 。
2020/11/11
15
被中断程序
中断处理开始
中断点
中断处理 程序
中断处理结束
图 7 - 4 中断时的CPU轨迹
2020/11/11
2020/11/11
5
系统调用
操作系统中提供了系统调用,使应用 程序可以通过系统调用的方法,间接调用 操作系统的相关过程,取得相应的服务。
应用程序使用系统调用命令,以取得 操作系统服务时,操作系统将CPU的状态从 用户态转换到系统态,然后执行操作系统 中相应的子程序,完成所需的功能,执行 完成后,系统又将CPU状态从系统态转换到 用户态,再继续执行应用程序。
其次,是分析系统调用类型,转入相应的系统调用处理 子程序。
最后,在系统调用处理子程序执行完后,应恢复被中断
的或设置新进程的CPU现场,然后返回被中断进程或新进程,
继续往下执行。
2020/11/11
18
练习:
系统调用的目的是() A、请求系统服务 B、终止系统服务 C、申请系统资源 D、释放系统资源 用户程序通过系统调用creat来创建一新文件时,在执行 系统调用前,用户进程是运行在()下,在执行creat()的 过程中,用户进程是运行在()下。
操作系统在系统态运行,应用程序只能在用 户态运行。
2020/11/11
4
特权指令与非特权指令
CPU的指令分为特权指令和非特权指令。
特权指令:在系统态时运行的指令,关系到全 局的指令。只允许操作系统使用,不允许应用程 序使用。
操作系统的用户接口课件
窗口系统
窗口系统的概念
窗口系统是GUI的重要组成部分,它通过窗口来组织和简 化用户操作。每个窗口都有自己的标题、边框和可以自由 拖动的控制按钮。
窗口系统的功能
窗口系统提供了一系列的窗口操作,如打开、关闭、最小 化、最大化、还原等。用户可以通过鼠标点击或键盘快捷 键来进行这些操作。
常见的窗口系统
Windows、Mac OS和Linux等操作系统都提供了各自的 窗口系统。不同的窗口系统具有不同的特点和风格,但它 们的核心功能基本一致。
缺点
相对于图形用户界面,命令行接口可能不够直观和易于使用。此外,由于命令 行需要用户手动输入命令,因此可能会存在输入错误的风险。
03
图形用户接口
GUI基础
图形用户界面的定义
图形用户界面(GUI)是一种基于图形的方式,使用户能够直观地与计算机进行交互。它 通过图形元素,如窗口、图标、菜单等,使用户可以轻松地操作计算机。
遥控器接口
通过遥控器实现对设备的 控制,如按键输入等操作 。
输入设备的选择
根据应用场景选择合适的 输入设备,提高用户体验 。
多媒体用户接口的优缺点
优点
多媒体用户接口可以提供丰富的交互 方式,使用户更加便捷地获取信息和 使用设备功能。
缺点
多媒体用户接口需要处理大量的数据 和复杂的交互逻辑,对设备性能要求 较高,同时也需要考虑用户的使用习 惯和界面设计等因素。
输出结果。
命令行基本规则
在命令行中,用户需要按照特定 的语法和规则输入命令。这些规 则包括命令的格式、命令的参数
和选项的格式等。
命令行操作与控制
01
命令行操作
在命令行中,用户可以执行各种操作,例如创建文件、删除文件、复制
第7章-OS接口
二、重定向与管道命令 1.重定向命令 标准输入和标准输出的文件,对应于终端键盘输入和终端屏幕输出。 当用户不要求从键盘输入,而是从某个指定文件上读取信息供程序使用; 用户可能希望把程序执行时所产生的结果数据,写到某个指定文件中而非 屏幕上时就需要改变输入与输出文件。 重定向符“<”和“>”分别表示输入转向与输出转向。 $ cat file1>file2 ↙ $ wc <file3 ↙ $ cat file4>>file2 ↙ a.out<file1>file0 ↙
一、简单命令
即目标程序的名字。 命令由小写字母构成(仅前8个字母有效)。 命令的格式如下: $ Command-option argument list 例如: $ LS file1 file2 ↙
11
一、简单命令
1.进入与退出系统 (1) 进入系统,也称为注册。(2) 退出系统。 2.文件操作命令 (1) 显示文件内容命令cat。 $ cat filename1 filename2 ↙ (2) 复制文件副本的命令cp。其格式为: cp source target (3) 对已有文件改名的命令mv。其格式为 mv oldname newname (4) 撤消文件的命令rm。 (5) 确定文件类型的命令file。
26
7.3 系 统 调 用
三、POSIX标准 实现应用程序与操作系统平台的无关性。
国 际 标 准 化 组 织 ISO 给 出 的 有 关 系 统 调 用 的 国 际 标 准 POSIX1003.1(Portable Operating System IX),也称为“基 于UNIX 的可移植操作系统接口”。
25
7.3 系 统 调 用
第7章 操作系统接口
第七章 操作系统接口 7.3.1 系统调用的基本概念
函数的集合就是Windows操作系统提供给应用程序编程 的接口(Application Programming Interface),简称Windows API或Win32 API(注:某些Win32 API,如管理Windows线 程的API等,它们并没有操纵内核对象,因此不是系统调用。 本实验只讨论API的使用,不再做进一步区分)。所有在 Win32平台上运行的应用程序都可以调用这些函数。
第七章 操作系统接口 2. 对话框的组成 1) 标题栏 2) 输入框 3) 按钮 (1)命令按钮。 (2) 选择按钮。 (3) 滑块式按钮。 (4) 数字式增减按钮。
第七章 操作系统接口
(a) “另存为”对话框 图 7 -11 对话框
第七章 操作系统接口
(b) “格式化”对话框
图 7 -11 对话框
命令解释程序是用户和系统内核之间的接口程序。
Command程序是一个命令语言解释器,它拥有自己内建
的命令集,用户或其他应用程序都可通过对Command程序的
调用完成与系统内核的交互。我们可以把系统内核想象成一 个球体的中心,Command命令解释程序就是包围内核的外壳。
第七章 操作系统接口 7.1.3 命令解释程序
第七章 操作系统接口
图7-10 “我的电脑”窗口的组成
第七章 操作系统接口 2. 窗口的性质 (1) 窗口的状态。 (2) 窗口的改变
第七章 操作系统接口 7.5.4 对话框 1. 对话框的用途 对话框的主要用途是实现人—机对话,即系统可通过对 话框提示用户输入与任务有关的信息,比如提示用户输入要 打开文件的名字、其所在目录、所在驱动器及文件类型等信 息;或者对于对象的属性、窗口等的环境设置的改变等, 比如设置文件的属性、设置显示器的颜色和分辨率、设置桌 面的显示效果七章 操作系统接口 三、系统调用的处理步骤 MS-DOS——INT 21
计算机操作系统_第7章_用户接口
计算机操作系统
信息学院计算机系
7.3.2 系统调用的类型
1.进程控制类系统调用 .
创建和终止进程的系统调用 获得和设置进程属性的系统调用:进程标识符、 获得和设置进程属性的系统调用:进程标识符、 进程优先级、 进程优先级、最大执行时间等 等待某事件出现的系统调用
2. 2.文件操纵类系统调用
如mkdir、dir、rmdir、tree、cd等。 、 、 、 、 等
5.其他命令
如输入输出重定向命令、管道命令、过滤命令、批命令 如输入输出重定向命令、管道命令、过滤命令、 等。
2005年9月 年 月
计算机操作系统
信息学院计算机系
7.1.2 键盘终端处理程序
具有下述几方面功能: 具有下述几方面功能:
7.2.1 UNIX简单命令 简单命令
2.文件操作命令 .
显示文件内容。 1)cat——显示文件内容。 cat 显示文件内容 例如: filename2——依次显 例如:$cat filename1 filename2 依次显 示两个文件内容。 是提示符(下同)。 示两个文件内容。$是提示符(下同)。 cp——复制文件命令。 复制文件命令。 2)cp 复制文件命令 例如: 例如:$cp source target mv——文件更名 3)mv 文件更名 例如: 例如:$mv oldname newname rm——撤消(删除)文件 撤消( 4)rm 撤消 删除) 例如: 例如:$rm filename 5)file——确定文件的类型。 确定文件的类型。 ) 确定文件的类型
2005年9月 年 月
计算机操作系统
信息学院计算机系
7.2.3 通信命令
1.信箱通信命令mail .信箱通信命令 2.对话通信命令 .对话通信命令write 3.允许或拒绝接收消息命令mesg .允许或拒绝接收消息命令
操作系统第七章参考答案
第七章参考答案1、操作系统为用户提供的接口有:作业级接口与程序级接口。
作业级接口:操作系统为用户对作业运行全过程控制提供的功能(1) 联机接口(交互式)(2) 脱机接口程序级接口:系统为用户在程序一级提供有关服务而设置,由一组系统调用命令组成•负责管理和控制运行的程序•并在这些程序与系统控制的资源和提供的服务间实现交互作用•用汇编语言:在程序中直接用系统调用命令•用高级语言:可在编程时使用过程调用语句2、接口包括3部分:一组联机命令,终端处理程序,命令解释程序3、联机命令通常有以下几类:(1)系统访问类,包括Login、Password等命令;(2)磁盘操作类,包括Format,Diskcopy,Diskcomp,Bakeup等命令;(3)文件操作类,包括Type、Copy、Comp、Rename、Del等命令;(4)目录操作类,包括Mkdir、dir、rmdir、tree、chdir等命令;(5)通信类;(6)其它命令(见书P222-223)。
4、I/O重定向—用于I/O操作的设备可以更换(即重定向)而不必改变应用程序。
例如:我们正在调试一个应用程序,可将程序的所有输出送到屏幕;而程序调试后,如果需要将程序的结果进行打印,此时需要将I/O重定向的数据结构—逻辑设备表中的显示终端改为打印机,而不修改程序。
I/O重定向具有很大的使用价值,现已经被广泛应用在各种OS 中。
(在UNIX与DOS中有具体的实现形式,可见P230)。
5、就是把第一个命令的输出作为第二个命令的输入;类似地,又把第二个命令的输出作为第三个命令的输入;这样,就由两条已上的命令形成一条管道。
在DOS与UNIX中用“|”作为管道符号。
其格式为 command1| command2| command3|…. commandn 6、见书P22311、COPY命令13、系统调用方式与程序中一般的调用方式的相同点:(1)改变指令流程;(2)重复执行和公用;(3)改变指令流程后需要返回原处系统调用方式与程序中一般的调用方式的不同点:(1)运行在不同的系统状态:一般过程调用,其调用程序和被调用程序都运行在相同状态(核心态或用户态);系统调用:调用程序在用户态,被调用程序在系统态。
计算机操作系统_07操作系统接口
计算机操作系统_07操作系统接口在计算机的世界里,操作系统就如同一个大管家,负责协调和管理计算机的各种资源,让硬件和软件能够协同工作,为用户提供一个高效、稳定的计算环境。
而操作系统接口则是用户与操作系统进行交互的桥梁,它允许用户向操作系统发出指令,获取所需的服务和信息。
操作系统接口主要分为两类:命令行接口和图形用户接口(GUI)。
命令行接口是一种通过输入命令来与操作系统进行交互的方式。
对于那些熟悉计算机技术的专业人员来说,命令行接口具有高效、灵活的特点。
想象一下,您在一个黑色的终端窗口中,快速地输入一系列指令,操作系统迅速响应并执行您的要求,这种感觉就像是在与计算机进行一场直接而深入的对话。
比如,在 Unix 和 Linux 系统中,常见的命令如“ls”用于列出当前目录下的文件和文件夹,“cd”用于切换目录,“mkdir”用于创建新的目录等等。
通过组合和运用这些命令,您可以完成各种复杂的任务,从文件管理到系统配置,从网络设置到进程监控。
然而,对于大多数普通用户来说,图形用户接口(GUI)可能更加直观和易于使用。
GUI 以窗口、图标、菜单和鼠标操作等元素为基础,为用户提供了一个可视化的操作环境。
当您打开电脑,看到的桌面、图标、任务栏等,都是 GUI 的一部分。
以 Windows 操作系统为例,您可以通过点击桌面上的图标来启动应用程序,通过菜单选择来执行各种操作,如复制、粘贴文件,更改系统设置等。
而且,GUI 通常提供了丰富的视觉反馈,比如鼠标指针的变化、窗口的缩放和移动效果等,让用户能够更清晰地了解自己的操作结果。
操作系统接口还包括系统调用接口。
系统调用是操作系统提供给应用程序的一种接口,它允许应用程序请求操作系统的服务,如文件操作、内存管理、进程控制等。
应用程序通过特定的编程接口向操作系统发出系统调用请求,操作系统在接收到请求后,会执行相应的操作,并将结果返回给应用程序。
比如说,当一个应用程序需要读取一个文件的内容时,它会通过系统调用向操作系统请求打开文件、读取数据等操作。
操作系统提供的服务和用户接口
操作系统提供的服务和用户接口操作系统是一种系统软件,它为计算机硬件和应用软件之间提供了一个桥梁。
操作系统通过提供一系列的服务和用户接口,使得计算机能够有效地运行,用户可以方便地操作计算机。
操作系统提供的服务大致可以分为五类:进程管理、内存管理、文件管理、设备管理和用户界面。
下面将逐一介绍这些服务及其对应的用户接口。
首先是进程管理。
进程是指正在运行的程序,操作系统通过进程管理服务来控制和分配计算机的资源。
操作系统提供了创建、撤销、调度和通信等功能。
用户可以通过创建进程的系统调用来启动新的程序,通过撤销进程的系统调用来终止正在运行的程序。
调度算法决定了运行哪个进程以及进程运行的顺序。
用户可以通过查询和修改进程的优先级来调整进程的调度顺序。
接下来是内存管理。
内存是计算机中存放数据的地方,操作系统通过内存管理服务来管理计算机的内存资源。
操作系统提供了内存分配和回收的功能,使得进程可以在内存中运行。
用户可以通过申请内存的系统调用来申请一定大小的内存空间,通过释放内存的系统调用来归还不再使用的内存空间。
操作系统还提供了虚拟内存的功能,使得进程可以访问超过其物理内存大小的数据。
然后是文件管理。
文件是计算机中存储数据的基本单位,操作系统通过文件管理服务来管理计算机的文件资源。
操作系统提供了创建、删除、读取和写入文件的功能,使得进程可以对文件进行操作。
用户可以通过创建文件的系统调用来创建新的文件,通过删除文件的系统调用来删除不再需要的文件。
用户可以通过读取文件的系统调用来读取文件中的数据,通过写入文件的系统调用来向文件中写入数据。
操作系统还提供了对文件的共享和保护机制,使得多个进程可以共同访问同一个文件。
接着是设备管理。
设备是计算机中的外部硬件,如打印机、键盘、鼠标等,操作系统通过设备管理服务来管理计算机的设备资源。
操作系统提供了设备分配和释放的功能,使得进程可以使用设备进行输入和输出操作。
用户可以通过申请设备的系统调用来申请使用某个设备,通过释放设备的系统调用来释放不再使用的设备。
第七章操作系统接口
( 3)WINDOWS 98的接口 1。Windows98用户界面结构
Windows98使用新的32位的用户界面,提供统一的工具来浏览网络,局域网及Internet信息。这些 包含了一些桌面工具,包括网络邻居,可选择的活动桌面接口,可选择的频道接口。Windows98基本组 件结构中用户界面的细框图如下图所示。这些工具同其它的基于Win32的、基于Win16的、以及基于MSDOS的应用程序在同一结构层次上运行。所有的应用程序及工具可以从壳层提供的公用控制中得到好处, 例如公用对话框、目录树形显示和列表显示等。
int wait((int *)0) int stat_loc ; wait调用将调用进程挂起,直到该进程收到一个被其捕获的信号或者它的任何一个子进程暂仃或终止 为止。如果wait调用之前已有子进程暂仃或终止,则该调用立即返回。
UNIX(LINUX)系统调用
2.文件基本操作
creat系统调用创建普通文件 格式:#include <sys/types.h>
MS-DOS的接口
3。MS-DOS程序接口 通过软件中断和系统调用使用MS-DOS提供的功能。 用文件系统模块提供的功能-INT 21H MS-DOS文件系统子功能模块的功能是系统调INT 21,它是字符I/O高级方式,它独立于硬件且与其它操作系统 兼容。它包括设备管理、文件管理、目录管理等。 用输入输出系统模块提供的功能--INT10H-INT1AH MS-DOS的输入输出系统模块提供的功能调用是INT10H-INT1AH。其中INT10H 调用显示驱动程序,INT16H调用 键盘驱动程序,INT17H调用打印机驱动程序,INT13H调用磁盘I/O驱动程序。
WINDOWS 98的接口
Windows应用程序可以充分利用API提供的各种特征。这些特征是:几个应用程序共享显示器、内存、 键盘、鼠标和系统计时器,应用程序之间的数据变换与设备无关的图形功能;多任务;动态链接。
操作系统 第7章操作系统的接口
操作系统的接口种类
操作系统是用户与计算机系统之间的接 口,用户在操作系统的帮助下,可以安 全可靠、方便、快速地使用计算机系统。 操作系统的三种接口 命令级接口 程序级接口 图形级接口
北京林业大学信息学院
(一)命令级接口
系统提供作业控制语言或操作控制命令,来 使用户利用这些命令组织和控制作业的执行。
JOB1 JOB2 JOB3 JOB4
北京林业大学信息学院
最高响应比优先作业算法计算结果
估计运 开始时 结束时 行时间 间 间 (分钟) JOB1 120 8:00 8:00 10:00 JOB2 50 8:50 10:10 11:00 JOB3 10 9:00 10:00 10:10 JOB4 20 9:50 11:00 11:20 作业平均周转时间 T = 102.5 作业带权平均周转时间 W = 3.775 作业 进入时 间 周转时 带权周 间 转时间 (分钟) 120 1 130 2.6 70 7 90 4.5 410 15.1
北京林业大学信息学院
作业的处理过程
运行
待 等 O I/
进 调 程 度
完成
作业调度 用户 提交 收容 就绪
I/O 完成
阻塞
执行 作业录入 作业调度
作业提交:作业的输入; 作业执行:先到"就绪",经调度"运行",有I/O请求" 等待",I/O完成到"就绪" 作业完成:作业的输出;
北京林业大学信息学院
北京林业大学信息学院
访管指令
用户程序在算态下运行,只能使用算态指令,而
操作系统是系统程序,在管态下运行,它既可使用算
态指令,也能使用特权指令。而用户要使用外设, 必须在管态下完成, 因而引入访管指令。 访管指令主要功能为: ① 实现从算态到管态的改变; ② 在管态下由操作系统代替用户完成其请求; ③ 操作系统工作完成后由管态返回到算态。
操作系统接口详解
行比较。 两文件可以在同一个或不同的驱动器上。
(4) 重新命名命令Rename。该命令用于将以第一参数命 名的文件, 改成用第二参数给定的名字。 (5) 删除文件命令erase。该命令用于删除一个或一组文 件,当参数路径名为 *.BAK 时,表示删除指定目录下的所
有其扩展名为.Bak的文件。
第七章 操作系统接口
可用鼠标或通过菜单和对话框,来完成对应用程序和文件
的操作。此时用户已完全不必像使用命令接口那样去记住 命令名及格式,从而把用户从繁琐且单调的操作中解脱出 来。
第七章 操作系统接口
7.1 联机命令接口
7.1.1 联机命令的类型
为了能向用户提供多方面的服务,通常,OS都向用户 提供了几十条甚至上百条的联机命令。根据这些命令所完
第七章 操作系统接口
(2) 复制整个软盘命令Diskcopy。 该命令用于复制整个磁盘,另外它还有附加的格式化
功能。 如果目标盘片是尚未格式化的,则该命令在执行
时, 首先将未格式化的软盘格式化,然后再进行复制。 (3) 软盘比较命令Diskcomp。 该命令用于将源盘与目标盘的各磁道及各扇区中的数 据逐一进行比较。
所有目录路径及其层次关系。
(5) 改变当前目录命令chdir。该命令用于将当前目录改变 为由路径名参数给定的目录。用“..”作参数时,表示应返回 到上一级目录下。
第七章 操作系统接口
操作系统接口
联机命令接口 Shell命令语言 系统调用 UNIX系统调用 图形用户接口
第七章 操作系统接口
我们知道,操作系统是用户与计算机之间的接口, 即用户通过操作系统来使用计算机。那么,用户是如 何使用操作系统的?即用户与操作系统之间的接口是 什么? 操作系统为了向用户提供有效的服务,它必须支 持其与用户之间的通信(包括双向的信息传输)。操作 系统中负责管理这种通信的部分称为用户接口。它是 计算机系统与用户之间进行交互作用和通信的通路。 用户接口通常分为命令接口与程序接口两类。 1.命令接口:它是籍助于在用户与操作系统之间 提供高级通信来控制一组程序的处理。它以命令形式 呈现在用户面前,主要用于作业控制。其中又分别为 联机用户和脱机用户设置了不同的接口。
计算机操作系统---第7章 操作系统接口
命令接口包括:联机用户接口和脱机用户接口
终端用户利用该 接口可以调用操 作系统的功能, 取得操作系统 的服务。
专为批处理 作 业的用户提 供 的。(批处 理 用户接口)
7.1.1 联机用户接口
也称联机命令接口。 分类:字符显示式用户界面;图形化用 户界面
命令 语言 命令行方 式和批命 令方式
中断和异常的区别如下(2): •异常是由处理器正在执行现行指
令而引起的,一条指令执行期间允 许响应异常,异常处理程序提供的 服务是为当前进程所用的。 异常又分为出错和陷入。
出错和陷入的区别如下: •它们发生时保存的返回指令地址 不同,出错保存指向触发异常的那 条指令,而陷入保存指向触发异常 的那条指令的下一条指令。 •从异常返回时,出错会重新执行 那条指令,而陷入就不会重新执行 那条指令。如缺页异常是一种出错, 而陷入主要应用在调试中。
首先,将处理机状态由用户态转为系统态 其次,是分析系统调用类型,转入相应的系 统调用处理程序 在系统调用处理子程序执行完后,应恢复 被中断的或设置新进程的CPU现场,然后 返回被中断进程或新进程,继续往下执行
4.系统调用处理子程序的处理过程
7.4
UNIX系统调用
7.4.1 UNIX系统调用的类型
在程序设计语言(如C语言)中,往往 提供与各系统调用对应的库函数, 应用程序可通过对应的库函数来使 用系统调用, 库函数的目的是隐藏访管指令细节, 使系统调用更象过程调用,但一般 地说,库函数属于用户程序而非系 统程序。
操作系统为用户提供系统调用 也出于安全和效率考虑,使得 用户态程序不能自由地访问内 核关键数据结构或直接访问硬 件资源。
1.命令行方式:Command arg1 arg2…argn
07-第七章操作系统接口
1. 系统访问类 系统访问类 在单用户微型机中,一般没有设置系统访问命令; 在单用户微型机中,一般没有设置系统访问命令; 然而 在多用户系统中,为了保证系统的安全性, 在多用户系统中 , 为了保证系统的安全性 , 都毫无例外地设 置了系统访问命令 系统访问命令, 即注册命令Login。 用户在每次开始使 置了系统访问命令, 即注册命令 。 用某终端时,都须使用该命令,使系统能识别该用户。 用某终端时 , 都须使用该命令 , 使系统能识别该用户 。 凡要 在多用户系统的终端上上机的用户, 在多用户系统的终端上上机的用户 , 都必须先在系统管理员 处获得一合法的注册名和口令。以后, 处获得一合法的注册名和口令 。 以后 , 每当用户在接通其所 用终端的电源后, 用终端的电源后 , 便由系统直接调用并在屏幕上显示出以下 的注册命令: 的注册命令: Login: /提示用户键入自己的注册名 提示用户键入自己的注册名 提示用户键入自己的注册名
3. 文件操作命令 文件操作命令 (1) 显示文件命令 显示文件命令type。用于将指定文件显示在屏幕上。 。用于将指定文件显示在屏幕上。 (2) 拷贝文件命令 拷贝文件命令copy。 用于实现文件的拷贝。 。 用于实现文件的拷贝。 (3) 文件比较命令 文件比较命令comp。该命令用于对两个指定文件 。 进行比较。 两文件可以在同一个或不同的驱动器上。 进行比较。 两文件可以在同一个或不同的驱动器上。 (4) 重新命名命令 重新命名命令Rename。 该命令用于将以第一参数 。 命名的文件, 改成用第二参数给定的名字。 命名的文件, 改成用第二参数给定的名字。 (5) 删除文件命令 删除文件命令erase。该命令用于删除一个或一组文 。 当参数路径名为*.BAK时,表示删除指定目录下的所 件 , 当参数路径名为 时 有其扩展名为.Bak的文件。 的文件。 有其扩展名为 的文件
计算机操作系统7操作系统接口
计算机操作系统7操作系统接口在计算机的世界里,操作系统就像是一个大管家,负责管理和协调计算机的各种资源,让计算机能够高效、稳定地运行。
而操作系统接口,则是我们与这个大管家进行交流和互动的桥梁。
它使得我们能够向操作系统下达指令,获取所需的服务和信息。
那么,什么是操作系统接口呢?简单来说,它是操作系统提供给用户和应用程序的一组工具和方法,用于实现各种操作和功能。
操作系统接口可以分为两类:命令行接口和图形用户接口,也就是我们常说的 CLI 和 GUI。
命令行接口,对于一些技术爱好者或者专业人员来说,可能并不陌生。
它通过输入特定的命令和参数,来执行各种任务。
比如在Windows 系统中的命令提示符,或者在 Linux 系统中的终端。
这种接口的优点是高效、灵活,可以快速完成一些复杂的操作。
想象一下,您需要批量处理大量文件,或者进行一些系统级的配置,通过命令行接口,只需要输入几行简洁明了的指令,就能轻松搞定。
但对于普通用户来说,命令行接口可能就显得有些不太友好了,需要记住各种命令和参数,使用起来有一定的门槛。
与命令行接口相对的,就是图形用户接口了。
这是我们大多数人日常使用计算机时最常见的方式。
图形用户接口通过直观的图形元素,如窗口、图标、菜单和按钮等,让用户可以通过鼠标和键盘的简单操作来完成各种任务。
比如,我们点击桌面上的图标来打开应用程序,通过菜单选择文件的保存、打印等操作。
图形用户接口的优点显而易见,它直观、易于理解和操作,不需要用户具备太多的专业知识。
但在某些情况下,图形用户接口可能不如命令行接口那么高效,比如进行一些重复性的操作时。
操作系统接口的作用可不容小觑。
首先,它为用户提供了与计算机系统交互的途径。
无论是想要查看系统信息、管理文件,还是安装和卸载软件,都离不开操作系统接口。
其次,它有助于提高计算机系统的安全性。
通过合理的权限设置和访问控制,操作系统接口可以防止用户误操作或者恶意行为对系统造成损害。
操作系统用户接口
1、字符显示用户界面
UNIX和Linux的Shell
一种交互型命令解释程序
命令级程序设计语言解释系统
24
2.图形化用户界面
图形化用户接口GUI(Graphics User Interface) 使用窗口、图标、菜单和鼠标等技术,将系统的功能、各 种应用程序和文件用图形符号直观、逼真地表示出来,用 户可通过选择窗口、菜单、对话框和滚动条完成对它们的 作业的各种控制和操作 Microsoft公司的Windows系列就是这种图形化用户界面 的代表。 图形化的用户界面的特点: a) 所有程序以统一的窗口形式出现 b) 提供统一的菜单格式 c) 系统资源、系统命令、操作功能以图标表示 d) 统一的操作方法
35
1.Why-为什么需系统调用
例如程序语句中有如下命令: open 打开文件 read/write 读/写文件 creat 创建文件 exit 进程终止(程序序结束) close 关闭文件 这些命令都会产生访管中断,来实现调用系统的相应功能。
36
2. What-系统调用是什么 概念
10
三.联机用户接口
1
字符显示用户界面
2
图形化用户界面
3
新一代用户界面
4
命令解释程序
11
1、字符显示用户界面
主要通过命令语言来实现,又可分成两种方 式:
1.1命令行方式
1.2批命令方式
12
1、字符显示用户界面 1.1命来完成预定的工 作任务 每个命令以命令行的形式输入并提交给系统 一个命令行由命令动词和一组参数构成,其一般 形式如下: Command arg1 arg2 . . . Argn Command-----命令名,又称命令动词 arg1 arg2 . . . argn-----命令参数
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
7.3.2系统调用的处理过程(续2)
必须为实现系统调用功能的子程序编造入口地址表 每个入口地址与相应的系统程序名对应 陷入处理程序把陷入指令包含功能号与入口地址表有关项对
应, 系统调用功能号驱动有关子程序执行 在系统调用处理结束之后,用户程序需利用系统调用返回结 果继续执行 保护现场: 在进入系统调用处理之前,陷入处理机构还需保存处理机现 场 在系统调用处理结束之后,要恢复处理机现场,现场被保护 在特定的内存区或寄存器中
如:"ls -l | wc -l"可给出文件数目。 如:“cat sample.text | grep "High" | wc -l” 这个管道将把 cat 命令(列出一个文件的内容)的输出 送给grep命令。 grep 命令在输入里查找单词 High,grep命令的输出则 是所有包含单词 High的行,这个输出又被送给 wc命令。 带 -l选项的 wc命令将统计输入里的行数。
C shell(/bin/csh)
C shell 由 Bill Joy 所写,它更多的考虑了用户界面的友好性。它 支持象命令补齐(command-line completion)等一些 Bourne shell 所不支持的特性。 普遍认为C shell 的编程接口做的不如 Bourne shell, 但 C shell 被很多 C 程序员使用因为 C shell的语法和 C语言的很相似,这也 是C shell名称的由来。
11
4. 输入输出重定向
基于内核的缓冲区
"<"为标准输入重定向;
">"和">>"为标准输出重定向;
行输入重定向:
用定界符间的内容作为标准输入。 如:下面命令的标准输入为cat命令的输入。
cat << WARNING ... WARNING
12
5. 管道
•管道可以把一系列命令连接起来。
• 第一个命令的输出会通过管道传给第二个命令而作为第二个命令的 输入 • 第二个命令的输出又会作为第三个命令的输入,以此类推。 • 管道行中最后一个命令的输出才会显示在屏幕上(如果命令行里使 用了输出重定向的话,将会放进一个文件里)。 • 通过管道,可以将多个简单程序组合完成复杂的功能。
4
2. 环境变量
环境变量(environment variable)--应用进程地址空间中的特 殊变量区。
环境变量也可以作为shell参数,如命令提示符的式
样,外部命令的查找目录路径等。
如:PATH=/bin:/usr/bin:/usr/sbin:. HOME=/home/thisuser
环境变量是传递命令参数的另一种途径。如: cd $HOME;
22
用户程序
陷入处理机构 入口地址表 (1)保护处理 现场 A0
系统子程序 A0 A1
Sub1 Sub0
system call
(2)取系统调 用功能号并 寻找子程序 入口 (3)返回
Ai
Ai
Subi
An
An
Subn
系统调用的处理过程
23
设置系统调用号和参数。 调用号作为指令的一部分(如早期UNIX),或装入到特 定寄存器里(如:DOS int 21h,AH=调用号。) 参数装入到特定寄存器里,或以寄存器指针指向参数表 (内存区域)。 执行trap(int)指令:入口的一般性处理,查入口跳
7.3.1 系统调用及其功能 7.3.2 系统调用的实现过程 7.3.3系统调用的分类
18
7.3.1 系统调用及其功能
每个操作系统都提供几百种系统调用,包括:外存文件与目录 的读写,各种I/O设备的使用,在程序中启动另一个程序,查 询和统计系统资源使用情况等等。
实际上系统调用语句本身是硬件提供的(机器指令),但其所 调用的功能是操作系统提供的。每种机器的机器指令集中都有 一条系统调用指令。
8
Korn shell (ksh) Korn shell (ksh) 由 Dave Korn 所写。它集合了C shell 和 Bourne shell 的优点并且和 Bourne shell 完全兼容。 Bourne Again shell (bash) Bourne Again shell (bash)是 Bourne shell 的扩展。 bash 与 Bourne shell 完全向后兼容,并且在 Bourne shell 的基础上增加和增强了很多特性。bash 也包含了很 多 C 和 Korn shell 里的优点。bash 有很灵活和强大的 编程接口,同时又有很友好的用户界面。 bash 有几种特 性使命令的输入变得更容易。 其他shell 除了这些 shell 以外,许多其他的 shell 程序吸收了这些 原来的 shell 程序的优点而成为新的 shell 。如: tcsh (csh 的扩展) Public Domain Korn shell (pdksh, ksh 的扩展)
16
7.2.2. 批处理
批处理命令: 针对脱机用户操作和大量顺序操作功能而设计 批处理命令可以是专门的命令,也可是系统的 基本命令;还有有关的语法结构,循环、分支、 转移、判别等,构成一套特殊的命令语言
17
7.3 系统调用(SYSTEM CALL)
系统调用是操作系统提供给软件开发人员的唯 一接口,开发人员可利用它使用系统功能。OS核心 中都有一组实现系统功能的过程(子程序),系统调 用就是对上述过程的调用。
2
1. 命令行
命令行:一行可有一个或多个命令,每次一行,包
含一个或多个命令。
shell给出提示符时可输入,以回车键提交。如: “ls -al”列出当前目录文件列表; "gunzip mp1.tar.gz; tar -xvf mp1.tar; \rm -r -f mp1.tar"为解压缩后再展开。
UNIX上有许多种shell,主要功能是相同的,在细节上有一 些区别。几种shell 都有它们的优点和缺点。
Bourne shell(/bin/sh)
Bourne shell 的作者是 Steven Bourne。它是 UNIX 最初使用的 shell 并且在每种 UNIX 上都可以使用。Bourne shell 在 shell 编 程方面相当优秀,但在处理与用户的交互方面作得不如其他几种 shell。 Bourne shell 最大的缺点在于它处理用户的输入方面。在 Bourne shell 里键入命令会很麻烦,尤其当你键入很多相似的命令时。
在命令行方式下,用户与操作系统的交互要求用户记 忆命令格式。在图形用户接口方式下,用户可利用鼠 标对屏幕上的图标进行操作,完成与操作系统的交互, 从而减少记忆内容,方便用户使用。它的技术基础是 高分辩显示器和鼠标。 (1)窗口系统(window system)的特点 (2)窗口系统的图形元素及其状态 (3)窗口管理器(window manager) (4)例子
环境变量可按名字访问,可以新建、赋值或撤销。
5
7.2 UNIX的作业管理
shell命令处理程序 shell批处理
6
7.2.1 shell命令处理程序
1. shell的类型 2. 初始化文件 3. 基本特征 4. 输入输出重定向 5. 管道 6. 后台执行 7. 别名 8. 常用的外部命令
7
1. shell的类型
转表,跳转到相应功能的过程。
保护CPU现场(将PC与PSW入栈),改变CPU执行状态 (处理机状态字PSW切换,地址空间表切换) 将参数取到核心空间
执行操作系统内部代码;
执行iret指令:将执行结果装入适当位置(类似于
参数带入),恢复CPU现场(以栈顶内容置PSW和 PC)。
24
7.3.3 系统调用的分类
19
7.3.2 系统调用的处理过程
系统调用的例子
汇编程序例子:打印5个字符 方法1:调用DOS功能 MOVE A, PARA1 MOVE B, PARA2 INT 21H
20
7.3.2 系统调用的处理过程(续1)
在系统中为控制系统调用服务的机构称为陷入 (TRAP)或异常处理机构 相对应,把由于系统调用引起处理机中断的指令称为 陷入或异常指令(或称访管指令) 在操作系统中,每个系统调用都对应一个事先给定的 功能号,例如0、1、2、3等 在陷入指令中必须包括对应系统调用的功能号 而且,在有些陷入指令中,还带有传给陷入处理机构 和内部处理程序的有关参数
命令格式:一个命令可有命令参数,格式包括选项/
开关 (option/switch)或参数(argument)。
如UNIX系统: cp -r doc /tmp--argv[0], argv[1], ...(含子目录的文件复制:/tmp为目标地址)
3
命令分类:内部命令和外部命令 内部命令:直接由shell本身完成,功能简单、使用频繁;如: DOS的copy命令。 外部命令:运行相应的可执行文件,在使用时加载。如: DOS的xcopy命令。 命令简化:利用参数替换可简化命令输入,通配符(?, *)用于 匹配一组文件名 如:UNIX的cp命令:当前目录上有两个"1.tar"和"2.tar"时, "cp *.tar /tmp"等同于"cp 1.tar /tmp; cp 2.tar /tmp"
15
8. 常用的外部命令
man查看手册 echo, wc, grep, sed, awk(用于文本扫描和处
理), sort, cut(对每行进行特定删除处理)字符 串操作; pwd, ls, mkdir, rmdir, cp, rm, mv, ln文件和目 录操作; chmod, chown, chgrp(修改文件所在的用户组) 文件权限和属主; cat, more, tail(显示文件的最后部分)查看文件; test, expr检测和数值计算; vi全屏幕编辑;