LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1705|回复: 8

为什么没有人研究GNU C Library?

[复制链接]
发表于 2008-4-20 23:39:06 | 显示全部楼层 |阅读模式
大家好,我一直有个问题弄不明白,为什么现在没有一本关于讲解GNU C Library内部源代码组织的书,要知道glibc 2.2.2 有 8552 个文件和 1775440 行代码,包括注释。为什么没有多少人关注这个库的实现??~~~谢谢
发表于 2008-4-21 01:28:11 | 显示全部楼层
学自由软件不能靠书,谢谢
回复 支持 反对

使用道具 举报

发表于 2008-4-21 16:53:12 | 显示全部楼层
学习GNU的东西不是靠书的,要融入社群,动手做事。
发现问题,然后呢在BBS/IRC/MailList上就有跟大家交流的题目了。
这样你日积月累就形成了自己的能力。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-4-21 22:49:56 | 显示全部楼层
但是我没有在linuxsir上面看到有帖子在讨论GNU C Library的??
我只是想知道GNU C library是怎样实现atoi这个函数的,看源码,没有找到??~~
回复 支持 反对

使用道具 举报

发表于 2008-4-28 15:05:26 | 显示全部楼层
Post by robinswan;1840817
学习GNU的东西不是靠书的,要融入社群,动手做事。
发现问题,然后呢在BBS/IRC/MailList上就有跟大家交流的题目了。
这样你日积月累就形成了自己的能力。


严重不同意.


PS:atoi是内联函数,和strlen等一样,没有源代码.它由编译器(GCC)直接在目标程序中嵌入机器代码.
回复 支持 反对

使用道具 举报

发表于 2008-4-28 15:42:48 | 显示全部楼层
gcc有个-fno-builtin-function
加了之后objdump -D -j .text a.out里会有这一句
8048412:       e8 1d ff ff ff          call   8048334 <atoi@plt>
回复 支持 反对

使用道具 举报

发表于 2008-4-29 13:29:38 | 显示全部楼层
用 gcc -O -S xx.c 生成的 xx.s 中也可以看到类似的结果, 比如在我这
  1.     call __strtol_internal
复制代码
回复 支持 反对

使用道具 举报

发表于 2008-4-30 11:14:38 | 显示全部楼层
顺便问一句,为什么函数在汇编里都是XX@plt啊,这个plt啥意思
回复 支持 反对

使用道具 举报

发表于 2008-4-30 14:20:11 | 显示全部楼层
procedure linkage table
google for "dsohowto.pdf"
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表