欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

不带缓冲的文件I/O之引言

程序员文章站 2022-07-11 08:13:00
...
        说明:这是不带缓冲的文件I/O系列笔记的引言部分,其它更多内容将在后面陆续更新。另外,更详细的内容请参考《UNIX环境高级编程》第3章 -- 文件I/O。

        对于内核而言,所有打开的文件都通过文件描述符引用。文件描述符是一个非负整数,变化范围是 0~OPEN_MAX-1。当打开一个现有文件或创建一个新文件时,内核向进程返回一个文件描述符。当读、写一个文件时,就使用 open 或 creat 返回的文件描述符标识该文件,将其作为参数传送给 read 或 write函数。
        按照惯例,UNIX 系统用 0、1 和 2 分别关联标准输入、标准输出和标准错误。但为了提高可读性,应当用在头文件 <unistd.h> 中定义的符号常量 STDIN_FILENO、STDOUT_FILENO、STDERR_FILENO 来代替。
        通常所用的文件操作函数是标准I/O函数,它们是带缓冲的。所谓不带缓冲,指的是每个read 和 write 都调用内核中的一个系统调用。只要涉及在多个进程间共享资源,原子操作的概念就变得非常重要。我们将通过文件 I/O 和 open 函数的参数来讨论此概念。
相关标签: unix 编程