メモリ保護機構
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/04/04 03:21 UTC 版)
メモリ内容を保護する方法としては、マルチオーソリティキー(略称:MAK)と称する管理値を用いた、リングプロテクション方式を採用している。MAKの取りうる値は0~3の4階層で、値が小さいほどより特権レベルの高い信頼できるタスクとして扱われる。 メモリ保護そのものは、実行中のタスクに与えられているMAKの値(1つ)を、セグメントごとに3つ設定されているMAKの値とそれぞれ比較する手順を介して行なわれる。比較した結果により、 メモリからの読み取り(Read) メモリへの書き込み(Write) メモリ内容のプログラムコードとしての実行(Execute) が許可されるか否かが決まる。 なお、同一のセグメントに対する、メモリへの書き込みとメモリ内容のプログラムコードとしての実行を同一のタスクが同時に実行する事は、OS自身を含めて、原則としてできないハードウェア構造となっている。もっとも特権レベルが高い(MAKの値が0の)タスクであったとしても、一定の手順を踏まない無秩序なメモリ書き込み等はできない。 実行ファイルの内容をメモリへ書き込む動作と、タスクとしての起動を同時に行わなければならないなど、MAKによるメモリ保護を回避してメモリへの参照等を行なわなければならない場合は、ゲートセグメント記述子と呼ばれる専用の仕組みを介して行なう。
※この「メモリ保護機構」の解説は、「ACOS-4」の解説の一部です。
「メモリ保護機構」を含む「ACOS-4」の記事については、「ACOS-4」の概要を参照ください。
- メモリ保護機構のページへのリンク