Linuxで競合状態が機能しない次のCプログラムは、競合状態b/wの子プロセスと親プロセスを説明するものです。0;}友人が(Ubuntuで)実行すると、予想される出力が得られます。Linuxで同じプログラムを試しても、このような出力は得られません。linuxは競合状態を回避する方法であると思いますが、このような機能を無効にして、友人の出力を取得したいと思います。システムコール、およびそれらが処理される順序は、出力の実際の順序になります。Cライブラリ内のバッファリングに依存するため、1つ以上。最初の改行のために1回、残りのためにもう1回呼び出します。13);呼び出し間で別のプロセスをスケジュールすることが可能です。最初に2つの空の行、次に数字のある行がありますが、処理があまり行われていないため、アンロードされたシステムでは起こりそうにありません。両方のプロセスがまったく同じものを出力するため、一方が他方を中断しない限り、どちらが最初に行くかは関係ないことに注意してください。(プロセスごとに)呼び出し、混合出力の可能性はありません。数字が1つずつ出力されていて、個々のシステムコールで数字が混在している例は可能です。長さがわかっている静的な文字列を出力するときに、賢明なライブラリ実装がそれを行う理由を理解するのは困難です。ループ内の書き込みが増えると、出力が混在する可能性が高くなります。}次のように出力します。ほとんどの場合、そうとは限りません。プロセスのスケジュール方法を決定するのはシステム次第です。予測不可能なため、通常は競合状態を回避しようとします。到達する前に、文字列を出力に表示する。親プロセスと子プロセスの両方が同時にループを実行する時間がある場合、ループで多数の文字列を出力すると、おそらく説明した混在出力が表示されます。システムコール、またはそれに関連するカーネルのコンポーネント。