跳转至

Loading

加载可执行目标文件

当加载器运行时,它创建 类似图 所示的内存映像。 在程序头部表的引导下,加载器将可执行文件的片 (chunk) 复制到代码段和数据段 。接 下来,加载器跳转到程序的入口点,也就是 _start 函数的地址。这个函数是在系统目标文件 ctrl.o 中定义的,对所有的 C 程序都是 一 样的。 _start 函数调用系统启动函数__libc_start_main, 该函数定义在 libc.so 中。它初始化执行环境,调用用户层的 main 函数,处理 main 函数的返回值,并且在需要的时候把控制返回给内核。


最后更新: 2022-01-30 14:28:00
本页作者: liusy58