![Ubuntu 10.04 占用超过 500MB 内存](https://linux22.com/image/1077043/Ubuntu%2010.04%20%E5%8D%A0%E7%94%A8%E8%B6%85%E8%BF%87%20500MB%20%E5%86%85%E5%AD%98.png)
安装后系统监视器显示内存使用量超过500 MB - 启动后为纯净系统。
没有进程使用超过 20 MB 的内存。Ubuntu 的其他版本使用了大约 200 MB。我使用的是 64 位版本。Intel i7,16 GB 内存。
发生了什么事?哪些进程正在消耗我的内存?
答案1
top
在命令行中输入。
然后看看这两行:
Mem: 8092444k total, 7647620k used, 444824k free, 550248k buffers
Swap: 8388604k total, 107804k used, 8280800k free, 3228520k cached
- 缓冲区是用于文件系统元信息(如目录)的内存量
- Cached 是用作文件磁盘缓存的内存量
这两个池会自动增大/缩小,具体取决于实际进程所需的内存量。当您有大量内存且进程占用的内存很少时,最好将 RAM 用作磁盘缓存,因为它可以提高系统响应能力。您的机器不必每次都一遍又一遍地读取磁盘。在大多数机器上(取决于 RAM 大小),一段时间后,几乎所有内存都会被使用,要么用于进程,要么用作磁盘缓存。
- 使用(第一行)是进程内存 + 缓冲区 + 缓存
- Free(第一行)是随时可用的 RAM
- Swap 是交换空间的大小
- 已使用(第二行)是正在使用的交换空间量
- Free(第二行)是可用的交换空间
交换空间是虚拟内存,是磁盘上的内存,而不是 RAM。拥有它非常有价值,但速度很慢。内核提供了很多智能来决定是否换出(未使用的)进程内存或放弃一些磁盘缓存。