OS 内存换入&&换出

OS 内存换入&&换出_第1张图片OS 内存换入&&换出_第2张图片

当通过逻辑地址得到虚拟地址,但是发现虚拟地址没有对应的页框号时,就要中断,然后从磁盘中找把这一页读进来,再把页表中的影射做好,再接着原来的程序。OS 内存换入&&换出_第3张图片OS 内存换入&&换出_第4张图片OS 内存换入&&换出_第5张图片OS 内存换入&&换出_第6张图片

缺页中断进行中断处理   getfreepage 得到物理空闲页

下一句从磁盘读入到申请的空间

下一句就是物理页和虚拟地址构建联系OS 内存换入&&换出_第7张图片

内存换出

OS 内存换入&&换出_第8张图片OS 内存换入&&换出_第9张图片缺页就是里面有几个字母就出现了几次缺页OS 内存换入&&换出_第10张图片OS 内存换入&&换出_第11张图片OS 内存换入&&换出_第12张图片每执行一条指令都要去查页表去改时间戳,而且还要处理溢出情况,太复杂,实际情况不可行

OS 内存换入&&换出_第13张图片LRU看起来很简单,实际操作起来太复杂,因为操作系统太底层,不能操作时间太长OS 内存换入&&换出_第14张图片使用最近是否使用近似代替最近最少使用,也叫做Clock算法 SCR算法OS 内存换入&&换出_第15张图片OS 内存换入&&换出_第16张图片OS 内存换入&&换出_第17张图片

换入换出结合在一起,访问地址发现缺页,然后去磁盘读一页,页框不足,用Clock算法再去换页swap out,再swap in,再重新绑定页表,换入换出搞定虚拟内存

你可能感兴趣的:(操作系统,操作系统)