glibc源代码的结构是什么

时间:2012-07-05 15:02:46

标签: c linux

我试图找一个特定的函数,比如fstatfs,但是我找到了下面的代码,它什么也没做,我检查了__set_errno宏,它只是设置错误号。

int
__fstatfs (int fd, struct statfs *buf)
{
  __set_errno (ENOSYS);
  return -1;
}

所以在ASM中实现了一组核心库,但是如何工作,如果是这样,为什么这些弱函数甚至存在呢?

1 个答案:

答案 0 :(得分:3)

我猜这个调用是依赖于操作系统的,所以你看到的只是一个存根。 io/sys/statfs.h中似乎存在某种别名,Linux实现的候选者位于sysdeps/unix/sysv/linux/fstatfs64.c文件中。