首页 / 爱玩数码 / 正文

系统调用和过程调用的区别

时间:2024-06-22 21:02:35

系统调用与一般过程调用的区别 

系统调用与一般过程调用的主要区别如下:

1. 运行状态不同:一般过程调用的调用和被调用过程都是用户程序,运行在同一系统状态下;而系统调用的调用过程是用户程序,运行在用户态,其被调用过程是系统过程,运行在系统态。

2. 进入方式不同:一般过程调用可以直接通过过程调用语句将控制转移到被调用过程;而执行系统调用时,由于调用和被调用过程处于不同系统状态,必须通过访管中断进入。

3. 代码层次不同:一般过程调用的被调用程序是用户级程序,而系统调用是操作系统中的代码程序,是系统级程序。

4. 系统调用是动态调用,程序中不包含被调用代码,其调用地址和返回地址都是不固定的;而一般过程调用是静态调用,被调用代码与调用代码在同一程序之内,其调用地址是固定的。

5. 与进程调度的关系不同:系统调用返回时,要进行重新调度的检查,看是否有更高优先级的任务就绪;而一般过程调用不涉及到进程调度。

6. 嵌套或递归调用:对系统调用,一般不允许在同一个进程中发生嵌套或递归。

《系统调用和过程调用的区别》不代表本网站观点,如有侵权请联系我们删除

点击排行

成长网提供支持 骄阳网版权所有网站地图 网站地图2 主办单位:广州小漏斗信息技术有限公司 粤ICP备20006251号

联系我们 关于我们 版权申明