[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[b-free: 1158] Memory Protection
今週の僕の Computer の授業では、普通の OS の Security Protection につい
て話していました。
で、そのなかで(まあ教科書に書いてあったのですが)、
「Segmentation は Paging より Memory Protection によい。」
ということがありました。
なぜ Seg. のほうが Pag. よりも良いかというのは、要するに、一つの共有
memory(SMB) への access を考えた場合に、 program の種類により access
privilege を変えられるからと云う話でした。
たとえば、shared memory block M にたいして、program A は読み書きできる権
利を持つ segment Sa を通して操作し、program B は読み込みだけしかできない
segment Sb を通じて操作すると云った場合です。
x86 arch. のために、B-free は Paging による仮想記憶と Segmentation によ
る code protection と同時にやっていると思うのですが、もし、SMB の access
right を変更できたら面白いかもしれませんね。たぶん有用な、実現例としては
SMB を獲得時に、獲得した process しか書き込めない(共有する process は読
み込みのみ)とか、 SMB の属性を読み書き許可から読み込みのみ許可に切り替
えるとかかな。より制限された権利で、segment を dup して、他の process に
渡すという使い方も出来るかも。
どちらにしても、まあ、特権命令を使うでしょうから中心核に入る必要があるで
しょうし、需要が多くないと、あんまり実現しない機能ではある気がするけど
、、、。(笑)
-Aki.
追伸:
ちなみに、記憶空間に正負の signed integer を
使うという話は書かれていなかった。
あんまり一般的ではないのかなぁ?<坂村教授の発案?