【读书笔记】程序员的自我修养总结(四)
标签: 【编程开发】
声明:引用请注明出处http://blog.csdn.net/lg1259156776/
说明:这是程序员的自我修养一书的读书总结,随着阅读的推进,逐步增加内容。
链接过程中空间和地址分配
可执行文件中的代码段和数据段都是由输入目标中合并而来,链接器如何将各个段合并到输出文件并分配输出文件中的空间的呢?
分配方法
方法一:
直接按序叠加,obj 1 在obj 0的下面,就这样叠在一起。非常简单,但是问题是obj中都用自己的.text,.data段等,组合在输出的可执行文件中会造成一个问题:因为段的组织要求有一定的地址和空间对齐,比如x86的硬件,段的装载和空间的对齐单位是页,即4096字节,也就说即使某个段只有一个字节,它也要在内存中占用4096