我有一种普遍的“感觉”,即应用程序在 Windows 上的打开速度比在 Linux 上的速度快。我知道这太模糊/不科学,但是如果我要比较应用程序的加载时间,例如 Windows 和 Linux 上的 VLC,我会怎么做?此外,我想研究 Windows 和 Linux 用于二进制文件的加载机制的差异,因此非常感谢任何参考。
问问题
361 次
2 回答
2
Linux 加载程序可以为您提供有关绑定过程的大量信息。
LD_DEBUG=help ls
有关更多详细信息,请参见ld.so(8)
手册页。
于 2011-05-12T19:33:45.450 回答
0
要真正测量这一点,您需要能够在测量之前刷新每个操作系统上的文件缓存。
Windows 所做的一件事是在启动后立即开始将常用 DLL 和应用程序列表加载到文件缓存中。这称为 SuperFetch 并且效果很好。
Linux 发行版有时有一个类似的列表,该列表由名为 readahead 的程序预加载到文件缓存中。Linux 发行版的问题在于,这个列表在安装时是固定的,不会自动更新,所以它通常只包括默认用户桌面、Web 浏览器、电子邮件应用程序等程序。
要在 Linux 上刷新文件缓存,请以 root 身份执行以下命令:
echo 3 > /proc/sys/vm/drop_caches
在 Windows 上刷新文件缓存?我不知道,我需要看看。
于 2011-05-12T19:51:09.577 回答