文件描述符和打开文件

  • 进程级的文件描述符表

  • 全局系统级的打开文件表

  • 文件系统级的inode表

文件描述符表中每一条目都记录了单个文件描述符的信息

  • 控制文件描述符操作的标志 close-on-exec
  • 对打开文件句柄的引用

打开文件表中的每一条目都是一个文件句柄,句柄包含

  • 当前文件偏移量
  • 打开文件所使用的标志,即open的flag参数
  • 文件访问模式,即open指定的只读,只写,读写模式
  • 与信号驱动IO相关的设置
  • 对该文件inode对象的引用

每个文件系统都会为驻留在其中的所有文件建立一个inode表,每个条目内容

  • 文件类型和访问权限
  • 一个指针,指向该文件所持有的锁的列表
  • 文件属性,如文件大小,访问时间

文件句柄23号表示进程A对fd1做过了dup/fcnctl处理,文件句柄73号表示进程A和B存在fork

猜你喜欢

转载自blog.csdn.net/happykillerxxx/article/details/84944697