Memory management linux系统中的内核动态内存是什么?如何释放它

Memory management linux系统中的内核动态内存是什么?如何释放它,memory-management,memory-leaks,linux-kernel,shared-memory,Memory Management,Memory Leaks,Linux Kernel,Shared Memory,这个问题与 以及 什么是内核动态内存?现在我的工作站上几乎没有进程在运行 $ ps aux --sort -rss | head USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 987 0.0 0.0 54284 15932 ? Ss Feb09 0:03 /lib/systemd/systemd-journald imoline+ 4973

这个问题与 以及

什么是内核动态内存?现在我的工作站上几乎没有进程在运行

$ ps aux --sort -rss | head
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root        987  0.0  0.0  54284 15932 ?        Ss   Feb09   0:03 /lib/systemd/systemd-journald
imoline+  49734  0.0  0.0  24640  8672 pts/0    Ss+  Feb13   0:05 /bin/bash
rstudio+   4803  0.0  0.0 128608  7400 ?        Ssl  Feb09   0:39 /usr/lib/rstudio-server/bin/rserver
imoline+  53699  0.0  0.0  23356  7224 pts/2    Ss   Feb13   0:04 /bin/bash
imoline+  68563  0.0  0.0  23200  6876 pts/1    Ss   10:37   0:00 -bash
root          1  0.0  0.0 204660  6804 ?        Ss   Feb09   0:05 /sbin/init
root      68556  0.0  0.0  99308  6800 ?        Ss   10:37   0:00 sshd: imolineris [priv]
root       4770  0.0  0.0  69944  6484 ?        Ss   Feb09   0:00 /usr/sbin/sshd -D
但我仍然有空闲的记忆

和smem


我是否可以在不重新启动的情况下强制释放它?

由于您没有响应,我将在不涉及Linux细节的情况下进行一般意义上的释放

大多数操作系统需要为自己的目的分配动态内存。该内存位于虚拟地址空间的系统空间区域。因此,当所有进程在内核模式下执行时,它们都可以访问内核动态内存。在某些系统上,这种动态内存进一步细分为分页和非分页

请注意区别:

内核动态内存54.68%1.25%53.43%

用户空间内存0.06%0.03%0.03%

想想操作系统必须维护的所有数据结构,例如进程状态定义、页表以及I/O缓冲区


是的,可能存在内核内存泄漏。将内存分配给内核并不一定意味着存在泄漏。

尝试运行以下命令以查看是否释放内存:1]sync;echo 1>/proc/sys/vm/drop\u缓存2]同步;echo 2>/proc/sys/vm/drop\u缓存3]同步;echo 3>/proc/sys/vm/drop_caches@PrabhakarLadecho 2>/proc/sys/vm/drop\u缓存完成了这一任务。但是如果某个进程需要RAM,我应该期望这个缓存会自动释放?在我看来,这并没有发生,系统开始交换。当应用程序开始消耗RAM,并且达到内核释放内存的阈值时,您有大量的RAM,并且没有耗尽内存。
$ free -g
              total        used        free      shared  buff/cache   available
Mem:            125          67          56           0           1          57
Swap:           119           0         119
$ sudo smem -t -w -p 
Area                           Used      Cache   Noncache 
firmware/hardware             0.00%      0.00%      0.00% 
kernel image                  0.00%      0.00%      0.00% 
kernel dynamic memory        54.68%      1.25%     53.43% 
userspace memory              0.06%      0.03%      0.03% 
free memory                  45.26%     45.26%      0.00% 
----------------------------------------------------------
                            100.00%     46.54%     53.46%