POSIXはコンテキスト遷移を定義しますか?

POSIXはコンテキスト遷移を定義しますか?

POSIX コンテキストスイッチよく定義されていますか? Cでスレッドを切り替えるのと同じですか? Cコンパイラはコンテキスト切り替えのためのすべてを生成できますか?それとも、スレッド切り替えまたは「コンテキスト」切り替えのためのルーチンにはまだアセンブリプログラミングが必要ですか? 「コンテキスト」の意味は定義されていますか?スレッドと同じではないですか?

ベストアンサー1

使用されるPOSIX用語コンテキストスイッチそれを厳密に定義しようとせずに、少なくとも2つの異なる目的のために(またはさらに供給定義):

  • 間を切り替える
  • 間を切り替えるプロセス

代わりに、POSIX は、ユーザーがその用語の意味を既に知っていると仮定します。例えば、

3.118 CPU時間(実行時間)

プロセスまたはスレッドの代わりにシステムサービスを実行するのにかかる時間を含む、プロセスまたはスレッドの実行に費やされた時間。スレッドオプションがサポートされている場合、プロセスのCPUタイムクロック値は実装によって定義されます。この定義によれば、シングルスレッドプロセスでも、プロセス内のすべてのスレッドのすべての実行時間の合計は、プロセス実行時間と等しくない可能性があります。これは、実行中に時間が計算される方法が実装によって異なる可能性があるためです。コンテキストスイッチまたは他の理由で。

追加資料:

おすすめ記事