日期:2014-05-16  浏览次数:20684 次

linux的硬件运行基础
   所有的windows和linux等现代操作系统,都是利用基于分页的保护模式下管理内存的,我觉得对于计算机的内存可以经过实模式,保护模式,而保护模式又分为基于分页的保护模式和非基于分页的保护模式,实模式比较好理解,一个简单的基于段和偏移地址来定位物理地址,保护模式相对比较复杂,基本的转换流程是先通过cpu支持的分段机制转为4g空间的线性地址,然后看取决于是否运行在分页机制下,如果是分页机制,必须通过分页转将得到的线性地址转为物理地址,如果不是分页机制下则直接是由线性地址映射成物理地址。
   每个进程都有自己的4G地址空间,从 0x00000000-0xFFFFFFFF 。通过每个进程自己的一套页目录和页表来实现。由于每个进程有自己的页目录和页表,所以每个进程的地址空间映射的物理内存是不一样的。两个进程的同一个虚拟地址处(如果都有物理内存映射)的值一般是不同的,因为他们往往对应不同的物理页。