プロセス
実行中の プログラム の インスタンス
大きく以下の要素によって構成されている
プログラムのコード(コードセグメント で管理)
プログラム中で使用されている変数(データセグメント や ヒープ、スタック で管理)
レジスタ
実行に関する状態(レジスタ で管理)
Program Counter(PC)
Instruction Pointer(IP)
メモリ 内で独立した領域を持ち、他のプロセスの メモリ空間 にアクセスすることはできない
プロセス間で情報をやり取りする場合は IPC(プロセス間通信)によって行う
プログラムが終了したり、処理できないエラーが発生するとプロセスは終了する
プロセスが終了すると、OS はその資源をすべて回収して、回収された資源は他のプロセスが使えるようになる
資源
メモリ領域、開いている ファイルハンドル、ネットワーク接続
Unix や Windows の場合、親プロセスが終了しても、子プロセスは自動的に終了しない