7

所以我正在尝试编写一个使用inotify 的C 程序。我以前使用过 pyinotify,所以我了解它是如何工作的。但是,我正在遵循一些指南,它告诉我包含<linux/inotify.h>. 问题是这个头文件只有宏定义,没有功能原型。看起来函数的原型是<sys/inotify.h>.

linux/inotify.h我的问题是和有什么区别sys/inotify.h?为什么两者都有?

4

1 回答 1

8

sys/inotify.hGNU C 库的一部分。它公开了您的程序将用于接收文件系统更改通知的结构和功能。它可以被认为是通知系统的公共 API。

linux/inotify.h是 Linux 内核的一部分。它定义了用于实现通知系统本身的内核结构和常量。除非您正在编写内核模块之类的东西,否则不应包含该文件,因为它是 Linux 特定的,因此不可移植。

于 2010-12-12T07:44:43.880 回答