Linux 中的内存管理——如何管理 Linux 内存

在本文中,我们将介绍 Linux 中内存管理的基本命令。 内存管理是一个很大的话题,在一篇博文中涵盖它是不公平的。 在本教程中,我们将主要介绍可用于观察内存统计信息的命令。

Linux 中的物理内存与虚拟内存

在我们进入细节之前,重要的是要知道 Linux 中有两种类型的内存。

  • 物理内存
  • 虚拟内存

物理内存 是机器中存在的实际内存。 尽管 虚拟内存 是一层内存地址映射到物理地址。

虚拟内存通常比物理内存大。

Linux 内核使用虚拟内存来允许程序进行内存预留。

在执行程序时,处理器从虚拟内存中读取指令。 但是,在执行指令之前,它会将虚拟地址转换为物理地址。 页表中存在的映射信息用于此作业。

Linux 中的内存管理命令

让我们回顾一下 Linux 中管理内存的一些命令。

1. /proc/meminfo

/proc/meminfo 文件包含与内存相关的所有信息。 要查看此文件,请使用 cat 命令:

$ cat /proc/meminfo 

该命令输出了很多与内存相关的参数。 要从 proc/meminfo 文件中获取物理内存,请使用:

$ grep MemTotal /proc/meminfo 

要从 /proc/meminfo 文件中获取虚拟内存,请使用:

$ grep VmallocTotal /proc/meminfo 
VmallocTotal

2.top命令

top 命令可让您监控 Linux 上的进程和系统资源使用情况。 它提供了系统的动态实时视图。 当您运行该命令时,您会注意到输出中的值不断变化。 这是因为它实时显示值。

$ top  
最佳

上半部分显示您系统资源的当前使用情况统计信息。 下部包含有关正在运行的进程的信息。 您可以使用 向上/向下箭头键 并使用 q 退出.

3.自由命令

free 命令显示系统中空闲和已用内存的数量。 这是一个简单而紧凑的命令。 它会告诉您诸如系统上有多少可用 RAM 之类的信息。 它还告诉您系统上的物理和交换内存总量。

$ free 
自由

每个字段的值在 千比字节 (KiB). Kibibyte 与 Kilobyte 不同。 要以更易读的格式获取输出,请使用:

$ free -h 
免费 0h

要了解有关 free 命令的更多信息,请参阅我们详细讨论 free 命令的教程。

4. vmstat 命令

vmstat 是 Linux 中的一个性能监控工具。 它提供了有关进程、内存、块 IO、分页、磁盘和 CPU 调度的有用信息。 它报告系统的虚拟内存统计信息。

$ vmstat  
虚拟机

要了解有关 Linux 中 vmstat 命令的更多信息,请参阅有关 vmstat 的教程。

结论

这些是您可以在 Linux 中用于管理内存的一些命令。 这些命令提供有关您的记忆的关键见解。 您可以按照各个教程操作所有命令,以大致了解如何操作任务管理器中的进程。