私はそのマニュアルページを読んできましたが、それがどのように機能するかを理解するのに成功していません。 system()を呼び出すときに、新しい子プロセスがforkされ、シェルバイナリがexec()されていますか?しかし、それは愚かな推測かもしれません。system()はどのようにlinuxで正確に動作しますか?
7
A
答えて
10
はい、system()は基本的には渡されたコマンド文字列のfork()とexec() "sh -c"です。 glibcから最近フォークされたexamplelibcの実装例はhereです。
1
はい、system( "foo bar")はexecv( "/ bin/sh"、["sh"、 "-c"、 "foo bar"])と同等です。
+1
Posixでは、system()がSIGINTとSIGQUITを無視し、SIGCHLDをブロックする必要があります。 –
+0
はい。 Lanceが指摘している実装例ではそうしています。 – user108127
関連する問題
- 1. execlpはどのように正確に動作しますか?
- 2. インポートライブラリはどのように正確に動作しますか?
- 3. bindingnameはどのように正確に動作しますか?
- 4. AnacronはどのようにLinuxで動作しますか?
- 5. バックトレースはLinux x86_64でどのように動作しますか?
- 6. linuxのunlink()はどのように動作しますか?
- 7. Javaヒープスペース - -Xmxはどのように正確に動作しますか?
- 8. Linuxバイナリインストーラ(.bin、.sh)はどのように動作しますか?
- 9. tf.train.Saverはどのように正しく動作しますか?
- 10. のようなクエリは正確には動作しません
- 11. system()コマンドが動作しないC++ linux
- 12. インポートはどのように正確に機能しますか?
- 13. Meteorはどのように動作しますか?クライアントとサーバーはどのように動作しますか?
- 14. 正規表現OR(|)どのように動作しますか?
- 15. kotlinのhtmlxビルダーはどのようにして正確に動作しますか?
- 16. この再帰SQL CTEは、どのようにして正確に動作しますか?
- 17. splitActionBarWhenNarrowはAndroidでどのように正しく動作しますか?
- 18. List ComprehensionはPythonでどのように正しく動作しますか?
- 19. DockerはmacOSホストでLinuxカーネルをどのように動作させますか?
- 20. Linuxでmutexはどのように作成されますか?
- 21. この単純なPrimeNG Angular 2の例は、どのように正確に動作しますか?
- 22. ConstraintSetはどのくらい正確にAndroidのConstraintLayoutsで動作しますか?
- 23. カーネルスレッドはLinuxでどのようなコンテキストで動作しますか?
- 24. Robot Framework Test Suiteのディレクトリはどのように正確に動作していますか?
- 25. IEEE 754:どのように正確に機能しますか?
- 26. Linuxで画面コマンドはどのように動作するのですか
- 27. ()と[]は正規表現でどのように動作しますか?
- 28. Robolectricで正確にカスタムのシャドウオブジェクトはどのように機能しますか?
- 29. タイムスタンプ付きのデュアルサインコードはどのように正しく動作しますか?
- 30. このコードはどのように正しく動作しますか?
ありがとう、そのリンクは本当に役に立ちました:) – user108127