3.1 引言
本章开始讨论UNIX系统,先说明可用的文件I/O函数----打开文件、读文件、写文件等。UNIX系统中的大多数问加你I/O只需用到5个函数:open、read、write、lseek以及close。然后说明不同缓冲长度对read和write函数的影响。
本章描述的函数经常被称为不带缓冲的I/O。术语不带缓冲指的是每个read和write都调用内核中的一个系统调用。这些不带缓冲的I/O函数不是ISO C的组成部分,但是,它们都是POSIX.1和Single UNIX Specification的组成部分。
只要涉及在多个进程间共享资源,原子操作的概念就变得非常重要。我们将通过文件I/O和open函数的参数来讨论此概念。然后,本章将进一步讨论在多个进程间如何共享文件,以及涉及的内核有关数据结构。在描述了这些特征后,将说明dup、fcntl、sync、fsync和iotcl函数。