FILE内容和fd之间的关系
注意:fd——文件描述符
FILE*——文件指针
1. 文件描述符fd
fd只是一个整数,在open时产生的,起到一个索引的作用。进程通过PCB中的文件描述符表找到该fd所指向的文件指针file,因此在Linux系统下面,文件描述符主要是被用来标识一个文件。内核通过文件对象表来管理系统中各种各样的文件,而文件表则是通过指针来指向打开的文件,进而达到管理整个文件系统的目的。
其实,通俗来说,在linux系统中打开文件就会获得文件描述符,它是个很小的正整数。每个进程在PCB(Process Control Block)中保存着一份文件描述符表,文件描述符就是这个表的索引,每个表项都有一个指向已打开文件的指针。
详细内容如下图所示:
<