关于虚拟地址空间,百度百科上关于MMU的描述:

2024-12-05 04:39:12
推荐回答(1个)
回答1:

32位的cpu理论上的寻址范围是0-2^32(4G),但真正的机器不一定有4G这么大的内存可能是1G,那么我们就称这1G为物理空间,内核为每个进程分配4G的线性空间即所谓的虚拟空间,你可能会觉得很逆天,其实不然,内核采用的是缺页机制,这4G的虚拟空间是虚拟的假的,但当进程真的需要往这个空间写操作的时候,那么就会引发缺页异常,此时内核会给该进程分配若干页物理内存,从而实现虚拟内存到物理内存的映射