linux应用基础知识点2-文件IO和标准IO

linux应用基础知识点2-文件IO和标准IO

open、close、write、read这类API函数构成的一套读写文件的体系,我们称为“文件IO”。
应用层C语言库函数提供了一系列读写函数fopen、fclose、fwrite、fread,由文件io封装来的,我们称之为“标准IO”。两者的对比:

1.工作效率
以write操作为例,文件io会根据硬盘特性,选择合适时间将底层缓冲区文件写入块设备中。这套体系可以完成工作,但是效率不高。
标准IO为应用层增加了一个缓冲机制,这样当写操作时,不是直接进入内核的buf,而是先进入标准io维护的应用层buf,然后标准io根据系统单次写入的最佳时机写到内核buf中。效率更高。
linux应用基础知识点2-文件IO和标准IO
2.移植性
文件IO在不同的操作系统间不能通用,而标准IO则几乎一样。