2013年3月13日

关于中间层

摘要: 曾经在某本书上看到一句话,具体怎么说的我已经记不清了,但是有三个字我还记得----中间层下面说下我所碰到的中间层1. 可执行文件和物理地址空间中间层是虚拟地址空间可执行文件程序头表中描述了可执行文件和虚拟地址空间的映射关系在创建一个进程的时候会处理物理地址与该进程虚拟地址空间的关系这样通过虚拟地址空间实现了磁盘上文件和物理内存的联系2 磁盘上的文件和物理内存中的内容中间层缓冲区(虽说该缓冲区仍在物理内存中0.12)缓冲区负责把磁盘块读到缓冲区中,同时也负责把缓冲区中的内容写回磁盘一些修改操作都在缓冲区中进行,只要最后把该缓冲区置脏就行了未完待续 阅读全文

posted @ 2013-03-13 08:31 追寻前人的脚步 阅读(221) 评论(0) 推荐(0) 编辑

静态链接

摘要: 详见程序员的自我修养P107这里我重点手说下符号表和重定位表是怎么联系起来的重定位表中有若干项重定位入口,每一个重定位入口其实就是一个数据结构typedef struct{ Elf32_Addr r_offset; Elf32_Word r_info;}重定位入口的偏移表示该入口在要被重定位的段中的位移(比如说在代码段的偏移值),被重定位的段可以是代码段数据段等或者说是该重定位入口所要修正的位置的第一个字节相对于段的偏移r_info 重定位的入口的类型和符号。这个成员的低八位表示重定位入口的类型,高24位表示重定位入口的符号在符号表中的下标这里又提到符号表,什么是符号表呢... 阅读全文

posted @ 2013-03-13 08:03 追寻前人的脚步 阅读(154) 评论(0) 推荐(0) 编辑

导航