您好、欢迎来到现金彩票网!
当前位置:2019手机棋牌游戏平台 > 系统调用 >

系统调用和库函数及API的区别

发布时间:2019-07-01 07:36 来源:未知 编辑:admin

  API其实是一个函数的定义,比如常用的read()、malloc()、free()、abs()函数等,这些函数说明了如何获得一个给定的服务;儿系统调用是通过软中断向内核发出的一个明确的请求。API有可能和系统调用的形式是一样的,比如read()函数就和read()系统调用的调用形式是一致的。但是,情况并不是这样。这表现在两个方面,一种是几个不同的API其内部实现可能调用了同一个系统调用,例如,linux的libc库实现了内存分配和释放的函数malloc()、calloc()、和free()。这几个函数的实现都调用了brk()系统调用;玲一方面一个API的实现调用了好几个系统调用。更有些API甚至不需要任何的系统调用,因为不需要内核提供服务,如计算整数绝对值的abs()函数。从编程这的观点看,API和系统调用之间没有什么区别,二者关注的都是函数名、参数类型及返回代码的含义。然而,从设计者的观点看是有区别的,因为系统调用的实现在内核完成的,儿用户态的函数是在函数库中实现的。总而言之,系统调用是内核提供给用户的接口!

http://showmycoco.com/xitongdiaoyong/356.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有