Linux 进程退出后仍在使用的内存

Linux 进程退出后仍在使用的内存,linux,admin,administration,Linux,Admin,Administration,我有一个奇怪的问题,我在一个1GB内存的服务器上,我只运行一个轻量级的应用程序,过了一段时间它的内存使用量增加了(可能是内存泄漏,我还没有发现),但这是另一个故事,问题是,当它使用了太多内存时,我退出进程,令我惊讶的是,内存使用率仍然很高,这怎么可能呢?内存不是缓存的,它是正在使用的“原始”内存,但htop似乎也不知道哪个进程正在使用它。。。 在这里,我附加的图像,以便您可以看到它,它是按内存使用率降序排序。 如果使用最多内存的进程使用1.8%的内存,我不明白内存使用率是如何达到751MB的。

我有一个奇怪的问题,我在一个1GB内存的服务器上,我只运行一个轻量级的应用程序,过了一段时间它的内存使用量增加了(可能是内存泄漏,我还没有发现),但这是另一个故事,问题是,当它使用了太多内存时,我退出进程,令我惊讶的是,内存使用率仍然很高,这怎么可能呢?内存不是缓存的,它是正在使用的“原始”内存,但htop似乎也不知道哪个进程正在使用它。。。
在这里,我附加的图像,以便您可以看到它,它是按内存使用率降序排序。 如果使用最多内存的进程使用1.8%的内存,我不明白内存使用率是如何达到751MB的。
我读过一些解决方案,例如禁用交换,但如图所示,交换被禁用

更新1 我在此附上meminfo:

MemTotal:        1004852 kB
MemFree:          108456 kB
MemAvailable:      97392 kB
Buffers:            2768 kB
Cached:            31868 kB
SwapCached:            0 kB
Active:           503268 kB
Inactive:          15100 kB
Active(anon):     491920 kB
Inactive(anon):     2852 kB
Active(file):      11348 kB
Inactive(file):    12248 kB
Unevictable:       18516 kB
Mlocked:           18516 kB
SwapTotal:             0 kB
SwapFree:              0 kB
Dirty:                20 kB
Writeback:             0 kB
AnonPages:        502288 kB
Mapped:            28200 kB
Shmem:              2856 kB
KReclaimable:      96860 kB
Slab:             308536 kB
SReclaimable:      96860 kB
SUnreclaim:       211676 kB
KernelStack:        5676 kB
PageTables:        11836 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:      502424 kB
Committed_AS:     808208 kB
VmallocTotal:   34359738367 kB
VmallocUsed:       12656 kB
VmallocChunk:          0 kB
Percpu:             1772 kB
HardwareCorrupted:     0 kB
AnonHugePages:         0 kB
ShmemHugePages:        0 kB
ShmemPmdMapped:        0 kB
FileHugePages:         0 kB
FilePmdMapped:         0 kB
CmaTotal:              0 kB
CmaFree:               0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
Hugetlb:               0 kB
DirectMap4k:      501740 kB
DirectMap2M:      546816 kB
有一个有趣的解决方案,关于释放上的缓存内存,但在这里它不起作用,问题不是缓存内存

更新2
我认识的人告诉我,有这么多sshd进程是很奇怪的,我试着杀掉所有这些进程root@nottysshd过程和它的工作。问题解决了,我把这个问题留在这里,希望它能对其他人有用。

我认识的人告诉我有这么多sshd进程很奇怪,我试着把它们都杀掉root@nottysshd过程和它的工作。问题解决了,我把这个问题留在这里,希望对其他人有用。 为了简化流程,我使用了以下Golang代码:


进口(
“github.com/shirou/gopsutil/v3/process”
“fmt”
“字符串”
)
func main(){
进程,错误:=进程。进程()
如果错误!=零{
恐慌(错误)
}
sshCount:=0
对于i:=0;i
可能是内核线程。设置htop以显示它们。您可以在此处了解如何: