In [1]:
from mosaic import *
OS2023(22)
22. 可执行文件和加载 (2)¶
Changelog & 反馈
- 最近要背锅……所以有些更新延迟
背景回顾:可执行文件就是 “描述状态机初始状态的数据结构”。除了静态链接 (完整的初始状态) 之外,程序也可以是动态链接的,也就是允许初始状态中部分库函数实现在运行时指定。
本讲内容:
- 动态链接与加载
- ELF 的动态链接
-
LD_PRELOAD
Hooking
In [2]:
slideshow('22.1')
In [3]:
demo('dlbox', 'v/dlbox')
In [4]:
slideshow('22.2')
In [5]:
demo('custom-loader', 'v/custom-loader')
In [6]:
slideshow('22.3')
In [7]:
demo('hook', 'v/hook')