问题标签 [free-command]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - 如何在 linux 中协调“top”和“free -m”的内存使用报告?
从free -m我可以看到机器上使用了 377MB 的内存和 1649MB 的空闲空间(其中 1567 被 ubuntu 缓存)。实际输出见下图:
但是,当我查看top的输出时,我可以在 RES 列中看到使用 1GB 和 273MB 的进程。RES 表示驻留在顶层手册页中的非交换物理内存中。
我知道其中一些是由其他进程(共享对象等)共享的。但是,如果有 1GB 的内存被其他进程共享,那么肯定至少必须使用这么多吗?
free如何报告已使用的 377MB 内存,当我查看顶部时,我看到进程使用 1GB 和更多 RES 内存?
linux - 什么相当于 Linux 在 FreeBSD v8.1 上的“免费”命令
什么相当于 Linux 在 FreeBSD v8.1 上的“免费”命令?
我从我的应用程序中调用“免费”并在我的应用程序的日志文件中报告结果。移植到 FreeBSD v8.1 时会替换什么?
这是在 Linux 上运行“免费”的示例:
memory - 从免费命令中理解“缓冲区”和“缓存”
之前已经问过这个问题,但不想再次更新同一个线程,因为它是一个旧线程。
想在free
命令输出中的“缓冲区”和“缓存”列中澄清自己。
这是我的理解...
缓冲区是数据存在于内存中但尚未刷新到磁盘的地方。数据将由bdflush
守护进程定期刷新到磁盘,或者我们可以通过运行sync
命令手动完成。
另一方面,缓存是加载到内存中但保留在内存中的程序/数据,因此如果再次需要,它将很快可用。
为了理解缓冲区的概念,我尝试了以下实验......
这是free
我桌面上的命令阅读
在这里我看不到执行sync
命令后缓冲区减少了。
接下来我尝试了以下...尝试将一个巨大的文件写入磁盘。
正如预期的那样,缓存的值应该会增加,并且 free 正在确认这一点..
我再次执行了sync
命令,然后使用free
. 我可以看到缓冲区值从free
command 的输出中减少了。缓存没有减少。这意味着我执行dd
coomand 后 RAM 中的脏页已刷新到磁盘。
然后我更新了drop_cache
内核参数,以便删除缓存 vlaue
free
现在确认缓冲区和缓存值都已删除。
因此,我最初的声明“缓冲区”是尚未刷新到磁盘的 RAM 数据看起来是正确的。
请指导我是否朝着正确的方向前进。
linux - bash free 命令停止工作
我正在尝试执行以下操作:
获取 的输出free -mo
,取第二行并每 30 秒将其记录到文件中。
当我跑
它每 30 秒运行一次并显示输出。
但是当我跑步时
它只运行一次。我无法弄清楚出了什么问题。
free Manual 说 free -s 30 每 30 秒运行一次命令。
linux - Linux自由命令含义
我有一些关于 linux 的研究要做。问题之一如下:
'在运行的系统上,free 列中命令 free 的输出是否可能与前 2 行相同?你怎么能强迫这个?
我搜索了一下,我相信我已经找到了这些值的含义。如果我将缓冲区和缓存一起添加,并将其添加到 free 中,它会为我提供缓冲区和缓存的 free 值。这意味着,如果需要,应用程序可以使用的内存。
所以,我想这 2 行的值可能是相同的,这取决于使用情况。但是,我不知道我怎么能
linux - “free”显示的Linux交换量与“smem”不同
我正在尝试分析交换量的来源,并查看 smem 显示,我得到了完全不同的交换量使用量。
免费显示以下内容:
和 smem 显示:
为什么free给我显示“2.4G”而smem只给我显示679M?其中之一是显示一些错误的结果。
我需要找出剩余的1.8G在哪里,或者证明free显示错误的结果。
最后但同样重要的是,内核是 2.6.18。
linux - Linux free 显示高内存使用率,但 top 没有
在 RedHat Linux 6.2 我正在运行free -m
它显示几乎所有8GB
使用
但与此同时,top -M
我看不到任何使用所有这些内存的进程:
我也试过这个ps mem 脚本,但它只显示正在使用大约 400MB 内存。
bash - 如何使用awk从空闲中提取剩余内存?
我需要从输出中提取可用内存free
,我想我会使用 awk 并想出类似free | awk '{print $4}'
. 这给了我这样的输出:
请注意,共享的标题不是这些数字的标题,数字来自免费(/usr/bin/free
第一列没有标题,因此免费数字出现在第 4 列,报告的标题来自第 5 列)。但是,有了这个,我如何只返回第二行?我暂时对其余的不感兴趣。
linux - Linux 中的可用内存?
当我在计算机上运行 free 命令时,我看到以下输出:
无论我使用多少内存,free
第一行中的列始终保持在 70 MB 左右,并且不会低于(我通过将大文件加载到内存中来尝试此操作,显然cached
如此之高)
我的理解是 Linux 总是为 root 用户保留一些内存。这就是为什么免费永远不会低于 70 MB 的原因吗?
编辑:如果是这种情况,那么加载与 root 用户相同的文件应该会占用所有可用内存。不幸的是,我也无法做到这一点。
linux - 为什么当我运行一个不断分配内存的进程时,Linux Free 命令没有显示更少的可用内存
我编写了一个 C 程序,在其中我使用 malloc 连续分配内存(1 MB 大小)。我不释放这个内存。当这个程序运行时,我调用了 linux free 命令并期望,使用的内存应该逐渐增加,而内存空闲应该减少。但这并不期望。Free 命令输出几乎保持不变。知道为什么使用 malloc 分配的内存没有显示在 Memory used 中吗?