答案1
我总是习惯将顶部输出中的“g”解释为千兆字节大小,尽管惯例是使用大写的“G”,但现在我改变了主意。
这是 GB 级的数据。procps-ng 开发人员希望用户在编译时选择大写或小写。真的。
当我监控我的系统内存使用情况时,我发现 Chrome 在 VIRT 列下使用了高达 1132.9g 的内存 - 对于我电脑中的资源来说,这是一个不可能的内存量。
虚拟仿真测试系统没有关系使用您计算机中的资源。(因此得名“虚拟”)。它代表虚拟内存地址空间,以及虚拟地址空间的每个区域可能由实际的 RAM 支持,但也可能由其他东西支持——例如内存映射文件或者什么都没有(“新鲜的” RAM 支持的匿名映射并不是全部预先保留的;它只有在变脏时才会开始消耗 RAM)。
对于 Web 浏览器,尤其是 Chrome,可能会使用大量空映射来强化 JavaScript,类似于 WebKit 的千兆网箱哪个Chrome 还实现了只要映射基本保持不变,它基本上也不会占用任何 RAM – 除了页表条目的几 kB 或 MB。(VSCode 在这里算作“网络浏览器”,因为它的 Electron 运行时实际上是 Chrome,甚至“ng serve” – 即 Node.js – 使用与 Chrome 相同的 JavaScript“V8”引擎。)最后,对于 GNOME Shell 进程,我怀疑它与 GPU VRAM 访问有关,尽管我不太确定。
tl;dr 您看错了列。仅仅因为它碰巧以兆字节计算并不意味着它是系统内存使用量。