【コラム】
Windowsの方はどうか? というと、流石にInside Windowsにはここまでの詳細な記述はない。特にQuantum終了時の処理については全く記述が無いが、Kernelそのものを記述するのでなければこれは不要という事なのかもしれない。
まぁそうは言いつつも、色々興味深い部分はある。まず「タイムスライス管理」(上巻P398)を見ると、10ないし15msの割り込み毎にThreadの持つQuantum値を減らしている。これはどちらかというとVMSの方がトリッキーなのであって、VAXのADD命令とBRANCH命令を組み合わせたほうが高速に処理ができたから足し算をインプリメントしたのであって、マルチプラットフォームを前提としたWindowsではセオリー通り持ち時間を引いていって0以下になったらContext Switchingを開始、を素直にインプリメントしたのだろう。むしろ大きな差に感じるのは、スレッドの持つQuantumがわずか6(Windows Serverでは36)で、しかも1回のタイマー割り込み毎に3づつ減らされる事だ。つまり原則として、Windows XPとか2000だと、20msec毎にThread Context Switchingが発生している計算になる。もっともこれについては、「タイムスライスブースト」(上巻P401)にも有る様に色々例外があるので、平均的なQuantum Tickはもう少し長いのかもしれないが、それでもVMSの様な200msに比べるとだいぶ短い。
理由の一つは、やはり管理単位がProcessではなくThreadだからであろう。一般論としてThreadはProcessに比べて処理の粒度が細かいし、システム全体のThreadの数そのものがProcessよりもだいぶ増える。従って均等にCPUを割り当てるためには、どうしてもQuantum Tickを短くせざるをえない。また、Context Switchingに要するオーバーヘッドが相対的に小さくなっていることもあるだろう。例えばVMSにおけるSCH$QENDの処理の中で、
といった事は、WindowsにおけるThreadレベルでのContext Switchingには必要ない(ただしProcess Levelではこうした処理がどこかで必要になるわけで、結果としてThread LevelとProcess Levelの2段構えのContext Switchingが必要になるから、トータルのオーバーヘッドはむしろ増えているのだろうが)から、Quantum Tickが短くなっても、それに反比例してオーバーヘッドが増えるというところまで行っていないと考えられる。このあたりが、スケジューリング頻度変更の理由だろうと思われる。
共通点はほかにもあって、やっぱりスケジューリングはタイマー割り込みで行われる(これに関してはまぁほかに適切なContext Switchingの方法が事実上ないから、当然なのかもしれないが)とか、Wait StateだとQuantumの値が減らされてゆくといったあたりは、実に良く似ている。
その一方、新機能もいくつか目立つ。先にちょっと触れたタイムスライスブーストは、Foreground Processという概念そのものが無い(Interacriveか、Batchかという違いはVMSにもあるが、これとForeground/Backgroundは同一とは言いにくい)VMSには考えられない(*1)仕組みである。
(*1)厳密に言えば、VAXもGUI付きのVAX Stationと呼ばれるシリーズが登場したことで、概念的にはForeground/Backgroundという概念そのものは発生したが、まだ当時はWindow Systemの内部の話であって、OSには反映されていない。これは、やはりGUIは使えるが、OSと完全に切り離されているUnix/Linuxでも言えることである。このあたり、OS内部にWindow Systemそのものを統合してしまったWindowsのアプローチが正しいのかどうなのか、個人的には非常に微妙に感じる。
| ドスパラ、5月23日22時から「新グラフィックカード」の深夜販売 [22:35 5/21] |
| アユート、「ProjectM」からminPCIe to USB変換基板など変換アイテム3製品 [22:10 5/21] |
| 読書メーター5周年記念、「本を読んで寄付をしよう」を開催 [21:09 5/21] |
| ENERMAX、「Haswell」対応のサイドフロー型CPUクーラー2モデル [21:02 5/21] |
| 上海問屋、スマホとタブレットを4台同時に充電可能なシガーソケット充電器 [20:36 5/21] |
|
富士通が開発中の人の動作をセンシングする技術を使ったマーケティングツール [00:00 5/22] エンタープライズ |
|
【インタビュー】希望に満ち溢れた"未来"を探しに! marble、待望の4thアルバム「未来スコープ」リリース [00:00 5/22] ホビー |
|
「久保ヒャダこじらせナイト」3回目は能町みね子も登場 [23:59 5/21] ホビー |
|
クリステン・スチュワートとロバート・パティンソンが再び破局へ [23:30 5/21] エンタメ |
|
ダフト・パンクの「ワン・モア・タイム」でボーカルを務めたロマンソニーが他界 [23:00 5/21] エンタメ |