我正在开发一个内存有限的嵌入式系统。这是我的 vmstat 的转储:
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 2392 64392 46568 0 0 0 3 53 22 27 9 64 0 0
在这种情况下,当我运行 tcpdump 时,整个系统崩溃,OOM 终止程序也变得疯狂。考虑到缓存中仍有大量内存,这可能是什么原因造成的?tcpdump 做了什么,占用了这么多内存?为什么内核会让这种情况发生?