动态链接器 (ld.so) 在 Linux 上将带有动态链接的可执行程序 (ELF) 加载、链接并提供部分运行时 API (如 dlopen),这样可执行程序可以与依赖库分别存储、分发,常见的 Linux 发行版的安装中并不需要存储数百份 libc,宝贵的硬盘空间可以被节约出来存储例如 Electron 的真正重要的文件,是操作系统不可缺少的重要组成部分。
由于发现自己完全不懂动态链接的工作方式,喵喵于近日尝试使用 Zig 自制了一个不工作的 Linux x86-64 动态链接器,并发现了其实现中众多的扭曲细节。本次 Tunight 旨在分享这些扭曲的来源和实现过程中踩到的坑,讨论如何写出一个工作的动态链接器,以及 At what cost. - 活动页面: https://tuna.moe/event/2024/dynlinker/ - 主讲人:刘晓义 - 时间:2024/06/01(儿童节,校历第十四周周六) 19:00-21:00 UTC +08:00 活动形式:线下 + 线上会议 + 直播 - 地点:三教 3104 - 线上会议:Zoom 会议: 947 7090 9912, 密码 20240601 - 直播链接:YouTube 直播: https://youtube.com/live/sb9pSRwVgf4 欢迎大家一起来庆祝儿童节! Meow-meow 🐈 —- 喵喵的推荐阅读: - 本次 Tunight 将大量复述 MaskRay 博客内容 https://maskray.me/ - jiegec 近期正在博客上更新一个自制链接器的系列文章 https://jia.je/tags/#write-a-linker -- 您收到此邮件是因为您订阅了 Google 网上论坛的“TUNA 主邮件列表”群组。 要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到tuna-general+unsubscr...@googlegroups.com。 要在网络上查看此讨论,请访问 https://groups.google.com/d/msgid/tuna-general/805a47a5-1d21-47f0-9b8b-898ba06d9eeen%40googlegroups.com。