如何解释Linux中预加载程序写入的状态和日志文件?

cbu*_*bun 8 linux linux-mint ubuntu-12.04

Preload 是一种从磁盘中预取各种应用程序所需的文件以减少应用程序启动时间的程序。它似乎非常流行和有用(只是 google preload+linux),但文档或手册页似乎有点稀疏。

我试图了解预加载写入的日志 ( /var/log/preload.log) 和状态 ( /var/lib/preload/preload.state) 文件中保存的各种值的含义,以便我可以微调要预加载或以其他方式加载的目录。我在下面附上我电脑上的一小部分文件。

那么,不同列中的值是什么?日志文件中的一行还说0kb available for preloading, using 0kb of it- 这是什么意思?

/var/log/preload.log

[Fri Jan 10 17:35:13 2014] state scanning begin
[Fri Jan 10 17:35:13 2014] state log dump requested
persistent state stats:
preload time = 11173110
num exes = 215
num bad exes = 0
num maps = 8554
runtime state stats:
num running exes = 72
[Fri Jan 10 17:35:13 2014] state log dump done
[Fri Jan 10 17:35:13 2014] state scanning end
[Fri Jan 10 17:35:13 2014] state predicting begin
ln(prob(~EXE)) =        -0.0009796222   /usr/NX/bin/nxnode
ln(prob(~EXE)) =        -0.0003984986   /usr/bin/Xvnc4
ln(prob(~EXE)) =        -0.0000742425   /usr/lib/gimp/2.0/plug-ins/file-ps
ln(prob(~EXE)) =        -0.0003784312   /usr/bin/mate-control-center
ln(prob(~EXE)) =        -0.0002042447   /usr/bin/mate-session-properties
ln(prob(~EXE)) =        -0.0024875406   /usr/bin/wine64-preloader
ln(prob(~EXE)) =        -0.0015284860   /usr/lib/apt/methods/bzip2
ln(prob(~EXE)) =        -0.0015595207   /usr/bin/pluma
ln(prob(~EXE)) =        -0.0103913330   /usr/bin/gnome-screensaver
[Fri Jan 10 17:35:13 2014] 0kb available for preloading, using 0kb of it
[Fri Jan 10 17:35:13 2014] nothing to readahead
[Fri Jan 10 17:35:13 2014] state predicting end
[Fri Jan 10 17:36:28 2014] state updating begin
[Fri Jan 10 17:36:28 2014] state updating end
Run Code Online (Sandbox Code Playgroud)

/var/lib/preload/preload.state

PRELOAD 0.6.4   11173710
MAP     1       10      217088  2093056 -1      file:///usr/lib/gstreamer-0.10/libgstffmpeg.so
MAP     2       351450  536576  2097152 -1      file:///usr/lib/libreoffice/program/libxstor.so
MAP     3       7335780 0       16384   -1      file:///usr/lib/totem/plugins/screensaver/libscreensaver.so
MAP     4       10      352256  8192    -1      file:///usr/lib/libnm-util.so.2.3.0
MAP     9       8786090 274432  4096    -1      file:///usr/lib/i386-linux-gnu/libibus-1.0.so.0.401.0
MAP     6       7335780 12288   4096    -1      file:///usr/lib/totem/plugins/screensaver/libscreensaver.so
MAP     7       8786090 0       24576   -1      file:///usr/lib/i386-linux-gnu/libjson.so.0.0.1
MAP     8       8786090 20480   4096    -1      file:///usr/lib/i386-linux-gnu/libjson.so.0.0.1
MAP     5       8786090 0       278528  -1      file:///usr/lib/i386-linux-gnu/libibus-1.0.so.0.401.0
Run Code Online (Sandbox Code Playgroud)

PS:请原谅缺乏参考/链接。我试图用更多的参考和很少的图片来写一个更好的问题,但我没有足够的声誉来发布它们。

小智 0

如果不深入研究源代码,您可能不会在这里得到好的答案。Preload 自 2009 年以来就没有更新过(最初是 2005 年的 Google Summer of Code 项目)。

\n

从 2009 年的一篇博客文章中我发现该博客作者的观点是:

\n
\n

然而,预加载的美妙之处在于您可以完全忽略\n这些文件;您可能想每隔一段时间检查一下日志,只是为了确保它\xe2\x80\x99 正在运行,但 Preload\n 会很高兴地坐在后台,不妨碍您。

\n
\n

我的想法是你应该放过这个...\n另请参阅...

\n