我的电脑有 8 Gb 的内存。有没有办法让ubuntu使用大部分?我的意思是很少丢弃缓存并在内存中保留一次打开的程序更长时间,在启动时预加载应用程序等。
您可以使用以下命令为某些目录制作虚拟磁盘tmpfs
例如~/.cache/,对于谷歌浏览器和铬用于缓存数据的目录,条目/etc/fstab将是:
tmpfs /home/your_username/.cache tmpfs defaults,size=1024M 0 0
Run Code Online (Sandbox Code Playgroud)
但是,应该注意的是,每次重新启动时内容都会丢失。
另一个合适的目录可能是/tmp. 请注意,您可以以绝对或相对(相对于您的 RAM)值指定 tmpfs 的大小:
使用 1G 内存:
tmpfs /tmp tmpfs nosuid,size=1G 0 0
Run Code Online (Sandbox Code Playgroud)
或者,使用 10% 的可用 RAM:
tmpfs /tmp tmpfs nosuid,size=10% 0 0
Run Code Online (Sandbox Code Playgroud)
预加载应该足够简单——因为 Linux 尽可能多地缓存/缓冲区,只需将您想要“预加载”的库/二进制文件放入 /dev/null 即可——这应该会预热缓存。在启动时启动如下脚本:
#/bin/bash
PROGS=("/usr/bin/jiha" "/usr/bin/doho")
for i in "${PROGS[@]}"; do
cat $i > /dev/null
for j in $(ldd "$i"); do # this does not work -- need to filter ldd output (awk)
cat $j > /dev/null
done
done
Run Code Online (Sandbox Code Playgroud)
一次又一次地搜索某些库会浪费大量时间,仅预加载所需的库一次会稍微复杂一些 - 但影响取决于 PROGS 数组的长度。
其余的(很少删除缓存,...)默认情况下几乎由系统处理 - 它只使用它可以使用的东西,并且仅在需要时才放开它。
华泰
| 归档时间: |
|
| 查看次数: |
3734 次 |
| 最近记录: |