操作系统与用户接口课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《操作系统与用户接口课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 用户 接口 课件
- 资源描述:
-
1、1 操作系统结构操作系统结构2 内容内容n操作系统服务n用户与操作系统接口n系统调用n操作系统结构3 操作系统服务操作系统服务n用户接口用户接口User Interface4命令行接口Command-Line Interface(CLI),4图形用户接口Graphics User Interface(GUI)4批处理 Batchn程序执行程序执行-调入一个程序进入内存并运行之的系统能力nI/O操作操作-由于用户程序不能直接执行I/O操作,操作系统必须提供完成I/O操作的手段n文件系统操纵文件系统操纵 程序能够读、写、创建和删除文件4 操作系统服务操作系统服务n通信通信-运行的进程间在同一计算机
2、或由网络连接的不同系统中交换信息。通过共享存储器或消息传递实现n出错检测出错检测 通过探测在CPU与内存硬件中,在I/O设备中,或在用户程序中的错误,确保正确运算n资源分配资源分配-把资源分配给多个用户或多个同时运行的作业n计帐计帐-跟踪和记录用户对资源的使用,用于帐单和统计n保护保护-确保对资源的所有访问均在控制中5操作系统的用户界面(接口)操作系统的用户界面(接口)n操作系统与用户接口操作系统与用户接口l命令接口Command Interface l程序接口Program Interface (系统调用)n命令接口l命令行用户接口,文本界面 l图形用户接口6操作系统的用户界面(接口)操作系
3、统的用户界面(接口)n命令行用户界面命令行用户界面(Command line User Interface CUI)l键盘输入lDOS、Linux、UNIXn图形用户界面图形用户界面(Graphic User Interface GUI)l鼠标输入lMacOS、OS/2、WINDOWS、Linux等n程序接口程序接口l系统调用(系统调用(System Calls)、)、API系统调用和系统调用和APIAPI的区别?的区别?7系统调用系统调用n系统调用系统调用提供了进程与操作系统之间的接口l这些调用通常以汇编语言指令的形式提供l有些语言(如C,C+和Perl)已经取代了汇编语言而直接用于系统编程
4、n向操作系统传递参数通常用三种方法三种方法l通过寄存器来传递参数4参数数量可能会比寄存器多l将参数存放在内存的块或表中,并将块的地址作为参数传递给寄存器4指针l将参数放在堆栈中,并通过操作系统弹出堆栈4不限制所传递参数的数量或长度8参数作为表传递参数作为表传递9Example of Standard APInConsider the ReadFile()function in thenWin32 APIa function for reading from a filennA description of the parameters passed to ReadFile()nHANDLE f
5、ilethe file to be readnLPVOID buffera buffer where the data will be read into and written fromnDWORD bytesToReadthe number of bytes to be read into the buffernLPDWORD bytesReadthe number of bytes read during the last readnLPOVERLAPPED ovlindicates if overlapped I/O is being used10为什么需要系统调用为什么需要系统调用n
6、系统调用系统调用是内核向用户进程提供服务的唯一方法,应用程序调用操作系统提供的功能模块(函数)。n用户程序通过系统调用从用户态用户态(user mode)切换到核心态核心态(kernel mode),从而可以访问相应的资源。这样做的好处是:l为用户空间提供了一种硬件的抽象接口,使编程更加容易。l 有利于系统安全。l 有利于每个进程度运行在虚拟系统中,接口统一有利于移植。11系统调用的类型系统调用的类型n进程控制进程控制:结束,中止,装入,执行,创建、终止进程等n文件管理文件管理:创建文件,删除文件,打开,关闭文件等n设备管理设备管理:请求设备,释放设备,读、写、重定位设备等n信息维护信息维护:
7、读取时间或日期、设置时间或日期等n通信通信:创建、删除通信连接,发送、接收消息,传递状态信息等12系统调用、系统调用、APIAPI和和C C库库n应用编程接口(API)其实是一组函数定义,这些函数说明了如何获得一个给定的服务;而系统调用是通过软中断向内核发出一个明确的请求,每个系统调用对应一个封装例程(wrapper routine,唯一目的就是发布系统调用)。一些API应用了封装例程。lAPI还包含各种编程接口,如:C库函数、OpenGL编程接口等n系统调用的实现是在内核完成的,而用户态的函数是在函数库中实现的调用printf()c库中的printf()c库中的write()sys_writ
8、e()系统调用应用程序 C库 内核13操作系统的设计操作系统的设计n操作系统设计有着不同于一般应用系统设计的特征:l复杂程度高l研制周期长l正确性难以保证最早最早Uinx是是1400行代码;行代码;Windows xp有有4000万行代码;万行代码;fedroa core有有2亿多行代码,亿多行代码,Linux kernel 3.10有有1700万行代码。万行代码。n解决途径:l良好的操作系统结构l先进的开发方法和工程化的管理方法(软件工程)l高效的开发工具 14操作系统的设计考虑操作系统的设计考虑n功能设计:操作系统应具备哪些功能 n算法设计:选择和设计满足系统功能的算法和策略,并分析和估算
展开阅读全文