内存管理(1)-linux内核体系结构(2)

来源:互联网 发布:淘宝详情页模板图 编辑:程序博客网 时间:2024/05/21 21:47

内存物理结构


•内核占用内存开始部分;接下来是共硬盘,软盘使用的高速缓冲区部分,其中扣除显存和bios的640k到1m;然后是虚拟盘;最后一部分是为所有程序可以使用的主内存区。


每台设备内存大小等参数都可能不一样。程序直接使用物理内存地址,将使得程序无法在通用的机器上运行。

为了隔离物理内存和程序使用内存,对其地址的访问。在程序运行时将使用虚拟地址。系统内核将建立虚拟地址到物理内存地址的映射。

应用程序的虚拟地址将是独立的。即没个程序看起来好像可以霸占整个主存空间。


以下是内核地址转化示意图:



虚拟地址(逻辑地址)访问全系统内存采用如下“索引”设计:

由段选择符和段内偏移地址


段变换:将一个由段选择符和段内偏移构成的逻辑地址转换为一个线性地址。页变换:将线性地址转换为对应的物理地址。

为什么要采用这种方式呢?


具体如何管理呢?



分段管理



分页管理



未完,待修整