オペレーティングシステムの統合の基礎知識

このコードは、基礎から派生し、C ++面接にネットブック入門オフ牛を終えています

  URL https://www.nowcoder.com/tutorial/93/156e55e0579d4a678e857b34d572c278

プロセスとスレッド

  基本的な概念:

  カプセル化プロセスは、同時オペレーティング・システムを実現するために、システムリソースのスケジューリングと基本単位の割り当てにプログラムをされ実行されています。

  スレッドは、サブタスク、CPUスケジューリングと並行内部プロセスを達成するための基本的な単位の分布のプロセスです。

  最小スレッド実行単位であると、オペレーティング・システムのスケジューリングは認識しています。各スレッドは、仮想プロセッサ胃を占有する:単独で登録し、CPUの状態の命令カウンタ。

  各スレッドは、異なるタスクを実行しますが、同じアドレス空間(ヒープ、グローバル領域(静的領域)、リテラルエリア、マップファイル、オブジェクトコード)、開いているファイル、キュー、および他のカーネルリソースを共有することができます。

  違い:

  1.スレッドは、唯一のプロセスに属することができ、プロセスは複数のスレッドを持つことができ、少なくとも一つのスレッドは、プロセスの存在に依存します。

  2.独立したメモリユニットのプロセス、複数のスレッドのプロセスで共有メモリ(コードセグメント(コードおよび定数)、データ・セグメント(静的/グローバル変数)、拡張部(ヒープメモリ))。独立して各スレッドのスタックセグメント(ローカル変数や、一時)

  3.リソース割り当てプロセスは、最小単位、スレッドCPUスケジューリングの最小単位です。

  4.オーバーヘッド:割り当てるシステムを作成し、取り消し処理と割り当て解除リソースので、コストは、スレッドの作成および失効よりも大きいです。切り替えのプロセスは、現在のプロセスのCPU設計は、同様の環境を保存すると、新しいプロセスがCPUの環境設定を実行するようにスケジュールされているよう。唯一のスレッドスイッチの少量のメモリを節約するために提供され、レジスタは、メモリが関与していません。

  通信:プロセス間通信IPC、スレッドは読み出しおよびデータ通信部(同期と相互排他的であることを)に直接書き込むことができます

  6.プロセス間が相互に影響を与えません、スレッドは、スレッドがハングアップにつながるプロセス全体をハングアップです

  7.プロセスは、マルチコア、マルチマシンに分散するように適合されたマルチコアに適したスレッド。

  

  プロセス間通信:

  パイプラインシステムIPC、ソケットソケット

  1.ライン:

おすすめ

転載: www.cnblogs.com/wshr007/p/11442888.html