Built To Last

廃れない計算機科学の知識体系を残す

Entries from 2020-09-01 to 1 month

メモリの仮想化① 〜導入

OS

前回までは、OSを理解する上で重要な三要素の一つの「仮想化」を、CPUに適用した際、必要となるポリシーや設計基盤について議論してきた。 今回からは、メモリの仮想化について議論する。 メモリを仮想化することの目的は、 OSを理解するための3つの構成要素…

CPU仮想化④ 〜複数あるプロセスの中でどれを優先すべきか?ーCFS編

OS

前回に引き続き、複数あるプロセスにどのようにCPU時間を振り分けるか、のルール(ポリシー)としてメジャーな手法を取り上げよう。今回は、Linuxで用いられているCompletely Fair Schduler(CFS)である。 スケジューリングにおいて重要なことは公平性とそ…

CPU仮想化③ 〜複数あるプロセスの中でどれを優先すべきか?ーMLFQ編

OS

今回は、CPUの仮想化を理解する上での2つの観点のうち、2つ目の「複数あるプロセスの中でどれを優先すべきか?」、というポリシー(方針)の話をしようと思う。 ここで、良いスケジューラを実装するために重要なこととして、パフォーマンスの他に公平性(F…