文件IO(系统IO)

文件IO(系统IO)

文件描述符(fd)是在文件IO中贯彻适中的类型。

文件描述符的概念:

实质是一个整形数,文件描述符优先使用当前可用范围内最小的一个。

 

 

 

说到stream首先想到的是stdio、stdout、stderr、

说到fd首先想到的是0、1、2

 

 

文件描述符的操作:open、close、read、write、lseek

标准IO 系统IO
r O_RDONLY
r+ O_RDWR
w O_WRONLY | OCREAT | O_TRUNC
w+ O_RDWR | O_TRUNK |  O_CREAT

open():

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

当有O_CREAT的时候,用三参函数。函数名相同,参数不同,在C++中叫重载,但是在C语言中没有重载,他是利用变参机制实现的,即...

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

 

 

 

 


 

标准IO基于系统IO

将文件IO与系统IO区别:

举例:传达室老大爷跑邮局

区别:相应速度 & 吞度量

面试:如何使一个程序变快?

提醒:标准IO与文件IO不可以混用。

转换:fileno、fdopen

 

 

IO的效率问题:

习题:

 

文件共享:

 

原子操作:

 

程序中的重定向:dup、dup2

同步:sync、fsync、fdatasync

fcnt1();

ioctl();

 

/dev/fd/目录:

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章