Linux下系统调用与库函数调用
来源:互联网 发布:淘宝复制的链接在哪找 编辑:程序博客网 时间:2024/06/06 02:50
原文地址:http://www.spridu.cn/article/Linux_unix/2011/02/17/linux-systemcall-distinction-libraryfunction_9178.shtml
摘抄如下:
Linux下对文件操作有两种方式:系统调用(system call)和库函数调用(Library functions)。系统调用实际上就是指最底层的一个调用,在linux程序设计里面就是底层调用的意思。面向的是硬件。而库函数调用则面向的是应用开发的,相当于应用程序的api。
库函数对文件的操作实际上是通过系统调用来实现的。
系统调用通常用于底层文件访问。系统调用是操作系统相关的,因此一般没有跨操作系统的可移植性。库函数调用通常用于应用程序中对一般文件的访问。库函数调用是系统无关的,因此可移植性好。由于库函数调用是基于C库的,因此也就不可能用于内核空间的驱动程序中对设备的操作。
※函数库调用 VS系统调用
函数库调用
系统调用
在所有的ANSI C编译器版本中,C库函数是相同的
各个操作系统的系统调用是不同的
它调用函数库中的一段程序(或函数)
它调用系统内核的服务
与用户程序相联系
是操作系统的一个入口点
在用户地址空间执行
在内核地址空间执行
它的运行时间属于“用户时间”
它的运行时间属于“系统”时间
属于过程调用,调用开销较小
需要在用户空间和内核上下文环境间切换,开销较大
在C函数库libc中有大约300个函数
在UNIX中大约有90个系统调用
典型的C函数库调用:system fprintf malloc
典型的系统调用:chdir fork write brk;
- Linux下系统调用与库函数调用
- Linux - 系统调用与库函数
- 系统调用与库函数调用
- 系统调用与库函数调用
- 系统调用与库函数
- 系统调用与库函数
- 库函数与系统调用
- 系统调用与库函数
- 库函数与系统调用
- 库函数与系统调用
- 系统调用与库函数
- 系统调用与库函数
- linux 系统调用与库函数的区别
- linux下的系统调用和库函数调用
- Linux系统调用和库函数
- Linux系统调用和库函数
- (转)库函数 与 系统调用
- 库函数与系统调用区别
- 数据文件同步remotingtcp发送次数限制
- Java学习 产生一个随机数组的两种方法
- VB.NET 使用WIN32 API函数,VB.NET使用Windows API函数
- hibernate------HQL总结
- oracle数据库软件,及软件及补丁类型
- Linux下系统调用与库函数调用
- C专家编程笔记
- nginx TCP 反向代理
- define
- 软键盘1—如何隐藏和显示软键盘
- Javascript 词法作用域
- sublime的初级使用配置--[4-19更新]
- hadoop 一个Job多个MAP与REDUCE的执行
- IE下文本模式!DOCTYPE作用