API和系统调用函数的区别(个人理解)

来源:互联网 发布:若蓝格杂志 知日 编辑:程序博客网 时间:2024/05/16 17:41

整个操作系统分为用户空间和内核空间。
用户空间:顾名思义,用户可以访问的内存空间。
内核空间:只有操作系统可以访问,这是为了安全,所以屏蔽了用户空间。
但是用户又要与内核进行交互,怎么办呢。操作系统设置了系统调用函数,方便用户使用。也就是说,用户进入内核空间的唯一途径就是通过系统调用,当然,还有一些间接地方法,但是最终都是通过系统调用来执行函数,完成相应的功能。
API函数:类似于驱动函数,对应于多个系统调用函数以完成一定的功能。
所以API实际上是提供了一个接口,功能比系统调用复杂,使用也简单
例如:要复制一个文件的内容到另一个文件,API接口可能只要一个函数COPY(),提供特定的参数,源文件和目标文件,以及读取文件的长度等,就可以完成功能。但是这个函数需要调用很多系统调用。像打开源文件,读源文件内容,创建目标文件等等。
那么很自然的应用程序员更喜欢用API函数,因为它简单,方便。系统调用复杂。
同时API方便调用

以上很好的解释了API和系统调用的区别重点内容

阅读全文
0 0
原创粉丝点击