摘要:
【Mac之Binding Symbols】 1、what is binding? 2、The dynamic linker can bind a program at several stages during loading and execution, depending on the options you specify at build time: attention: just-in-time binding is the default value. 阅读全文
posted @ 2013-03-04 23:52
Tekkaman
阅读(217)
评论(0)
推荐(0)
摘要:
【Mac之Linker】 1、static linker static linker is used to compose object file into final file. 2、dynamic linker dynamic linker used to load shared library that the programe based on. 阅读全文
posted @ 2013-03-04 23:42
Tekkaman
阅读(249)
评论(0)
推荐(0)
摘要:
【位置无关代码】 1、起因 2、解决 为了避免这种情况,共享库使用了位置无关代码(PIC:Position Independnet Code), 这是无论被加载到内存中的任何位置都可以正常工作的代码。共享库中的代码通常都是位置无关代码,这样代码可以以 RO 方式映射。数据页仍然带有需要被重定位的指针,但由于数 据页将以 COW 方式映射,因此这里对共享不会有什么损失。 阅读全文
posted @ 2013-03-04 17:25
Tekkaman
阅读(3037)
评论(0)
推荐(0)
摘要:
【ABI】 总结:简单来说,ABI是规范,所有的Program按这个规范布置自己的二进制数据,以使得可以被操作系统加载。 阅读全文
posted @ 2013-03-04 16:05
Tekkaman
阅读(177)
评论(0)
推荐(0)
摘要:
【两遍链接】 1、第一遍 2、第二遍 简而方之,第一步扫描获取各个input file的信息,第二步处理将获取到的信息有组织的输出到一个新的文件中。 阅读全文
posted @ 2013-03-04 13:57
Tekkaman
阅读(141)
评论(0)
推荐(0)
摘要:
【链接与加载】 显然,连接与加载的难点在于“重定位”和“符号解析”。 阅读全文
posted @ 2013-03-04 13:23
Tekkaman
阅读(164)
评论(0)
推荐(0)
浙公网安备 33010602011771号