摘要: 内核代码和数据的地址 对于linux 0.11内核代码和数据来说,在head.s程序的初始化操作中已经把内核代码段和数据段都设置成长度为16M的段。在线性地址空间中这两个段的范围重叠,都是从线性地址0开始到地址0XFFFFFF共16M地址范围。在该范围中含有内核所有的代码、内核段表(GDT,IDT,TSS)、页目录表和内核的二级页表、内核局部数据和内核临时堆栈(将被用作第一个任务即任务0的用户堆栈)。其页目录表和二级页表已设置成把0-16M的线性地址空间一一对应到物理地址上,占用了4个目录项即4个二级页表。因此对于内核代码和数据来说,我们可以直接把它看作是物理内存中的地址。如下图: 因此,.. 阅读全文
posted @ 2014-03-23 12:02 萧瑟秋风_cyz 阅读(872) 评论(0) 推荐(0) 编辑