1.プロセスとは何ですか
人気の、プロセスが実行されているプログラム
ビューのオペレーティングシステムの観点から、プロセスは、プロセスの説明のためのオペレーティング・システムです。
これができる具体的な処理の記述と呼ばれているPCBのプロセス制御ブロック Linuxでの構造の説明は呼ばれる、構造体のtask_structを
基本的なプロセスは、実行主体のプログラムだけでなく、資源のシステムの割り当てとスケジューリングの基本単位です。
2.メイン処理に含まれる情報
それはtask_structが含まれているためTask_structオペレーティングシステムは、プログラムを実行することができます。
メモリポインタ、識別子PID、ファイルのステータス情報、プロセスの状態、コンテキストデータ、プログラムカウンタ、プロセスの優先度...
メモリポインタ:メモリ内の位置にロードされたプログラムやデータを実行した後
識別子は、PID:一意システム内の各プロセスを識別する
コンテキストデータ:プロセスの実行状態とリソース
プログラムカウンタ:切換位置格納されたプログラム
3.プロセスのステータス
実行:所持のCPU、およびCPU上で実行されます
レディ: 既に動作条件を持っていますが、空きCPUが存在しないので、しかし、一時的に実行することができません
妨害: イベントを待っているが、一時的に実行することはできません
4.特別な地位のプロセス
1.ゾンビプロセス:プロセスがゾンビ状態であります
ゾンビプロセスを生成するには?害は何ですか?避けるためにどのように?
子プロセスが終了するまでの理由を保存し、終了するために、終了するには、親プロセスの前に子供、したがって、サブルーチンのリソースが完全に解放されていない、オペレーティングシステムのチェックは、この時点で親プロセスに通知し、親は子プロセスを得ることができ、この時間は、オペレータができるように、その理由を出ます。子供が唯一の完全に解放される場合、リリースのシステムリソース、リソース。
親が子供のオペレーティング・システム・リソースを解放することが許可されていない親を意味し、この通知、の世話をしなかった場合、子供は死んだ状態になり、この時間は、ゾンビプロセスになるために。
ハザード:リソースリーク
避けてください:プロセス待ちを
解像度:親プロセス理由の本質を見て親プロセスにその理由を保存して終了しているため(ゾンビ子プロセスを終了するには、しかし、親プロセスから撤退し、何もゾンビの子プロセスがないことを意味は存在するので、オペレーティング・システムは、直接放出。 )
2.孤立した:親、子プロセスが終了する前に、子プロセスが孤立してしまいます。(バックグラウンドで)
孤児プロセスが親なしではありませんが、親は子プロセスが終了した後、initプロセスによって、その背後に問題を処理するために、そしてinitプロセスは、オペレーティング・システム・リソースの直接の放出を可能にすることを意味し、initプロセスになり、それはしませんゾンビプロセスになります。
3.デーモン:特別な孤立しました。(バックグラウンドで実行し、完全端末とのセッションのうち、今です)
5.プロセスの優先順位
プロセスの優先順位が決定プロセスは、優先CPUリソースを取得します。
優先度は、実際に、アレイ、値が小さいほど、高い優先順位です。
なぜ、優先順位があるはずです:オペレーティングシステムの実行がより合理的にするために。
どのように優先順位を設定するには、次の優先順位を直接設定することはできないが、しかし、さらに優先nice値の値を設定することにより提供することができる
PRI NI + = PRI NIの範囲:-20〜19 組のコマンド: のrenice - N-ni_valを- P PIDの ニース- N ni_val。/メイン
6.プロセススケジューリング
CPUスケジューリングは、CPUがアイドル状態の場合、オペレーティングシステムは、優先度の高いプログラムの実行のレディキューを選択します、オペレーティングシステムの基本機能であります
7.プロセスの特長
競争:オペレーティングシステム上のプロセスが常にリソースの競合しているため、との間ので、競争力のあるプロセス
の独立性:操作はプロセスが別のプロセスには影響を与えないようにするために、あなたはプロセス間の独立性を持っている必要があり
、並列に:CPUリソース例、十分な数の、複数のプロセスが実行することができ
、同時に:十分ではないCPUリソースを、スイッチが複数のプロセスを実行するようにスケジュールされました