专栏名称: 看雪学苑
致力于移动与安全研究的开发者社区,看雪学院(kanxue.com)官方微信公众帐号。
今天看啥  ›  专栏  ›  看雪学苑

Linux0.11共享内存机制

看雪学苑  · 公众号  · 互联网安全  · 2019-02-15 17:57
Linux操作系统设计的精妙之处简直让人赞叹不已,不得不佩服Linus这个天才!共享内存也是一种节约内存使用、减小系统硬件开销的机制,他基于写时复制。设想这样一个场景:一个可执行文件x.bin被加载到内存中以进程A的形式首次运行,由于某些原因x.bin只是部分被加载,剩下的部分还在硬盘里。当执行到逻辑地址address时由于缺页,引发缺页异常,剩下的部分从硬盘被加载到内存中,进程A得以继续运行。在A还没退出时,shell再次执行了x.bin,此时x.bin以进程B的形式运行,同样还是运行到逻辑地址address发生了缺页异常,这次异常处理函数首先发现竟然还有A进程也在运行x.bin,于是去查找A的进程空间里面有没有B缺少的页面,结果找到了,于是直接将这一页映射到B的页表 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照