Linux系统调用分析Linux 系统调用分析计算机 962 班 周从余一. 与系统调用有关的一些基本知识 1.系统调用的定义在 OS 的核心中都设置了一组用于实现各种系统共能的子程序,并将它们提供 给用户程序调用.每当用户在程序中需要 OS 提供某种服务时,便可利用一条系统 调用命令,去调用所需的系统过程.所以说系统调用在本质上是一种过程调用.系统 调用是进程和操作系统之间的接口,这些调用一般就是一些汇编指令集,在 Linux 系统中这些调用是用 C 语言和汇编编写的。用户只有通过这些系统调用才能使 用操作系统提供的一些功能.2.系统调用与过程调用的区别过程调用调用的是用户程序,它运行在用户态;其被调用过程是系统过程,运行在系 统态下. 系统调用是通过软中断机制进入 OS 核心,经过核心分析后,才能转向响应的命令 处理程序.系统调用返回时通常需要重新调度.系统调用允许嵌套调用.3.中断与异常中断(interrupt)是由外部事件的,可以随时随地发生(包括在执行程序时)所以 用来响应硬件信号。在 80386 中,又把中断分为两种: 可屏蔽中断(Miscible Interrupt) MI 不可屏蔽中断(NonMaskable Interrupt) NMI 异常(exception)是响应某些系统错误引起的,也可以是响应某些可以在程序中 执行的特殊机器指令引起的. 异常也分为两种: 处理器异常, (指令内部异常 如 overflow 等) 编程(调试)异常(debugger) 每一个异常或中断都有一个唯一的标识符, 在 linux 文献中被称为向量。 指令内 部 异常和 NMI (不可屏蔽中断) 的中断向量的范围从 0―31。 32-255 的任何向量都 可 以用做 可屏蔽中断 编程(调试)异常 至于可屏蔽中断则取决于该系统的硬件配置。外部中断控制器(External inte……
猜您喜欢
推荐内容
开源项目推荐 更多
热门活动
热门器件
用户搜过
随便看看
热门下载
热门文章
评论