如果我让 cygwin shell(通常是 putty-cyg,但 xterm 或普通的 Cygwin bash shell 也一样)运行一段时间,我往往会发现经过一段时间后,它运行得非常非常慢。我假设这是与另一个进程的某种交互,但我无法确定哪个进程导致了问题。
根据任务管理器显示,“系统空闲进程”占用了大约 94%,因此实际上几乎没有什么在做。但是,当它快速运行的时候,我得到了:
$ time ls
_viminfo test.txt
real 0m0.026s
user 0m0.030s
sys 0m0.015s
当它缓慢地进行时我得到:
$ time ls
_viminfo test.txt
real 0m25.989s
user 0m0.030s
sys 0m0.061s
这使得 cygwin 几乎无法使用!有人能建议我如何确定导致 cygwin 运行如此缓慢的原因吗?
如果相关的话,我正在使用 Windows XP。
答案1
Process Monitor 显示,每当 Cygwin 执行某项操作时,它都会尝试打开 PATH 变量中的每个目录。路径上的网络驱动器上有几个目录,而我此时不在网络上。似乎这个问题在过去网络中断时发生过。从路径中删除网络驱动器似乎已经解决了这个问题。