6 syscall 系统调用 Linux内核分析PPT.pptVIP

  • 9
  • 0
  • 约4.78千字
  • 约 38页
  • 2018-01-25 发布于浙江
  • 举报
6 syscall 系统调用 Linux内核分析PPT

xlanchen@2007.9.29 Linux OS Analysis Linux操作系统分析 中国科学技术大学计算机系 陈香兰(0512 xlanchen@ustc.edu.cn Autumn 2010 系统调用 系统调用的意义 操作系统为用户态进程与硬件设备进行交互提供了一组接口——系统调用 把用户从底层的硬件编程中解放出来 极大的提高了系统的安全性 使用户程序具有可移植性 API和系统调用 应用编程接口(application program interface, API) 和系统调用是不同的 API只是一个函数定义 系统调用通过软中断向内核发出一个明确的请求 Libc库定义的一些API引用了封装例程(wrapper routine,唯一目的就是发布系统调用) 一般每个系统调用对应一个封装例程 库再用这些封装例程定义出给用户的API 不是每个API都对应一个特定的系统调用。 API可能直接提供用户态的服务 如,一些数学函数 一个单独的API可能调用几个系统调用 不同的API可能调用了同一个系统调用 返回值 大部分封装例程返回一个整数,其值的含义依赖于相应的系统调用 -1在多数情况下表示内核不能满足进程的请求 Libc中定义的errno变量包含特定的出错码 系统调用程序及服务例程 当用户态进程调用一个系统调用时,CPU切换到内核态并开始执行一个内核函数。

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档