2019-2020-1 20199327仕事の7週目の「Linuxカーネルの原理と分析」

説明と作成プロセス

プロセスの説明 - 不可欠に焦点を当て

オペレーティングシステムの3つの主要な管理機能を実現するため、オペレーティング・システム・カーネル:

  1. プロセス管理 - コア機能。
  2. メモリ管理;
  3. ファイルシステム。

PCB--プロセス制御ブロック

プロセス制御ブロック(PCB)(プロセス設定の特殊なデータ構造を管理するためのシステム、プロセスを記録する外部機能は、変更の移動処理について説明した。プロセスを制御および管理するためにPCBを使用するシステム、PCBは、システムの知覚プロセスであります情報が同じPCBないどのくらいの制御および管理メカニズムの異なる方法で異なるオペレーティングシステムにのみ存在のサイン。プロセスとPCB一個である)は、PCBは、一般的に以下の情報の一部を含むべきです。

変換プロセスの状態

作成プロセス

init_task

プロセス記述、他のプロセスであるが、親プロセスの初期化do_forkコピーの方法によって、ハードコードの固定方法によって初期化される最初のプロセス(プロセス番号0)、。

メモリ管理関連のコード。

active_mmとプロセスのアドレス空間、メモリ管理は、関連データ構造ポインタmmであり、各プロセスは、データ・セグメントの数、コードセグメント、スタックセグメントを有しています。

父と息子、プロセス間の兄弟関係

父と息子の間の複雑な連鎖関係は、ポインタまたは双方向リンクリストによって関連しています。

いくつかの状態情報に関連するデータ構造は、CPUプロセスコンテキストに格納されます。

構造体thread_struct最も重要なことは、SPとIP、プロセス・コンテキストに関連する状態を保存するには、メインCPUです。

  1. SP ESPプロセスコンテキストの状態を保存するには登録。
  2. IPマシンEIPプロセスコンテキストの状態を保存するために登録します。

    実験

    メニューLinuxカーネルの構築

    カーネルのソースコードをダウンロードして、ルートファイルシステムを作成します

デバッギング

カーネルが起動すると、シェルのデバッグを作成します

おすすめ

転載: www.cnblogs.com/waxxx/p/11788001.html