系统调用IO函数(例如open、write、read、remove、close)

大家好,这里是小缺,一名对嵌入式软件开发充满热情的探索者。在学习过程中,想到写一些文章,总结归纳所学的知识点,温故而知新。并将我的学习心得、实践经验和遇到的问题以及解决方案分享给大家,同时也希望能够从社区中学习到更多的知识和经验。今后,我会记录我在嵌入式软件开发道路上的点点滴滴。本篇文章我将向大家介绍文件描述符,一些常见系统调用IO函数,例如open、write、read、remove、close

一、 文件描述符

在Unix和类Unix操作系统中,文件描述符是一个非负整数,用于标识一个打开的文件或其它I/O对象。文件描述符是进程级别的,不同的进程可以拥有相同的文件描述符编号,但它们各自引用不同的文件或I/O对象。

当一个进程打开一个文件或创建一个新的文件时,操作系统会分配一个文件描述符给这个文件。这个文件描述符可以被用来对文件进行读取、写入、移动文件指针等操作。简单言之,如果要操作文件,那么就是对这个文件描述符的操作

当一个程序运行或者一个进程开启时,系统会自动创建三个文件描述符

标准输入(Standard Input):文件描述符编号为0。这个文件描述符通常与键盘输入关联,进程可以通过它来读取输入数据。

标准输出(Standard Output):文件描述符编号为1。这个文件描述符通常与屏幕输出关联,进程可以通过它来输出数据。

标准错误(Standard Error):文件描述符编号为2。这个文件描述符也与屏幕输出关联,但它用于输出错误信息。

我们要注意,当进程打开一个文件时,操作系统分配的文件描述符是按照一定顺序分配的,通常是按照进程当前已打开的文件描述符的最小空闲值来分配。这意味着如果进程已经打开了文件描述符0、1和2,那么下一个打开的文件将被分配文件描述符3,依此类推。

二、open函数

#include  <sys/types.h>

#include  <sys/stat.h>

#include  <fcntl.h>     //open函数所需头文件

 int open(const char *pathname, int flags);  int open(const char *pathname, int flags, mode_t mode);

功能

评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值