我了解到,代码解释比执行编译代码要慢得多。但是shell脚本总是被解释。许多* nix软件都使用shell脚本。所以不会导致性能下降?
解决这个问题有什么新进展吗?就像许多新语言后面的字节码格式一样?
答案 0 :(得分:2)
典型的shell脚本比解释脚本代码花费更多时间来运行其他程序。如果需要性能,那些程序是用编译语言编写的。例如,grep
是用C语言编写的。
答案 1 :(得分:0)
shell脚本通常会唤起各种语言编写的各种二进制程序。 在循环和树中调用这些外部程序的脚本经历了大量的fork(),这会产生很多上下文切换,从而减慢了所有的内容。
一种可以弥补这一点的方法是让你的shell脚本通过ssh利用多个cpu和多台机器