系统调用是在程序中能用类似函数调用方式调用的 *** 作系统服务的集合。由于用户程序在目态下不能直接使用I/O指令等特权指令,为了解决这一问题, *** 作系统编制了许多不同功能的子程序,供用户程序执行中调用,这些由 *** 作系统提供的子程序称为“系统功能调用”程序,简称“系统调用”。
系统调用和普通调用的区别:
系统调用本质上是一种过程调用,但它是一种特殊的过程调用,与一般用户程序中的过程调用有明显的区别 。
1、运行状态不同:
运行状态不同。系统调用的调用过程和被调用过程运行在不同的状态,而普通的过程调用一般运行在相同的状态。
2、调用方法不同:
调用方法不同。系统调用必须通过软中断机制首先进入系统核心,然后才能转向相应的命令处理程序。普通过程调用可以直接由调用过程转向被调用过程。
3、返回问题:
返回问题。在采用抢先式调度的系统中,当系统调用返回时,要重新进行调度分析――是否有更高优先级的任务就绪。普通的过程调用直接返回调用过程继续执行。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)