引子:在linux上写了三年多的c了,平时遇到一些编译和链接的问题仍然很是头痛,感觉很无力,好基友推荐《程序员的自我修养》,趁着周末,速速围观。
先记录下作者在书中抛出来的问题
1.为啥程序是从main函数开始执行?
2.PE/ELF文件存的是啥?
3.如何写一个直接跑在未安装os裸机上的程序?
4.目标文件是啥?链接是啥?
5.链接为啥报错?
6.句柄到底是啥?
7.普通c/c++代码如何被编译成牧宝文件及程序在目标文件中如何存储?
8.目标文件如何被链接器链接到一起,并形成可执行文件?
9.目标文件在链接是符号处理,重定位和地址分配是如何进行的?
10.可执行文件如何被装载并且执行?
11.可执行文件与进程的虚拟空间之间是如何映射的?
12.动态链接是啥?为何要动态链接?
以上问题,说实话,只能模糊回答个大概。
一、《程序员的自我修养》笔记-前言,布布扣,bubuko.com
原文地址:http://www.cnblogs.com/liuyidiao/p/3840012.html