我们正在通过 Cygwin 脚本运行 Windows .EXE 文件时遇到性能问题。我看到了有关 Cygwin 性能问题的各种帖子,包括这个,其中一个答案深入了解了 Cygwin 的内部情况,让我认为可能存在问题。然而,这些帖子似乎更多地涉及启动时间、选项完成等问题。在我们开始进行基准测试之前,我想问一下:从 Cygwin vs.BAT 启动 Windows .EXE,是否存在任何固有原因导致运行速度变慢?
不是实际的程序。在运行程序之前的清理和设置可能会有所不同。Cmd 可能直接调用 CreateProcess。Cygwin 的 bash 可能首先进行参数解析、通配符扩展,通过 Cygwin 的慢实现进行 fork 并使用解析出的参数调用 exec,然后 Cygwin 必须将其重新组合成一个字符串再传递给 CreateProcess。但最终,将创建一个新进程,该进程与其父进程没有任何关系。因此,您的程序运行速度完全取决于程序本身,而不取决于启动它的人。