Ich habe seine Manpage gelesen, aber noch nicht gelungen, herauszufinden, wie es funktioniert. Auf den Aufruf von System(), ist ein neuer Kindprozess gegabelt und die Shell binary exec() - ed in ihm? Das kann aber eine dumme Vermutung sein.Wie system() genau unter Linux arbeiten?
Antwort
Ja, system() ist im wesentlichen eine fork() und exec() "sh -c" für die übergebene Befehlszeichenfolge. Eine beispielhafte Implementierung (von eglibc, kürzlich gegabelt von glibc) kann here finden.
Ja, System ("foo bar") äquivalent zu execv ("/ bin/sh", [ "sh", "C", "foo bar"]).
Posix erfordert, dass das System() ignorieren und SIGINT SIGQUIT und Block SIGCHLD. –
Ja. Die Beispielimplementierung, auf die Lance hingewiesen hat, macht das. – user108127
- 1. Microsoft Virtual PC unter Linux arbeiten
- 2. grundlegende Chat-System auf Perl unter Linux
- 3. Wie bekomme ich pip3 um unter Linux zu arbeiten?
- 4. Wie mache ich ADB arbeiten unter Linux mit einem Motorola
- 5. System Wide Tastatur Hook auf X unter Linux
- 6. das System in Linux
- 7. GetTcpTable entspricht unter Linux
- 8. Vorlage Konstantenart Konvertierungsoperator nicht unter Linux (gcc) arbeiten
- 9. linux build system tool
- 10. Genau passendes Wort in Linux
- 11. System unter Windows laden
- 12. ASP.Net unter Linux
- 13. Wie erkennen Sie ausstehende Systemabschaltung unter Linux?
- 14. Squeak SMTPs unter Linux
- 15. wie aktiv sudo unter Linux
- 16. Bildschirmhintergrund unter Linux programmgesteuert ändern
- 17. Linux: Buddy System freier Speicher
- 18. Verwenden von JProfiler unter Linux
- 19. SWT Tabelle mit variabler Zeilenhöhe: Arbeiten unter Linux, aber nicht unter Mac/Windows
- 20. Wie wird der Speicherverbrauch unter Linux protokolliert?
- 21. Wie ein Linux-Kommandozeilenprogramm in Windows arbeiten?
- 22. wie Datei Löcher in Linux arbeiten
- 23. va_list Fehlverhalten unter Linux
- 24. kostenlos sicher verteilte make-system für linux
- 25. Wie ditto auf OS X zu verwenden, um wie cp -a unter Linux zu arbeiten
- 26. Mobilink mit MySQL unter Linux
- 27. Linux glibc System Anruf Wrapper Standort
- 28. C++ Flash unter Linux
- 29. arpalert unter Linux
- 30. Dokumentenverwaltung unter Linux
Danke, dieser Link war wirklich hilfreich :) – user108127