答案1
稍微阅读一下以更好地理解每一列,因为它不仅涉及磁盘或内存,还涉及共享库:
VIRT 代表进程的虚拟大小,它是它实际使用的内存、它映射到自身的内存(例如 X 服务器的显卡 RAM)、磁盘上已映射到它的文件的总和(最值得注意的是共享库),以及与其他进程共享的内存。 VIRT 表示程序当前能够访问多少内存。
RES 代表驻留大小,它准确表示进程实际消耗了多少物理内存。 (这也直接对应于 %MEM 列。)这实际上总是小于 VIRT 大小,因为大多数程序都依赖于 C 库。
SHR 指示有多少 VIRT 大小实际上是可共享的(内存或库)。就图书馆而言,这并不一定意味着整个图书馆都是常驻的。例如,如果程序仅使用库中的几个函数,则整个库都会被映射并计入 VIRT 和 SHR,但实际上只有库文件中包含正在使用的函数的部分才会被加载并计入其中根据RES。
我认为你对进化(数据库工作)有疑问,但我无法验证,因为我不使用进化,抱歉