可执行程序的装载
一,预处理、编译、链接和目标文件的格式
可执行程序是怎么来的?
预处理 把include里的宏定义替换 做字符串处理。
efl格式? 目标文件格式,Windows中用PE Linux中用efl。
静态链接、动态链接?
ABI和文件格式的关系? 二进制兼容。
可重定位文件 可执行文件 共享目标文件
连接器:链接编辑器 ,动态链接器
**当创建或者增加一个进程映像时,系统在理论上会复制文件的一个段到一个虚拟的内存段去。
可执行文件加载到内存中 开始执行第一行代码。
一般情况静态链接会把所有代码放到一个代码段
二,可执行程序、共享库和动态链接
研究可执行程序的装载、执行环境等
先函数调用参数传递,再系统调用参数传递。
装载和运行时的动态链接举例。
三,可执行程序的装载
时间: 2024-10-16 08:19:44