Linux学习--系统调用、POSIX、C库、系统命令和内核函数
2012-12-06 14:33
288 查看
1.系统调用与POSIX
系统调用是用户应用程序访问并使用内核所提供的各种服务的途径。
但通常情况下,应用程序不是直接通过系统调用来编程,而是通过操作系统提供的编程接口(API)。
操作系统API的主要作用是把操作系统的功能打包并更好的展示出来,供应用程序使用,功能包括,与文件
内存、时钟、网络、图形、各种外设等互操作的能力。
除此之外,API还提供许多工具类的功能,比如操纵字符串、各种数据类型、时间日期等。
在UNIX世界里,较常用的系统API是基于POSIX(portable operating systemn interface of unix)标准的。
在UNIX的发展历程中,很多公司都推出了不桶的版本的unix系统。他们的API各不相同。这给软件的移植带来了很大的困难。
为了解决这个问题,IEEE制定了POSIX标准。从而提高UNIX环境下应用程序的可移植性。同时,POSIX也不是UNIX专有的。
比如MICROSOFT NT也支持posix(WinXP需要安装个插件才能使用。)
Linux兼容于POSIX标准,提供了相关的API函数。这些API函数与系统调用之间有着错综复杂的关系。
可以是一对一,可以使一对多,也可以是不使用系统调用。
我们可知POSIX是对系统调用的封装。但不限于系统调用。
2.操作系统API通常以C库的方式提供。C库提供了POSIX的绝大部分的API,同时,内核提供的每个系统调用在C库中都具有
相应的封装函数。
系统调用和C库函数并不是一对一的关系。可一是多对一,一对多。或者是不调用,因为这些不需要想内核请求人和服务。
C库使得系统调用透明化,用户只考虑C库即可。同样,内核看不到用户的请求。
3.系统调用和内核函数
内核函数在内核内实现,遵守内核编程的规则。
系统调用是用户应用程序访问并使用内核所提供的各种服务的途径。
但通常情况下,应用程序不是直接通过系统调用来编程,而是通过操作系统提供的编程接口(API)。
操作系统API的主要作用是把操作系统的功能打包并更好的展示出来,供应用程序使用,功能包括,与文件
内存、时钟、网络、图形、各种外设等互操作的能力。
除此之外,API还提供许多工具类的功能,比如操纵字符串、各种数据类型、时间日期等。
在UNIX世界里,较常用的系统API是基于POSIX(portable operating systemn interface of unix)标准的。
在UNIX的发展历程中,很多公司都推出了不桶的版本的unix系统。他们的API各不相同。这给软件的移植带来了很大的困难。
为了解决这个问题,IEEE制定了POSIX标准。从而提高UNIX环境下应用程序的可移植性。同时,POSIX也不是UNIX专有的。
比如MICROSOFT NT也支持posix(WinXP需要安装个插件才能使用。)
Linux兼容于POSIX标准,提供了相关的API函数。这些API函数与系统调用之间有着错综复杂的关系。
可以是一对一,可以使一对多,也可以是不使用系统调用。
我们可知POSIX是对系统调用的封装。但不限于系统调用。
2.操作系统API通常以C库的方式提供。C库提供了POSIX的绝大部分的API,同时,内核提供的每个系统调用在C库中都具有
相应的封装函数。
系统调用和C库函数并不是一对一的关系。可一是多对一,一对多。或者是不调用,因为这些不需要想内核请求人和服务。
C库使得系统调用透明化,用户只考虑C库即可。同样,内核看不到用户的请求。
3.系统调用和内核函数
内核函数在内核内实现,遵守内核编程的规则。
相关文章推荐
- linux下系统调用、API、系统命令,内核函数的区别与联系
- 系统调用、POSIX、C库、系统命令和内核函数
- 系统命令、C库、系统调用、POSIX和内核函数及之间关系
- 系统调用、POSIX、C库、系统命令和内核函数
- 系统调用、POSIX、C库、系统命令和内核函数
- 系统调用、POSIX、C库、系统命令和内核函数
- 学习笔记 --- LINUX 应用调试之使用strace命令追踪系统调用
- Linux 下系统调用 API 系统命令 内核函数 区别
- 系统调用、POSIX、C库、系统命令和内核函数
- 【C语言学习笔记】调用系统命令system
- 【嵌入式Linux学习七步曲之第五篇 Linux内核及驱动编程】Linux系统调用的实现机制分析
- linux基础(三)----linux命令系统学习----安装和登录命令
- linux基础命令学习 (十一)系统管理命令
- 在linux系统下让sqlplus支持历史命令调用
- linux系统管理学习笔记之一-------linux解压缩命令
- linux学习笔记之系统标准:POSIX,ISO C...
- Java利用ImageMagick调用linux系统命令实现Ai或者PSD文件转化为jpg或者png文件
- python调用linux系统命令
- LINUX系统学习笔记VIM编辑模式,命令模式
- [网络摘录学习]常用的Linux系统监控命令