posix_fadvice是调用损坏的API sys_fadvice64还是调用修复的sys_fadvice64?

posix_fadvice是调用损坏的API sys_fadvice64还是调用修复的sys_fadvice64?,api,linux-kernel,Api,Linux Kernel,我想尝试一下fadvice函数,然后阅读 发现有一个sys\u fadvice64功能被sys\u fadvice64 但是,新函数具有相同的参数。他们为什么不把旧的修好呢 其次,posix\u fadvice是调用损坏的API还是调用修复的API?如何判断?新函数使用loff\t表示len,而旧函数使用size\t。为了保持与针对旧函数编译的程序的二进制兼容性,需要一个新函数 posix_fadvise()应调用新函数(如果可用)。您可以通过编译一个使用posix\u fadvise()的测试

我想尝试一下fadvice函数,然后阅读 发现有一个
sys\u fadvice64
功能被
sys\u fadvice64

但是,新函数具有相同的参数。他们为什么不把旧的修好呢


其次,
posix\u fadvice
是调用损坏的API还是调用修复的API?如何判断?

新函数使用
loff\t
表示
len
,而旧函数使用
size\t
。为了保持与针对旧函数编译的程序的二进制兼容性,需要一个新函数

posix_fadvise()
应调用新函数(如果可用)。您可以通过编译一个使用
posix\u fadvise()
的测试程序来测试这一点,并使用
strace
实用程序查看它使用的系统调用(不要忘记使用
-D\u FILE\u OFFSET\u BITS=64
进行编译)