XV6内存布局

1、 规定系统最大物理内存为16MB。
2、 应用程序使用0-640K虚拟内存,640K-1M是映射IO空间,1M以上的高位内存只有内核可以使用,4064-4096最高32M地址空间映射到不同的设备。
3、 每个应用程序都有自己的页表,页表的前160项(0-640K)内存是自己映射的,从640K到最高物理内存,其物理地址和虚拟地址是一致的,不过应用程序没有访问高于640K内存的权限。这样可以> 快速从应用层切换到内核层。
4、 应用程序要求分配页面的时候,内核空间映射的物理页会再次映射到用户空间,相当于一个页被映射了两次。

5、 内核使用一个被自旋锁保护的链表来保存空闲页面,链表的节点就位于空闲页面的顶端(好精妙的设计!)。

你可能感兴趣的:(内存)