欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    操作系统概论chap113操作系统基本服务和用户接口课件.ppt

    • 资源ID:1391542       资源大小:408.35KB        全文页数:31页
    • 资源格式: PPT        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    操作系统概论chap113操作系统基本服务和用户接口课件.ppt

    1.3操作系统基本服务和用户接口,1.3.1 基本服务和用户接口1.3.2 程序接口与系统调用1.3.3 操作接口与系统程序1.3.4 Linux系统调用及实现机制,1.3操作系统基本服务和用户接口1.3.1 基本服务和用户接,1.3.1操作系统基本服务,1.基本服务 创建程序 执行程序 数据I/O 信息存取 通信服务 错误检测和处理 还具有其他功能:资源分配,统计,保护。,1.3.1操作系统基本服务 1.基本服务,2用户接口,系统调用(程序接口),系统程序(操作接口),2用户接口系统调用操作命令操作系统裸 机 应用程序系统,1.3.2 程序接口与系统调用,什么是系统调用?系统调用的作用?系统调用是应用程序获得操作系统服务的唯一途径。内核的主体是系统调用的集合,内核可以看成是特殊的公共子程序。,1.3.2 程序接口与系统调用什么是系统调用?,什么是系统调用?,操作系统的功能通过一组称为系统调用(system call)的接口呈现给用户,内核提供一系列实现预定功能的内核函数,系统调用把应用程序的请求传达给内核,内核调用对应的内核函数完成请求所需处理后,再将处理结果返回给应用程序。,什么是系统调用?操作系统的功能通过一组称为系统调用(syst,系统调用的作用,系统调用是一种中介角色,把用户与硬件隔离开来,应用程序通过系统调用才能请求系统服务和使用系统资源。其作用有: 1、内核可基于权限和规则对资源访问进行裁决,保证系统的安全性; 2、系统调用封装资源抽象,提供一致性接口,避免用户使用资源时可能发生的错误,且使编程方便效率高。,系统调用的作用系统调用是一种中介角色,把用户与硬件隔离开来,,API、库函数、系统调用,应用程序能直接使用系统调用吗?POSIX(Portable Operating System Interface for Computer Environment)标准 ;API和库函数库函数和系统调用,API、库函数、系统调用应用程序能直接使用系统调用吗?,应用程序、库函数、系统调用的调用关系链,应用程序、库函数、系统调用的调用关系链调用fprintf,Linux系统程序、库函数、系统调用分层关系,Linux系统程序、库函数、系统调用分层关系,系统调用分类,(1)进程和作业管理 (2)文件操作 (3)设备管理 (4)主存管理 (5)信息维护 (6)通信,系统调用分类 (1)进程和作业管理,系统调用实现,1. 编写系统调用处理内核函数; 2. 设计一张系统调用入口地址表,每个入口地址都指向一个系统调用的处理内核函数,有的系统还包含系统调用自带参数的个数; 3. 陷入处理机制需开辟现场保护区,以保存发生系统调用时的处理器现场。,系统调用实现 1. 编写系统调用处理内核函数;,系统调用处理过程,System Call,用户程序,系统调用处理子程序,取系统功能号找入口地址表相应入口地址,结束处理恢复现场,A0,A1,Ai,An,保护CPU现场,陷入指令,系统调用陷入机构,入口地址表,系统调用处理过程 用户程序A0SUB0SUB1SUBiSU,系统调用参数传递,1、由访管指令或陷入指令自带参数, 直接参数 间接参数2、通过CPU的通用寄存器传递参数,或 在主存的一个块或表中存放参数,其首地址送入寄存器,实现参数传递。3、在主存中开辟专用堆栈区域传递参数。,访管指令是一条可以在目态下执行的指令,用户程序中凡是要调用操作系统功能时就安排一条访管指令。当处理器执行到访管指令时就产生一个中断事件(自愿中断),暂停用户程序的执行,而让操作系统来为用户服务,系统调用参数传递1、由访管指令或陷入指令自带参数,访管指令,系统调用与函数调用的区别,系统调用:1.使用INT和IRET指令,内核和应用程序使用的是不同的堆栈,因此存在堆栈的切换,从用户态切换到内核态,从而可以使用特权指令操控设备。2.依赖于内核,不保证移植性。3.在用户空间和内核上下文环境间切换,开销较大。4. 是操作系统的一个入口点。,系统调用与函数调用的区别系统调用:1.使用INT和IR,系统调用与函数调用的区别,函数调用:1.使用CALL和RET指令,调用时没有堆栈切换。2.平台移植性好。3.属于过程调用,调用开销较小。4.一个普通功能函数的调用。,系统调用与函数调用的区别函数调用:1.使用CALL和R,1.3.3操作接口与系统程序,1.作业控制方式作业接口是操作系统为用户操作控制计算机工作和提供服务的手段集合,通常可借助操作控制命令、图形操作界面(命令)、以及作业控制语言(命令)等来实现。 作业控制方式:联机作业控制方式与作业控制语言脱机作业控制方式与操作控制命令,1.3.3操作接口与系统程序 1.作业控制方式,联机作业控制接口-操作控制命令,命令行方式 批命令方式 图形化方式,联机作业控制接口-操作控制命令 命令行方式,脱机作业控制接口作业控制语言,批处理接口:作业控制语言JCL( Job Control Language)。 用户使用JCL语句,把运行意图(需要对作业进行的控制和干予)写在作业说明书上,将作业连同作业说明书一起提交给系统。 批处理作业的调度执行过程,系统调用JCL语句处理程序或命令解释程序。,脱机作业控制接口作业控制语言 批处理接口:作业控制语言,IBM 370使用JCL处理批作业的例子,/ HAROLD JOB,WILSON,MSGLEVEL=(2,0),PRTY=6,CLASS=B/ COMP EXEC PGM=IEYFORT/ SYSPRINT DD SYSOUT=A/ SYSLIN DD DSNAME=SYSL,DISP=OLD,VOLUME=SER=123 / SYSIN DD* /*/ GO EXEC PGM=FORTLINK/ SYSPRINT DD SYSOUT=A/ FTOTF001 DD UNIT=SYSCP/ GO SYSIN DD* /*/,IBM 370使用JCL处理批作业的例子 / HARO,. 命令解释程序,命令解释程序的实现:1、自带命令执行代码,收到命令后,便转向相应命令处理代码执行,可以使用“系统调用”帮助完成任务,由于用到终端进程的地址空间,故这类命令不宜过多;2、由专门“实用程序”实现,执行时把命令对应的处理文件装入主存,完成命令功能。3、操作系统把两者结合起来,简单命令由命令解释程序直接处理;复杂命令由独立的实用程序完成。,. 命令解释程序命令解释程序的实现:,3.Linux命令解释器shell执行流程,3.Linux命令解释器shell执行流程id0无有,4.系统程序(1),系统程序又称实用程序或支撑程序(Utilities),虽非操作系统的核心,但却必不可少,为用户程序的开发、调试、执行、和维护解决带有共性的问题或执行公共操作,操作系统以操作命令形式向用户提供系统程序。它的功能和性能很大程度上反映了操作系统的功能和性能。,4.系统程序(1)系统程序又称实用程序或支撑程序(Utili,系统程序(2),支撑程序的分类: 文件管理 状态信息 程序设计语言支持 程序的装入和执行支持 通信 其它软件工具,系统程序(2) 支撑程序的分类:,1.3.4 Linux系统调用及实现机制(1)Linux系统调用执行流程,1.3.4 Linux系统调用及实现机制(1)Linu,(2)Linux系统调用实现机制,1) 系统调用初始化 set_system_gate(0 x80,&system_call),(2)Linux系统调用实现机制1) 系统调用初始化,2) 系统调用公共入口,system_call()是系统调用的公共入口,功能是:保护现场,进行正确性检查,根据系统调用号跳转到具体内核函数,该内核函数执行完毕时转向下一步。ret_from_sys_call(),完成返回用户空间前的最后检查,用RESTORE_ALL宏恢复现场并执行iret,指令返回用户断点。,2) 系统调用公共入口 system_call()是系统调,3)保护现场,3)保护现场 系统调用处理时的核心栈内容,4) 参数传递,系统调用参数在5个以下。依次存放在寄存器EBX、ECX、EDX、ESI及EDI中。系统调用返回值放在EAX中返回。系统调用参数超过5个时,存放在内存参数区,其地址通过寄存器传送。,4) 参数传递系统调用参数在5个以下。依次存放在寄存器EBX,5) 系统调用号和系统调用表(1),#define _NR_exit1#define _NR_fork2#define _NR_read3#define _NR_write4#define _NR_open5#define _NR_close6,5) 系统调用号和系统调用表(1)#define _NR_e,系统调用号和系统调用表(2),.dataENTRY(sys_call_table) /*入口*/ .long SYMBOL_NAME(sys_ni_syscall) /*0、空项*/.long SYMBOL_NAME(sys_exit) /*1*/.long SYMBOL_NAME(sys_fork) /*2*/.long SYMBOL_NAME(sys_read) /*3*/.long SYMBOL_NAME(sys_write) /*4*/.long SYMBOL_NAME(sys_open) /*5*/.long SYMBOL_NAME(sys_close) /*6*/ 转跳语句为:call *SYMBOL_NAME(sys_call_table)(,%eax,4),系统调用号和系统调用表(2).data,谢谢!,操作系统概论-chap1-1,

    注意事项

    本文(操作系统概论chap113操作系统基本服务和用户接口课件.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开