Linux操作系统采用虚拟内存管理技术,每个进程都有独立的进程地址空间,空间大小为3G,不但起到保护操作系统的作用,而且用户程序可使用比实际物理内存更大的地址空间。
Linux将4G的虚拟内存地址空间划分为两个部分——用户空间(0~0xBFFFFFFF)和内核空间(0xC000000~0xFFFFFFFF),用户一般只能访问用户空间,通过系统调用可访问内核空间。用户空间对应的进程空间可变,每当进程切换,用户空间就跟随着变化,内核空间不会随着进程改变而改变。
地址类型:
物理地址,出现在CPU地址总线上的寻址物理内存的地址信号。
逻辑地址,程序代码经过编译后出现在汇编程序中地址。(段式管理中会有逻辑地址的概念)
线性地址(虚拟地址)(32位CPU可表示4G地址空间)
地址的转换:
Linux的内存管理有限度的采用了分段机制(所有的段的基地址均为0),即逻辑地址与虚拟地址完全相同,相当于完全采用了页式管理。
----------------------------------------------------------------------未完待续--------------------------------------------------------------------------