我有完后还有关于问题“我的 Linux 内存在哪里”
问题是:我可以使用缓存来存储应用程序数据吗?
我的笔记本电脑有 1GB 内存。工作一段时间后的情况是:浏览器占用 400MB,其他所有应用程序占用 300MB(系统监视器中快速汇总)。系统监视器显示我使用了 90% 的内存,并且交换空间中已经有 200MB。当我开始新操作时(例如在浏览器中打开新选项卡或打开新的 Nautilus 窗口),笔记本电脑的速度变慢了。可能将内存放在交换区
因此应该使用了 1200MB(RAM+交换空间),但我看到的所有应用程序只使用了 600MB。其他 600MB 在哪里?在这 600MB 中,有 400MB 是实际 RAM。
我没有进行复制或者任何其他大规模 IO 活动。
我读到过 Linux 巧妙地利用了缓冲区和缓存中的所有内存。因此,内核(缓存)使用了 300MB。如果我不想镜像磁盘,而是想将内存用于应用程序数据(例如新的浏览器选项卡),该怎么办?我不需要 200MB 的镜像磁盘数据,因为我(例如)不会在数据分区上打开我刚刚看到的相同的照片。
我可以使用吗全部内存中是否存放应用程序数据?(包括浏览器、桌面、xorg、其他服务)。如何?
答案1
应用程序会自行使用 RAM;您无需执行任何操作。应用程序未使用的 RAM 用于缓存最近访问的文件,以便在再次需要时加快速度,因此两者之间的 RAM 使用率通常接近 100%。当应用程序请求更多 RAM 时,缓存会放弃它。
答案2
尝试将交换度设置为 100,这样可以提高机器的性能,并通过更密集地使用交换来避免死机,仅保留内存中活动的内容。
请看这里如何操作: https://help.ubuntu.com/community/SwapFaq#What%20is%20swappiness%20and%20how%20do%20I%20change%20it?