Warum zeigt For-Schleife in Linux eine geringe Leistung als in Solaris?
Ich habe ein Shell-Skript, das sowohl unter Linux als auch unter Sun Solaris ausgeführt wird. Es gibt jedoch einen erheblichen Zeitunterschied, den das Skript zur Ausführung benötigt.
Beim Debuggen des Skripts auf beiden Servern mit 'set -x' habe ich festgestellt, dass eine for-Schleife, die die Ausgabe einer 'awk'-Anweisung entnimmt, unter Linux viel mehr Zeit benötigt als unter Solaris. Nachdem ich die Debug-Option eingestellt habe, kann ich die zeilenweise Ausführung von Skripten beobachten, und ich beobachte, dass die Leistung unter Linux viel langsamer ist, obwohl auf beiden Servern derselbe Satz von Zeilen ausgeführt wird.
Folgendes ist der Teil des Skripts, der Zeit braucht:
for k in `awk ' ' StartAppTemp`
Ich habe auch die Zeit berechnet, die die for-Schleife mit dem folgenden Befehl benötigt:
time `for k in `awk ' ' StartAppTemp``
O / P unter Linux:
real 0m0.002s user 0m0.000s sys 0m0.003s
O / p unter Solaris
real 0m0.00s user 0m0.00s sys 0m0.00s
Hier ist die Genauigkeit nur 2 Stellen nach dem Dezimalpunkt.
Komplettes Skript:
for k in `awk ' ' StartAppTemp`;do ps -p $k >/dev/null; if test $? -eq 0 ; then echo "running"; else echo "Stopped"; fi; done;
Gibt es eine Möglichkeit, die Leistung unter Linux zu verbessern?
0 Antworten auf die Frage
Verwandte Probleme
-
9
Was ist der Unterschied zwischen den Befehlen "su -s" und "sudo -s"?
-
4
Gutes freies Ubuntu Server-VMWare-Image benötigt
-
4
Was sind die Unterschiede zwischen den großen Linux-Distributionen? Werde ich es merken
-
2
Begrenzung der CPU-Auslastung für Flash in Firefox?
-
2
Wie kann ich mein Mikrofon unter Debian GNOME zum Laufen bringen?
-
2
Conky-Setups - Beispiele / Ideen?
-
3
Was sind die Unterschiede zwischen Linux Window Managern?
-
2
ThunderBird / Lichtsynchronisation mit SE k770i
-
4
Linux-Dateisystem
-
6
Vollbild-Flash langsam in KDE 4