在阅读Stevens的大作<<Advanced Programming in the UNIX® Environment>> ,简称为<<APUE>>时,在第三章中出现了三个英文词,file descriptor,file descriptor flags,file status flags,即所谓的”文件描述符“,"文件描述符标志", "file status flags",这三个概念在使用fcntl函数时必须要区别清楚。下面就从字面上来解释下:
1)file descriptor(文件描述符):是文件的一个标识,常使用整数标识。内核使用该标识跟踪你在程序中打开的文件;
2)file descriptor flags(文件描述符标志):从字面上来理解,就是描述符的一个标志,目前Unix,Unix-like和Linux中只有一个值:close-on-exec,用FD_CLOEXEC来表示。
3)file status flags(文件状态标志):从字面上来理解,就是用来描述文件状态的一个标志,根据理解,我把此类标志分为三个部分:
a)文件访问性状态标志:O_RDONLY,O_WRONLY,O_RDWR;
b)文件创建性状态标志:O_CREAT,O_EXCL, O_NOCTTY,O_TRUNC,O_APPEND;
c)文件异步/同步标志
1)file descriptor(文件描述符):是文件的一个标识,常使用整数标识。内核使用该标识跟踪你在程序中打开的文件;
2)file descriptor flags(文件描述符标志):从字面上来理解,就是描述符的一个标志,目前Unix,Unix-like和Linux中只有一个值:close-on-exec,用FD_CLOEXEC来表示。
3)file status flags(文件状态标志):从字面上来理解,就是用来描述文件状态的一个标志,根据理解,我把此类标志分为三个部分:
a)文件访问性状态标志:O_RDONLY,O_WRONLY,O_RDWR;
b)文件创建性状态标志:O_CREAT,O_EXCL, O_NOCTTY,O_TRUNC,O_APPEND;
c)文件异步/同步标志