在Linux内核下,让我们说我们有两个进程(p1和p2)读取相同的文件(/file.txt)
如果我没错,会有一个指向 files_struct 的 task_struct ,它会指向文件中的条目(文件表) )。
如果文件/file.txt由其他进程(p2)打开,文件表引用计数将递增。当我们删除文件/file.txt(通过process3)时,因为reference_count>我们可以从process1和process2访问文件内容。
当p1和p2关闭文件时会发生什么。内核如何确定它需要删除而不是正常的用例。