【仕組み解説】OSはどうやって複数のプログラムを同時に動かしているのか — プロセス管理の仕組みを図解
プロセスって生まれてから終わるまで、どんな状態があるの?
次にどのプロセスを実行するかって、どうやって決めてるの?
プロセスを切り替えるときって、何が起きてるの?
「コンテキストスイッチ」っていって、今実行中のプロセスのCPUレジスタの値やプログラムカウンタの位置をメモリに退避して、次のプロセスの状態を復元するんだ。要するに「今どこまでやったか」を保存して、前回の続きから再開するってこと。この切り替えは1回あたり数マイクロ秒くらいだけど、頻繁に起きるとオーバーヘッドになるから、タイムスライスの長さは慎重に設計されてるよ。
マルチコアCPUだと話が変わってくるの?
でもプロセス同士でデータをやり取りしたいときもあるよね?
こういうの知ってると、普段パソコン使ってるときの見え方が変わりそうだね!