内核知道文件是如何关闭的

时间:2011-09-14 20:53:24

标签: filesystems kernel inotify pyinotify

linux知道文件已关闭的机制究竟是什么? 我知道当文件关闭时,诸如INOTIFY之类的命令会触发IN_CLOSE_WRITE事件。但它是如何工作的?触发文件关闭的原因是什么?

类似地,操作系统如何知道文件已被打开以及它在何处注册该事实?

2 个答案:

答案 0 :(得分:2)

操作系统(即内核)是实际打开和关闭文件的操作系统。程序必须告诉操作系统每次通过系统调用代表它打开/关闭文件。操作系统可以简单地跟踪这些通过自身的呼叫。

答案 1 :(得分:0)

有一个打开的文件表,列出了所有打开的流以及它们在内存中指向的位置。

这可能有所帮助:http://www.cs.kent.edu/~walker/classes/os.f07/lectures/Walker-11.pdf