2024-10-08

PDP-11のPDRに含まれるEDビットの挙動

PDP-11/40上で動作したUNIX V6のカーネルを学ぶため、PDP-11について調べています。調べることは多岐にわたりますが、メモリ管理について学んでいるところです。メモリ管理はPARとPDRで挙動を制御しています。そこでPDRのビット3にはED(Expansion Direction)が存在し、これは管理されているメモリ領域の割り当てる方向を決めています。


『PDP-11/40 processor handbook』では「CHAPTER 6 MEMORY MANAGEMENT」に説明がありますが、説明は8行しかなく、簡単にしか書かれていません。これだけの説明でも問題ないかと思いますが、理解を深めるには、読み手側に何らかの努力が必要になると思います。


PDP-11/40のメモリ管理モジュールはKT-11Dらしいのですが、『KE-11D MEMORY MANAGEMENT OPTION USER'S MANUAL』という資料を発見しました。この資料の「CHAPTER 3 OPERATION AND PROGRAMMING」を見ると、「3.5.2.2 Expansion Direction(ED)」として詳しく書かれています。しかも「Figure 3-7 Example of an Upward Expandable Page」と「Figure 3-8 Example of a Downward Expandable Page」として図が示されていて、より理解しやすくなっています。


カーネルにおけるメモリ管理は、OSごとに実装がことなると思います。しかしPDP-11/40上で動作させるなら、そのメモリ管理は、PDP-11/40で出来ることに制約を受けることになるはずです。そういう意味でも、PDP-11/40のメモリ管理について理解を深めておくことは、UNIX V6のカーネルを学ぶ上での基礎知識であるはずです。

0 件のコメント:

コメントを投稿