交换空间/按需换页内存到底是什么?


分页机制的首要作用是保护内核、隔离进程。其次才是以较小的内存运行远超内存大小的程序。你问的交换空间、按需调入均属于后者,这两项功能对内核来说不是必须的,所以你应该先把前者搞懂。

其实我觉得这么说还是有点本末倒置,因为分页是需要硬体支持的,换而言之分页是某些CPU的一大卖点!你说制造商为啥要设计这样一个功能还加价?为啥写操作系统的人喜欢这种CPU?想明白这个问题就可以了。

PS:

1.INTEL 80386 PROGRAMMERS REFERENCE MANUAL 1986, Computer Systems: A Programmers Perspective 都是不错的读物。2.别被操作系统教材误导了,它们所讲的分段机制几乎没用,建议直接忽略。

3.造CPU和写kernel是密不可分的,历史包袱很多。


建议好好读一下《深入Linux内核架构》中 物理内存管理那一章
建议再好好读一下赵炯博士的《Linux内核完全剖析》中关于内存的部分
建议好好读一下《深入理解计算机系统》中虚拟内存管理的一章
建议好好读一下《英特尔? 64 和 IA-32 架构软体开发人员手册》中内存管理部分。


CSAPP中的虚存管理;Intel? 64 and IA-32 Architectures Software Developer』s Manual Volume 3 ,传送门:http://www.intel.cn/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-system-programming-manual-325384.pdf
建议好好读一下《现代操作系统》中 存储管理 的一章
建议好好读系列
建议好好读一下《Professional ft Sql server internals and troubleshooting》中sqlserver内存的管理一章,楼下拍好队…


推荐阅读:
相关文章