系统调用与库函数的区别?
来源:互联网 发布:软件测试员工作总结 编辑:程序博客网 时间:2024/05/22 07:07
一. 概念
系统调用(英语:system call),指运行在用户空间的应用程序向操作系统内核请求某些服务的调用过程。 系统调用提供了用户程序与操作系统之间的接口。一般来说,系统调用都在内核态执行。由于系统调用不考虑平台差异性,由内核直接提供,因而移植性较差(几乎无移植性)。
库函数(library function),是由用户或组织自己开发的,具有一定功能的函数集合,一般具有较好平台移植性,通过库文件(静态库或动态库)向程序员提供功能性调用。程序员无需关心平台差异,由库来屏蔽平台差异性。
二,区别
调用※函数库调用 VS 系统
三. 联系
一般而言,跟内核功能与操作系统特性紧密相关的服务,由系统调用提供;
具有共通特性的功能一般需要较好的平台移植性,故而由库函数提供。
库函数与系统调用在功能上相互补充,如进程间通信资源的管理,进程控制等功能与平台特性和内核息息相关,必须由系统调用来实现。
文件 I/O操作等各平台都具有的共通功能一般采用库函数,也便于跨平台移植。
某些情况下,库函数与系统调用也有交集,
如 库函数中的I/O操作的内部实现依然需要调用系统的I/O方能实现。
系统调用(英语:system call),指运行在用户空间的应用程序向操作系统内核请求某些服务的调用过程。 系统调用提供了用户程序与操作系统之间的接口。一般来说,系统调用都在内核态执行。由于系统调用不考虑平台差异性,由内核直接提供,因而移植性较差(几乎无移植性)。
库函数(library function),是由用户或组织自己开发的,具有一定功能的函数集合,一般具有较好平台移植性,通过库文件(静态库或动态库)向程序员提供功能性调用。程序员无需关心平台差异,由库来屏蔽平台差异性。
二,区别
调用※函数库调用 VS 系统
三. 联系
一般而言,跟内核功能与操作系统特性紧密相关的服务,由系统调用提供;
具有共通特性的功能一般需要较好的平台移植性,故而由库函数提供。
库函数与系统调用在功能上相互补充,如进程间通信资源的管理,进程控制等功能与平台特性和内核息息相关,必须由系统调用来实现。
文件 I/O操作等各平台都具有的共通功能一般采用库函数,也便于跨平台移植。
某些情况下,库函数与系统调用也有交集,
如 库函数中的I/O操作的内部实现依然需要调用系统的I/O方能实现。
阅读全文
0 0
- 系统调用与库函数调用的区别
- 系统调用与库函数调用的区别
- 系统调用与库函数调用的区别
- 系统调用与库函数调用的区别
- 库函数调用与系统调用的区别
- 系统调用与库函数调用的区别
- 系统调用与库函数调用的区别
- 系统调用与库函数的区别
- 库函数与系统调用的区别
- 库函数与系统调用的区别联系
- 库函数与系统调用的区别联系
- linux 系统调用与库函数的区别
- 系统调用与库函数的区别?
- 库函数与系统调用的区别
- 系统调用与库函数的区别
- 系统调用与库函数的区别
- 系统调用与库函数的区别
- 系统调用与库函数的区别
- 【日常问题】API文档的.chm后缀自动生成.chw后缀文件
- Java基础知识_入门
- python(numpy scipy matplotlib sklearn)安装
- 近5年133个Java面试问题列表
- Yii2.0开发版development安装
- 系统调用与库函数的区别?
- jQuery的DOM操作
- HDU-1690-Bus System
- hibernate三种状态:临时状态、游离状态、持久化状态
- centOs7 安装mysql
- SSH框架搭建demo
- bzoj3156 防御准备(斜率优化)
- 使用volatile
- css3实现动画-跳动的心