GNU C库的实现在哪里?

时间:2013-10-21 15:21:10

标签: c gnu

我正在浏览驻留在/ usr / include中的glib头文件,以了解幕后发生的事情。我正在查看的所有文件只是声明了一堆宏和函数,但我想看一下这些函数的实现。

2 个答案:

答案 0 :(得分:2)

glibc源代码库位于:

https://sourceware.org/git/?p=glibc.git;a=tree

请注意,有趣代码的很多位于sysdeps目录下,尤其是sysdeps/unix/sysv/linux/*。另外值得注意的是,stdio在stdio-commonlibio之间分开,并且所有POSIX线程接口都在nptl下实现(它也有自己的sysdeps树。 / p>

此外,请注意,有很多功能根本找不到源代码。许多标准函数只是调用内核(syscalls)的入口点,这些包装器是在构建过程中自动生成的。

答案 1 :(得分:1)

GLibC中函数实现的可读形式包含在其源代码中,可从its website下载。

请注意,某些功能是委托给系统调用的存根,完整的实现将在您的操作系统的源代码中找到。