2レベルのスケジューラはスワッピングの管理にのみ役立つのですか?


10

2レベルのスケジューリングは、システムがRAMに収まらないより多くのプロセスを実行している場合に役立ちます。低レベルのスケジューラは常駐プロセスを切り替え、高レベルのスケジューラはプロセスのグループを入れ替えます。

Andrew Tanenbaumのオペレーティングシステム:設計と実装、第1版では、2レベルのスケジューリングについて他に言及していません。演習2.22では、2レベルのスケジューリングを使用する理由を尋ねています。それが読解チェックとしてあるのか、それとも本文に明記されていない他の理由があるのか​​はわかりません。

2レベルのスケジューリングは、メモリ以外のリソースの競合を管理するのに役立ちますか?


1
キャッシュとディスクIOには良いかもしれませんが、それは「メモリ以外」ではありません。
ラファエル

@Raphaelが言うように、言い換えれば、スラッシングを回避/軽減します。
Dave Clarke、

回答:


8

説明するタイプ以外に、2レベルのスケジューリングには他の形式があります。たとえば、20のプロセスを持つユーザーに1のプロセスを持つユーザーと同じ量のCPU時間を与えることを目的として、1つのレベルのスケジューリングをユーザーごとに、もう1つのレベルをプロセスごとにすることができます。単一レベルのスケジューラーでは、各プロセスがCPU時間の1/21を取得する可能性があります。

2レベルのスケジューリングのもう1つの形式は、プロセスごととスレッドごとであり、20スレッドのプロセスに1スレッドのプロセスと同じ量のCPU時間を与えることを目的としています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.