4週目#
今週提出したら、来週は混公学習団の休暇期間なので1週間は提出せずに休めます。
今回は決められた期間に決められた分量を読んでみたので、少しずつ読み進められている気がしていいですね。
そして本ごとに分量は違うと思いますが、選んだ本なので最後まで読んでみようと思います!
C09#
オペレーティングシステムは実行するプログラムに必要なリソースを割り当て、プログラムが正しく実行されるよう助ける特別なプログラムです。
OSとの対話を通じてハードウェアとプログラムをより深く理解し、問題解決の糸口を見つけることができます。
カーネルはOSの核心機能を担当します。
デュアルモードはCPUが命令を実行するモードをカーネルモードとユーザーモードに区分する方式です。
システムコールはOSのサービスを受けるためにカーネルモードに切り替える方法です。
代表的なOSサービスにはプロセス管理、リソースアクセスおよび割り当て、ファイルシステム管理があります。
C10#
プロセスは実行中のプログラムです。プロセスの種類にはフォアグラウンドプロセスとバックグラウンドプロセスがあります。
OSはプロセス制御ブロックを通じて複数のプロセスを管理します。
プロセス間の実行を切り替えることをコンテキストスイッチと呼びます。
プロセスのユーザー領域はコード領域、データ領域、スタック領域、ヒープ領域に大きく分かれて配置されます。
プロセスの状態には生成、準備、実行、待機、終了があります。
プロセスが別のプロセスを生成した場合、生成したプロセスを親プロセス、生成されたプロセスを子プロセスと呼びます。
多くのOSはプロセスがプロセスを生み出すプロセス階層構造でプロセスを管理しています。
スレッドはプロセス内の実行フローの単位です。
複数のプロセスを同時に実行することをマルチプロセスと言い、複数のスレッドでプロセスを同時に実行することをマルチスレッドと言います。
C11#
CPUスケジューリングは公平かつ合理的にCPUリソースを配分する方法を意味します。
プロセスは優先度を持っており、これはPCBに記載されます。
OSは効率的なスケジューリングのためにスケジューリングキューを使用します。
レディキューはCPU割り当てを待つプロセスのためのキューを意味します。
ウェイトキューは入出力デバイスを待つプロセスのためのキューを意味します。
プリエンプティブスケジューリングはプロセスが使用中のリソースを奪取できます。
ノンプリエンプティブスケジューリングはプロセスが使用中のリソースを奪取できません。
先入先処理スケジューリングアルゴリズムはレディキューに挿入された順にCPUを割り当てます。
最短ジョブ優先スケジューリングアルゴリズムはレディキューに挿入されたプロセスの中でCPU使用時間が最も短いプロセスからCPUを割り当てます。
ラウンドロビンスケジューリングアルゴリズムは決められた時間分だけ順番にCPUを割り当てます。
優先度スケジューリングアルゴリズムは最も高い優先度を持つプロセスにCPUを割り当てます。
多段フィードバックキュースケジューリングアルゴリズムはプロセスがキュー間を移動できる多段キュースケジューリングです。
宿題#
p. 304の確認問題1番(必須)#

正解
- 生成
- 準備
- 実行
- 終了
- 待機
追加宿題(選択)#
問題:Ch.11(11-2) レディキューにA、B、C、Dの順で挿入されたと仮定した場合、先入先処理スケジューリングアルゴリズムを適用するとどのプロセス順でCPUが割り当てられるか解いてみる
正解
先に要求したプロセスからCPUに割り当てるスケジューリング方式なので、A、B、C、Dの順で処理される。
Aがレディキューに最初に到着したので、CPUがAに割り当てられます。
Aの実行が終わった後、CPUはBに割り当てられます。
Bの実行が終わった後、CPUはCに割り当てられます。
Cの実行が終わった後、CPUはDに割り当てられます。
All fixed set patterns are incapable of adaptability or pliability. The truth is outside of all fixed patterns.
— Bruce Lee