虚拟地址与物理地址

1.背景:在DOS时期,采用的是“实地址”模式,进程直接使用物理地址,

但是这个模式下,进程可以任意修改物理内存,很容易发生占用其他进程内存的情况

2.解决:使用虚拟内存映射到物理内存,使用页为单位

 

  3.操作系统以链表形式存储各个进程,在Windows称为进程控制块,在linux中称为task_struct,每个进程的控制信息都有这样一个指针,存储的是当前进程“页目录”的物理地址,页目录也是一个内存页

4.页目录 --> 页表 --> 物理内存页

5.线性地址 如何映射到 物理地址?

【参考】

1.话说虚拟内存

https://www.bilibili.com/video/BV1KD4y1U7Rr?from=search&seid=3473710066257034547

猜你喜欢

转载自blog.csdn.net/nature_ph/article/details/109116343