最近更新 · 33 篇文章按系列阅读
[链接器的世界-实验篇15] 让反例决定质量:差分、变异与鲁棒性
实现可重放的变异与 panic 调查工具,通过原生运行、确定性检查和 GNU ld 差分测试检验此前的链接器后端。
阅读全文
[链接器的世界-实验篇14] 接住 rustc:把链接器变成真正的驱动程序
为累积的 class13 静态 PIE 后端实现命令行驱动,让 rustc 直接调用它,链接一个使用 core::fmt 的 no_std Rust 程序。
阅读全文
[链接器的世界-实验篇13] 地址也有语义:安全 ICF 与代码顺序
在 class12 的 ET_EXEC 与静态 PIE 后端上实现保守 ICF 和代码顺序,重定向引用并修正折叠副本的调试信息。
阅读全文
[链接器的世界-实验篇12] 让调试信息跟着地址走:DWARF、符号表与节头
为 ET_EXEC 与静态 PIE 补全调试节、符号表和节头表,区分图像地址、调试节偏移与 TLS 偏移。
阅读全文
[链接器的世界-实验篇11] 看穿间接层:GOT、指令松弛与静态 TLS
在 class9 的静态 PIE 上构建 GOT,实施课程支持的 mov 松弛,布局 TLS 模板,并用提供的启动代码安装主线程 TLS。
阅读全文
[链接器的世界-实验篇10] 不再原样复制:常量合并与展开表重建
在 class8 的 ET_EXEC 后端中合并重复常量,映射输入偏移,并为存活代码重建 .eh_frame 与搜索索引。
阅读全文
[链接器的世界-实验篇09] 不知道加载地址时怎么链接:自重定位的静态 PIE
在 class8 前端与 class6 布局之上生成静态 PIE,区分静态补丁和加载期指针,并通过提供的启动代码完成自重定位。
阅读全文
[链接器的世界-实验篇08] 只留下被用到的:可达性回收与链接映射
从入口和显式根追踪存活节,建立不依赖输出地址的链接计划,并输出确定、字节安全的 map。
阅读全文