嵌入式linux应用程序开发标准教程pdf,嵌入式LINUX应用程序开发标准教程-华清远见.PDF...

嵌入式LINUX应用程序开发标准教程-华清远见

《嵌入式LINUX应用程序开发标准教程》

作者:华清远见

第6 章 文件I/O 编程

掌握Linux 中系统调用的基本概念

掌握Linux 中用户编程接口(API )及系统命令的相互关系

掌握文件描述符的概念

掌握Linux 下文件相关的不带缓存I/O 函数的使用

掌握Linux 下设备文件读写方法

掌握Linux 中对串口的操作

熟悉Linux 中标准文件I/O 函数的使用

专业始于专注 卓识源于远见

6.1 Linux 系统调用及用户编程接口(API )

由于本章是讲解Linux 编程开发的第1 章,因此希望读者更加明确Linux 系统调用和用户编程接口(API )的概

念。在了解了这些之后,会对Linux 以及Linux 的应用编程有更深入的理解。

6.1.1 系统调用

所谓系统调用是指操作系统提供给用户程序调用的一组“特殊”接口,用户程序可以通过这组“特殊”接

口来获得操作系统内核提供的服务。例如用户可以通过进程控制相关的系统调用来创建进程、实现进程调

度、进程管理等。

在这里,为什么用户程序不能直接访问系统内核提供的服务呢?这是由于在Linux 中,为了更好地保护内

核空间,将程序的运行空间分为内核空间和用户空间(也就是常称的内核态和用户态),它们分别运行在

不同的级别上,在逻辑上是相互隔离的。因此,用户进程在通常情况下不允许访问内核数据,也无法使用

内核函数,它们只能在用户空间操作用户数据,调用用户空间的函数。

但是,在有些情况下,用户空间的进程需要获得一定的系统服务(调用内核空间程序),这时操作系统就必须

利用系统提供给用户的“特殊接口”——系统调用规定用户进程进入内核空间的具体位置。进行系统调用时,

程序运行空间需要从用户空间进入内核空间,处理完后再返回用户空间。

Linux 系统调用部分是非常精简的系统调用(只有250 个左右),它继承了UNIX 系统调用中最基本和最有

用的部分。这些系统调用按照功能逻辑大致可分为进程控制、进程间通信、文件系统控制、系统控制、存

储管理、网络管理、s

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值