操作系统提供的服务和用户接口.ppt
《操作系统提供的服务和用户接口.ppt》由会员分享,可在线阅读,更多相关《操作系统提供的服务和用户接口.ppt(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、主要内容:主要内容:n操作系统提供的基本服务操作系统提供的基本服务 n操作系统提供的用户接口操作系统提供的用户接口 n程序接口与系统调用程序接口与系统调用 n操作接口与操作命令操作接口与操作命令1.3 操作系统的基本服务和用户接口1 11.创建程序和执行程序 2.数据I/O 和信息存取:文件操作 3.通信服务:进程通信 4.差错检测和处理 还具有另外一些功能:1.资源分配2.统计3.保护 一、操作系统提供的基本服务2 2操作系统为用户提供两种调用其服务和功能的接口:1.1.程序接口程序接口:允许运行程序调用操作系统的服务和功能。2.许多操作系统的程序接口由一组系统调用(System Call)
2、)组成,用户程序使用“系统调用”就可获得操作系统的底层服务,使用或访问系统的各种软硬件资源。2.2.操作接口操作接口:又称作业级接口作业级接口,操作系统为用户提供的操作控制计算机工作和提供服务手段的集合,通常有操作控制命令、图形操作界面(命令)、以及批处理系统提供的作业控制语言(命令)等实现手段。二、操作系统提供的用户接口(1)3 3用户和操作系统间的两种接口用户和操作系统间的两种接口 二、操作系统提供的用户接口(2)系统调用系统调用操作命令或操作命令或JCL操操 作作 系系 统统裸裸 机机(操作接口)(程序接口程序接口)4 4系统调用:系统调用:内核提供一系列具有预定功能的内核函数,通过一组
3、接口(系统调用)提供给用户。系统调用把应用程序的请求传送至内核,调用相应的内核函数完成所需要的处理,把处理结果返回给应用程序。内核的主体是系统调用的集合,可以把内核看作特殊的公共子程序。系统调用是一种中介,把用户和硬件隔离开,程序只有通过系统调用才能请求系统服务并且使用系统资源。系统调用的作用:内核可以基于权限和规则对资源访问进行裁决,可以保证系统的安全性;系统调用对资源进行抽象,提供一致性接口,避免用户在使用资源时发生错误,并且使编程效率提高。注意:系统调用是应用程序获得操作系统服务的唯一途径!系统调用是应用程序获得操作系统服务的唯一途径!5 52.API2.API、库函数和系统调用、库函数
4、和系统调用直接使用系统调用存在两个困难:第一,接口复杂、使用困难;第二,应用程序的跨平台可移植性受到很大限制。POSIX标准:规定内核的系统调用接口标准,应用程序在遵循此标准的不同操作系统之间具有可移植性。UNIX/Linux在标准C函数库中为每个系统调用构造一个同名的封装函数,屏蔽其下层的复杂性,负责把操作系统所提供的服务接口系统调用封装成应用程序能够直接调用API(应用编程接口)。一个库函数就是一个API,它介于操作系统和应用程序之间。一个API可能使用一个系统调用,也可能使用多个系统调用;也可能若干API封装相同的系统调用。有的库函数可能与系统调用无关。6 6Windows操作系统也提供
5、与POSIX兼容的子系统。Windows不公开系统调用,仅提供以库函数形式定义的API,叫做Win32API。在用户程序角度看,库函数和系统调用之间差别不大,但是在操作系统实现的角度看,两者存在重要差别:使用库函数可以隐藏访管指令的细节,使系统调用形式上类似函数调用;对用户隐藏系统调用,可以在操作系统内核改动时,应用程序不需要改动。库函数属于用户程序,在CPU用户态工作,系统调用属于系统程序(操作系统),在核心态运行。用户可以替换库函数,但是不能替换系统调用。7 73.3.系统调用的分类系统调用的分类 (1)进程管理:进程的创建、装入、执行、撤销、终止,进程属性的获取和设置。(2)文件操作:文
6、件的建立、打开、读写、关闭、删除,文件属性的获取和设置。(3)设备管理:设备的申请、输入输出、释放、重定向,设备属性的获取和设置。(4)内存管理:内存的申请和释放。(5)进程通信:通信连接的建立、连接和断开、信息的发送和接受;传递状态信息;连接和断开远程设备。(6)信息维护:日期、时间及系统数据的获取和设置;获取和设置信息;生成诊断和统计数据。三、程序接口与系统调用 (3)8 8实例:Windows支持API(应用编程接口)的三个组件:Kernel包含了多数操作系统函数,如内存管理、进程管理;User集中了窗口管理函数,如窗口创建、撤销、移动、对话等相关函数;GDI提供画图函数、打印函数。Wi
7、ndows将三个组件置于动态链接库DLL中。三、程序接口与系统调用 (4)9 9Windows和UNIX/Linux的部分系统调用:三、程序接口与系统调用 (5)UNIX/LinuxWin32说明说明forkCreatProcess创建进程waitpidWaitForSingleObject等待进程终止open/closeCreatFile/CloseHandle创建或打开/关闭文件read/writeReadFile/WriteFile读/写文件lseekSetFilePointer移动文件指针mkdir/rmdirCreat/Remove Directory建立/删除目录statGetFi
8、leAttributesEx获得文件属性10103.3.系统调用的实现要点系统调用的实现要点 (1)有关概念陷阱或异常处理机制陷阱或异常处理机制-在操作系统中,实现系统调用功能的机制称为陷阱或异常处理机制。陷阱或异常处理机制。访管指令(陷阱指令或异常中断指令)访管指令(陷阱指令或异常中断指令)-由于系统调用而引起处理器中断的机器指令称为访管指令(陷入指令或访管指令(陷入指令或异常中断指令)。异常中断指令)。(2)系统调用的实现要点:一.是编写系统调用处理程序;二.是设计一张系统调用入口地址表,每个入口地址都指向一个系统调用的处理程序,有的系统还包含系统调用自带参数的个数;三.是陷入处理机制需开
9、辟现场保护区,以保存发生系统调用时的处理器现场。1111(3)系统调用的处理过程 三、程序接口与系统调用 (7)System Call Ai用户程序A0SUB0SUB1SUBiSUBnA1AiAn系统调用处理子程序取系统功能号找入口地址表相应入口地址结束处理恢复现场A0A1AiAn保护CPU现场陷入指令系统调用陷入机构入口地址表1212(4)系统调用的参数传递 不同的系统调用需传递给系统调用处理程序不同的参数,系统调用执行的结果也要以参数形式返回给用户程序。实现用户程序和系统调用之间的参数传递可用以下方法:一是由访管指令或陷入指令自带参数,可以规定指令之后的若干个单元存放的是参数,这称为直接参
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 提供 服务 用户 接口
限制150内