免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: dxcnjupt
打印 上一主题 下一主题

ELF文件的动态链接器 原理 设计和代码 [复制链接]

论坛徽章:
0
21 [报告]
发表于 2007-11-27 06:10 |只看该作者

借问一下,有的section,如:.rel.dyn, rel.plt会在.dynamic section中有相同的项

为什么呢?
有的section,如:.rel.dyn, rel.plt会在.dynamic section中有相同的项

论坛徽章:
0
22 [报告]
发表于 2007-11-27 09:25 |只看该作者
多谢andyzn 帮我找到了这个bug
装载.bss和.rodata的代码应该换一下。

我刚开始写的时候是直接用section_text,section_bss做变量名的,后来在升级代码的时候才改成Section[8],这样便于扩展。  结果升级的时候把数组下标弄错了

论坛徽章:
0
23 [报告]
发表于 2007-11-27 09:49 |只看该作者
另外代码中的
if( kstrcmp( SecName, ".bss") == 0)
{
    Section[3].pSecHeader = SecEntry;                           
}
应该改成
if( kstrcmp( SecName, ".bss") == 0)
{
    Section[3].pSecHeader = SecEntry;
    Section[3].SecIndex = SN;   
}

下一次我把这两个bug改好,再加上对section对齐(__attribute__((aligned)))的支持,加强出错处理,再升级一下代码。
注释确实是太少了,下次多加一些。文档里面再配些图。

论坛徽章:
0
24 [报告]
发表于 2007-12-05 13:46 |只看该作者
确实是个好东西,想跟LZ切磋一下.

论坛徽章:
0
25 [报告]
发表于 2007-12-06 14:50 |只看该作者
好文章!谢谢搂主了

论坛徽章:
0
26 [报告]
发表于 2007-12-07 16:09 |只看该作者
好文章哈,收藏学习了~

论坛徽章:
0
27 [报告]
发表于 2009-04-22 11:31 |只看该作者
thanks!!

论坛徽章:
0
28 [报告]
发表于 2009-04-22 17:23 |只看该作者

论坛徽章:
0
29 [报告]
发表于 2009-04-28 16:44 |只看该作者
谢谢楼主了,最近正在学这方面的东西。

论坛徽章:
0
30 [报告]
发表于 2009-04-28 17:03 |只看该作者
不错,只是大概知道了原理,现在更清楚了细节了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP