マルチ・プロセスについて
最近の CPU はコア(演算制御部)が複数のものもありますが、古典的に CPU
が1つであっても、ほとんどのOSでは複数の処理(粒度に応じてプロセスだっ
たりタスクだったりスレッドだったりしますが、ここではプロセスとしておき
ます)を、擬似的に同時並行で行っています。それはつまり、ある一瞬では1
つの処理しかしていないのですが、すごく短い時間で処理をする権利(CPU
資源)を複数のプロセスで交代に使っていることで、複数のプロセスが少しず
つ処理を進めていき、それを長い目(?)でみると同時並行処理されているよ
うに感じられる、ということです。
以下のシミュレーションで少しでも感じてもらえれば、と思います。A〜Eが
プロセス(計5つある)で、ある一瞬には1つしか動いていない(CPUを利
用していることに対応)のですが、交代の時間間隔を短くとることで、ぼぼ同
時に動いているように見ることができるでしょう(できますか?)。
講義用スタイル
印刷用スタイル