库函数与系统调用
2016-07-10 17:09
155 查看
库函数调用是语言或应用程序本身的一部分,而系统函数调用是内核提供给应用程序的接口,属于系统的一部分且其是在操作系统内核发现一个“trap”或中断后进行的(其中系统调用是软中断)。
库函数 vs 系统调用
** | 前者 | 后者 |
---|---|---|
兼容性 | 在所有的ANSI C编译器版本中,C库函数是相同的 | 各个操作系统的系统调用是不同的 |
* | 在用户地址空间执行 | 在内核地址空间执行 |
* | 属于过程调用,调用开销较小 | 需要在用户空间和内核上下文环境间切换,开销较大 |
规模 | 在C函数库libc中有大约300个函数 | 在UNIX中大约有90个系统调用 |
etc. | … | … |
实例说明
Linux下对文件操作有两种方式:系统调用(system call)和库函数调用(Library functions)。相关文章推荐
- Mootools 1.2教程 函数
- autoit InputBox 函数
- 文件遍历排序函数
- 关于C#中排序函数的总结
- Oracle 函数大全[字符串函数,数学函数,日期函数]第1/4页
- 修复mysql数据库
- ASP下经常用的字符串等函数参考资料
- PostgreSQL教程(五):函数和操作符详解(1)
- DOS批处理 函数定义与用法
- asp Chr 函数 数字转字母的方法
- Lua中的函数精讲笔记
- Lua中的闭合函数、非全局函数与函数的尾调用详解
- Lua中调用C++函数示例
- Lua实现split函数
- Lua常用时间函数使用实例
- Lua函数与字符串处理简明总结
- Lua学习笔记之表和函数
- Lua中实现sleep函数功能的4种方法
- Lua函数用法研究
- Lua基础教程之赋值语句、表达式、流程控制、函数学习笔记