【发布时间】:2012-10-22 03:50:28
【问题描述】:
我最近对编译器、标准库和内核的内部工作方式产生了兴趣。在搜索标准 C 库的源代码时,我遇到了 Glibc。但是在Glibc官网上写的是:the library which defines the ''system calls'' and other basic facilities such as open, malloc, printf, exit...
所以我猜Glibc实际上并没有提供标准C库的源代码,而是提供了这些函数的系统调用,然后内核来处理它们,对吗?
我想了解更多关于这些事情的信息。例如,sin、printf 和 strlen 函数如何在 C 程序中执行?如果 Glibc 只提供系统调用,那么这些函数的实际源代码在哪里?内核如何执行它们?在哪里可以找到执行这些功能的内核部分的源代码?
【问题讨论】:
-
glibc 的源代码用于构建 glibc 库。源代码由编译器翻译成可执行代码。
-
你知道
.so和.a文件吗? -
是的,我知道 .so 和 .a
标签: c compiler-construction kernel glibc standard-library