UNIXで一時停止された操作はどうなりますか?

UNIXで一時停止された操作はどうなりますか?

CTRL+ZUnixですべてのタスクを一時停止してから、そのタスクを使用fgまたは再開するコマンドを実行できますbg。停止された採用はどうなるか知りたいです。彼らは死んだか削除されましたか?つまり、プロセスを終了することとプロセスを一時停止することの違いは何ですか?

答え1

これらの仕事は削除されたのではなく中断されました。それらは停止したときと同じです。同じメモリマップ、同じオープンファイル、同じスレッド...再開されるまで何もしないプロセスだけがあります。映画を一時停止するときのようです。停止されたプロセスは、プロセス状態が実行中ではなくサスペンドとして記録されることを除いて、スケジューラがCPU時間の提供を強固に拒否するプロセスと同じように動作します。

答え2

ユーザーの観点からは、これはタスクが一時停止されたことを意味します。もはやCPUを使用しません。それ〜するただし、同じ量のRAMを使用してください。そのため、これを前景に戻すことができますfg中断したところから続く

ジョブを終了して再起動すると、最初から再開されます。

答え3

一時停止中は、カーネルはプロセッサキューにプロセスを追加しません。プロセスが終了すると、プロセスのスタック(メモリ)が解放されます。

関連情報