- 1、本文档共18页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
操作系统提供基本服务操作系统提供基本服务创建程序执行程序数据I/O信息存取通信服务错误检测和处理另外,还含有另外一些功效:资源分配、统计,保护10/2/第1页
操作系统提供用户接口操作系统服务和功效能够用不一样方式提供给用户,最基本方式有两种:程序接口——系统调用(SystemCall)由操作系统实现完成某种特定功效过程;它是程序与操作系统接口操作接口——系统程序(SystemProgram)操作系统为用户提供处理使用计算机和计算共性问题全部服务集合;它能够看作是操作系统提供给用户功效级接口10/2/第2页
系统调用系统调用分类进程和作业管理文件操作设备操作信息维护通信10/2/第3页
系统调用实现陷入处理机制(异常处理机制):操作系统中为控制和实现系统调用机制因为系统调用而引发处理器中止指令称访管指令(Supervisor),陷入指令(Trap)或异常中止指令(Interrupt)每个系统调用都事先要求了编号,还附带有传递给内部处理程序参数10/2/第4页
系统调用实现关键点编写系统调用处理程序设计一张系统调用入口地址表,每个入口地址指向一个系统调用处理程序,有系统还包含系统调用自带参数个数陷入处理机制需开辟现场保护区,以保留发生系统调用时处理器现场10/2/第5页
系统调用处理过程SystemCall用户程序A0SUB0SUB1SUBiSUBnA1AiAn……系统调用处理子程序取系统功效号找入口地址表对应入口地址结束处理恢复现场入口地址表A0A1…Ai…An保护CPU现场系统调用陷入机构陷入指令10/2/第6页
系统调用参数传递访管指令或陷入指令自带参数指令之后若干单元存放参数,称直接参数指令之后若干单元存放参数地址,称间接参数经过通用存放器传递参数通用存放器传递参数通用存放器传递参数地址,在内存一个块或表中存放参数在内存中开辟专用堆栈区域传递参数10/2/第7页
传递参数一个方法操作系统X:参数LOADAddRXSystemCall8X取参数X系统调用8处理程序存放器10/2/第8页
系统调用与过程(函数)调用区分调用形式:过程(函数)使用普通调用指令,其转向地址是固定不变,包含在跳转语句中系统调用中不包含处理程序入口,而仅仅提供功效号,按功效号调用被调用代码位置:过程(函数)调用是一个静态调用,程序和被调代码在同一程序内,经过连接编辑后作为目标代码一部份;当过程(函数)升级或修改时,必须重新编译连结系统调用是一个动态调用,系统调用处理代码在调用程序之外(在操作系统中),系统调用处理代码升级或修改时,与调用程序无关10/2/第9页
系统调用与过程(函数)调用区分提供方式:过程(函数)往往由编译系统提供,不一样编译系统提供过程(函数)能够不一样系统调用由操作系统提供,一旦操作系统设计好,系统调用功效、种类与数量便固定不变了调用实现:程序使用普通机器指令转子指令来调用过程(函数),是在用户态运行程序执行系统调用,是经过中止机构来实现,需要从用户态转变到关键态,在管理状态下运行10/2/第10页
Linux系统调用Linux有170个系统调用,其系统调用组成:关键函数:运行在关键态,是实现系统调用功效(内核)代码,作为操作系统关键驻留在内存中,是一个共享代码,用C语言书写。它运行在关键态,数据也存放在内核空间,通常它不能使用系统调用,也不能使用应用程序可用库函数接口函数:是提供给应用程序API,以库函数形式存在Linuxlib.a中,该库中存放了全部系统调用接口函数目标代码,用汇编语言书写。其主要功效是把:系统调用号、入口参数地址传送给对应关键函数,并使用户态下运行应用程序陷入关键态10/2/第11页
Linux系统调用Linux系统调用号就是系统调用入口表中位置序号,全部系统调用经过接口函数将系统调用号传给内核,内核转入系统调用控制程序再经过调用号位置来定位关键函数,Linux内核陷入由0x80(int80h)中止实现系统调用控制程序主要功效为:取系统调用号依据系统调用号定位关键函数地址依据通用存放器内容,从用户栈中取入口参数关键函数执行,把结果返回应用程序10/2/第12页
Linux系统调用入口程序entry.s,是用汇编写,它包含了系统调用入口地址表,给出了全部系统调用关键函数名字:ENTRY(sys-call-table).longSYMBOL-NAME(sys-ni-syscall)0.longSYMBOL-NAME(sys-exit)1.longSYMBOL-NAME(sys-fork)2.longSYMBOL-NAM
您可能关注的文档
- 物流客户服务概述.pptx
- 消声排气系统焊接工艺知识培训.pptx
- 欧洲历史地图市公开课获奖课件省名师优质课赛课一等奖课件.ppt
- 有利于生存的本领苏教版小学科学六年级下册课件市名师优质课比赛一等奖市公开课获奖课件.pptx
- 新版讲话稿的写作省名师优质课赛课获奖课件市赛课百校联赛优质课一等奖课件.pptx
- 新版湘少版六年级上册Unit-8第一课时市公共课一等奖市赛课金奖课件.pptx
- 新版新版不等式的应用省名师优质课赛课获奖课件市赛课百校联赛优质课一等奖课件.pptx
- 新版微生物实验器材和基本操作省名师优质课赛课获奖课件市赛课百校联赛优质课一等奖课件.pptx
- 新版四年级上册Unit-1--my-classroom复习课市名师优质课比赛一等奖市公开课获奖课件.pptx
- 新版五年级下册Unit-1-We're-going-to-read-stories市名师优质课比赛一.pptx
文档评论(0)