Warum wird manchmal ein Programm, das ich im Terminal ausführe, nicht im Terminal ausgeführt?

Aug 15 2020

Angenommen, ich habe zwei Anwendungen namens Firefox und Arduino. Zuerst habe ich firefoxin das Terminal getippt und kann das Terminal weiterhin wie gewohnt verwenden. Aber als ich tippte arduino, konnte ich das Terminal nicht mehr verwenden und musste es als Hintergrundprozess setzen. Also, was ist der Unterschied zwischen ihnen?

Antworten

1 VigneshSP Aug 15 2020 at 15:00

Es hängt davon ab, wie das Programm gestartet wird. Es gibt verschiedene Modi, in denen eine Anwendung gestartet werden kann, einige davon, die für diese Frage relevant sind, sind der Daemon-Modus und der Vordergrundmodus.

Ich denke, wenn Sie Ihren Firefox starten, wird die Anwendung standardmäßig als Daemon gestartet, im Daemon-Modus läuft die Anwendung leise im Hintergrund, sodass keine Benutzerinteraktion (nur als Beispiel) sie behindern kann.

Mehr über Daemon hier .

Ein anderer Typ ist Vordergrund. Wenn Sie Ihre Arduino-Anwendung starten, ist sie so programmiert, dass sie standardmäßig im Vordergrundmodus startet (meine Vermutung).

Der Vordergrundmodus macht genau das, was Sie erwähnt haben, er bleibt nur auf dem Terminal, bis Sie ihn mit STRG-C oder einer anderen Methode beenden. Die Vordergrundmethode ist nützlich, wenn Sie wissen möchten, was die Anwendung tatsächlich tut.