如果我要向我的一些同事解释虚拟内存,我画的这张图有多正确?
网上有数百篇解释虚拟内存的文档,但我还没有找到虚拟内存的良好单句定义。有一些人说,“虚拟内存是物理内存+ RAM”。虽然当我们以一种方式看待它时确实如此,但我相信这更多的是对“机器中虚拟内存的最小大小是多少?”这个问题的回答。这张图片是我从阅读的各种文档中理解的内容的总结。如果我将虚拟内存解释为:
虚拟内存是机器上运行的应用程序/程序看到并与之交互的内存。它充当实际内存和机器上运行的应用程序之间的接口。无论应用程序正在访问驻留在 RAM 中的内存位置还是 SWAP 中的位置,对于应用程序来说都是透明的,并且由该接口处理。
换句话说,就运行您的机器的各种应用程序或程序而言,没有物理内存或交换区。对于应用程序来说,这都是一块内存,那就是虚拟内存。我有多正确?我只是想确保我正确理解了这个概念,并且我不会向同事传递错误的信息。