top 和 htop 的内存差异

top 和 htop 的内存差异

我买了一个新的 VPS 作为数据库服务器。我只安装了 mysql 并启动了。过了一段时间(甚至在关闭 mysql 服务之后),我在 htop 中只看到 %3-4 的内存使用情况,但根据 top,我只有 30MB 的可用内存。它总共有 4GB 的 RAM。我不知道该相信哪一个。有人能给我解释一下 top 和 htop 内存使用情况的区别,以及是什么原因导致 top 统计信息中的使用率很高吗?

谢谢。

答案1

区别仅在于你是否认为包含可丢弃数据的内存是已使用的。内存被使用是指它包含可能有用的信息。但它是免费的,是指如果需要内存,可以简单地丢弃信息。

例如,假设您运行一个程序。保存程序本身的可执行文件仍在内存中。但当时不需要这些数据。但是,如果程序再次运行,则可以从内存中使用信息,因此不必再次从磁盘加载。但如果该内存用于其他目的,则可以丢弃文件数据,因为它在磁盘上。这应该被视为空闲内存吗?

之所以使用如此多的内存,是因为空闲内存是浪费的内存。只有正在使用的内存才能提高性能。操作系统会尽量减少空闲内存,只留出足够处理特殊情况的内存,例如从网络接收到的突发数据。这并不意味着如果你今天只使用了 3GB,明天就可以使用 5GB。如果你今天只使用了 3GB,你就浪费了 1GB。

相关内容