データを処理するための装置であって、データ処理オペレーションを実施するプログラム命令に応答し、複数のモードで動作するように構成された処理回路と、前記処理回路およびメモリに結合し、ページテーブルデータに基づいて前記メモリ内に格納されたデータ値に対するアクセス許可を制御するように構成されたメモリ管理回路とを備え、前記メモリは、複数のメモリページに分割されたメモリアドレス空間を有し、前記ページテーブルデータは、それぞれのメモリページ用のアクセス許可を規定する、前記複数のメモリページのそれぞれ用の複数のアクセス制御ビットを含み、前記処理回路が、アクセス許可をエンコードするために所定の数のアクセス制御ビットを使用する前記複数のモードの第1のモードにあるとき、前記メモリ管理回路は、前記アクセス制御ビットの複数の異なる組合せが、アクセス許可の同じセットを提供する冗長エンコーディングの少なくとも1つのインスタンスに応答し、前記処理回路が、アクセス許可をエンコードするために前記所定の数のアクセス制御ビットを使用する前記複数のモードの第2のモードにあるとき、前記メモリ管理回路は、非冗長エンコーディングにおいてアクセス許可の複数の異なるセットを提供するアクセス制御ビットの前記複数の異なる組合せに応答する装置。アクセス許可の前記複数の異なるセットは、前記複数のモードの前記第1のモードの動作と前記複数のモードの前記第2のモードの動作との間で互換性がある、アクセス制御ビット値のセットを提供するアクセス許可の前記同じセットを含む請求項1に記載の装置。前記モードの前記第1のモードにおいて、前記アクセス許可は、メモリページ内に格納されたデータ値が、前記メモリページ内の前記データ値が実行可能であるために読取り可能であることを指定しなければならない請求項1および2のいずれか1項に記載の装置。前記モードの前記第2のモードにおいて、前記アクセス許可は、メモリページ内に格納されたデータ値が、前記メモリページ内の前記データ値が実行可能であるために読取り可能であることを指定する必要がなく、それにより、前記データ値は、データとして読取られるのではなく、命令として実行されることができる請求項3に記載の装置。前記処理回路は、前記複数のモードのそれぞれのモード内で複数の例外レベルで動作するように構成され、前記複数の例外レベルは、ユーザレベルおよび特権レベルを含み、前記特権レベルは、装置のリソースに対してより多くのアクセスを提供する請求項1から4項のいずれか1項に記載の装置。前記アクセス制御ビットの第1のアクセス制御ビットは、前記処理回路が前記複数のモードの前記第1のモードにあるとき、前記処理回路が前記ユーザレベルと前記特権レベルの両方にあるときに、対応するメモリページからの命令の実行を防止するように前記メモリ管理回路を選択的に制御する請求項5に記載の装置。前記アクセス制御ビットの第1のアクセス制御ビットは、前記処理回路が前記複数のモードの前記第2のモードにあるとき、前記処理回路が前記特権レベルではなく前記ユーザレベルにあるときに、対応するメモリページからの命令の実行を防止するように前記メモリ管理回路を選択的に制御する請求項6に記載の装置。前記アクセス制御ビットの第2のアクセス制御ビットは、前記処理回路が前記複数のモードの前記第1のモードと前記複数のモードの前記第2のモードの両方にあるとき、前記処理回路が前記特権レベルにあるときに、対応するメモリページからの命令の実行を防止するように前記メモリ管理回路を選択的に制御する請求項6および7のいずれか1項に記載の装置。前記処理回路がユーザレベルで動作するときのメモリページについての前記アクセス制御ビットの少なくとも一部の組合せについて、前記メモリ管理回路は、前記メモリページからの命令の実行を許可するが、前記メモリページに対する読取りアクセスおよび書込みアクセスを許可しない請求項4または請求項5に記載の装置。前記アクセス制御ビットがメモリページに対する書込みアクセスを提供するとき、前記メモリ管理回路は、前記アクセス制御ビットによって指定されるいずれの実行許可に係らず、前記メモリページから読取られる命令の実行を防止する実行制御オーバライドパラメータに応答する請求項1から9のいずれか1項に記載の装置。前記複数のモードの前記第1のモードで動作するとき、前記処理回路は、第1の命令セットからのプログラム命令に応答し、前記複数のモードの前記第2のモードで動作するとき、前記処理回路は、第2の命令セットからのプログラム命令に応答する請求項1から10のいずれか1項に記載の装置。データを処理するための装置であって、プログラム命令に応答しデータ処理オペレーションを実施するための処理手段であって、複数のモードで動作するように構成される、処理手段と、前記処理手段およびメモリに結合し、ページテーブルデータに基づいて前記メモリ内に格納されたデータ値に対するアクセス許可を制御するためのメモリ管理手段とを備え、前記メモリは、複数のメモリページに分割されたメモリアドレス空間を有し、前記ページテーブルデータは、それぞれのメモリページ用のアクセス許可を規定する、前記複数のメモリページのそれぞれ用の複数のアクセス制御ビットを含み、前記処理手段が、アクセス許可をエンコードするために所定の数のアクセス制御ビットを使用する前記複数のモードの第1のモードにあるとき、前記メモリ管理手段は、前記アクセス制御ビットの複数の異なる組合せが、アクセス許可の同じセットを提供する冗長エンコーディングの少なくとも1つのインスタンスに応答し、前記処理手段が、アクセス許可をエンコードするために前記所定の数のアクセス制御ビットを使用する前記複数のモードの第2のモードにあるとき、前記メモリ管理手段は、非冗長エンコーディングにおいてアクセス許可の複数の異なるセットを提供するためにアクセス制御ビットの前記複数の異なる組合せに応答する装置。データを処理する方法であって、プログラム命令に応答して、複数のモードで動作するように構成される処理回路によってデータ処理オペレーションを実施するステップと、ページテーブルデータに基づいてメモリ内に格納されたデータ値に対するアクセス許可を制御するステップとを含み、前記メモリは、複数のメモリページに分割されたメモリアドレス空間を有し、前記ページテーブルデータは、それぞれのメモリページ用のアクセス許可を規定する、前記複数のメモリページのそれぞれ用の複数のアクセス制御ビットを含み、前記処理回路が、アクセス許可をエンコードするために所定の数のアクセス制御ビットを使用する前記複数のモードの第1のモードにあるとき、前記アクセス制御ビットは、前記アクセス制御ビットの複数の異なる組合せが、アクセス許可の同じセットを提供する冗長エンコーディングの少なくとも1つのインスタンスを提供し、前記処理回路が、アクセス許可をエンコードするために前記所定の数のアクセス制御ビットを使用する前記複数のモードの第2のモードにあるとき、前記アクセス制御ビットの前記複数の異なる組合せは、非冗長エンコーディングにおいてアクセス許可の複数の異なるセットを提供する方法。アクセス許可の前記複数の異なるセットは、前記複数のモードの前記第1のモードの動作と前記複数のモードの前記第2のモードの動作との間で互換性がある、アクセス制御ビット値のセットを提供するアクセス許可の前記同じセットを含む請求項13に記載の方法。前記モードの前記第1のモードにおいて、前記アクセス許可は、メモリページ内に格納されたデータ値が、前記メモリページ内の前記データ値が実行可能であるために読取り可能であることを指定しなければならない請求項13および14のいずれか1項に記載の方法。前記モードの前記第2のモードにおいて、前記アクセス許可は、メモリページ内に格納されたデータ値が、前記メモリページ内の前記データ値が実行可能であるために読取り可能であることを指定する必要がなく、それにより、前記データ値は、データとして読取られるのではなく、命令として実行されることができる請求項15に記載の方法。前記処理回路は、前記複数のモードのそれぞれのモード内で複数の例外レベルで動作するように構成され、前記複数の例外レベルは、ユーザレベルおよび特権レベルを含み、前記特権レベルは、方法を実施する装置のリソースに対してより多くのアクセスを提供する請求項13から16項のいずれか1項に記載の方法。前記アクセス制御ビットの第1のアクセス制御ビットは、前記処理回路が前記複数のモードの前記第1のモードにあるとき、前記処理回路が前記ユーザレベルと前記特権レベルの両方にあるときに、対応するメモリページからの命令の実行の選択的な防止を制御する請求項17に記載の方法。前記アクセス制御ビットの第1のアクセス制御ビットは、前記処理回路が前記複数のモードの前記第2のモードにあるとき、前記処理回路が前記特権レベルではなく前記ユーザレベルにあるときに、対応するメモリページからの命令の実行の選択的な防止を制御する請求項18に記載の方法。前記アクセス制御ビットの第2のアクセス制御ビットは、前記処理回路が前記複数のモードの前記第1のモードと前記複数のモードの前記第2のモードの両方にあるとき、前記処理回路が前記特権レベルにあるときに、対応するメモリページからの命令の実行を防止するようにメモリ管理回路を選択的に制御する請求項18および19のいずれか1項に記載の方法。前記処理回路がユーザレベルで動作するときのメモリページについての前記アクセス制御ビットの少なくとも一部の組合せについて、前記メモリページからの命令の実行は許可されるが、前記メモリページに対する読取りアクセスおよび書込みアクセスは許可されない請求項16または請求項17に記載の方法。前記アクセス制御ビットがメモリページに対する書込みアクセスを提供するとき、実行制御オーバライドパラメータは、前記アクセス制御ビットによって指定されるいずれの実行許可に係らず、前記メモリページから読取られる命令の実行の防止を制御するために役立つ請求項13から21のいずれか1項に記載の方法。前記複数のモードの前記第1のモードで動作するとき、前記処理回路は、第1の命令セットからのプログラム命令に応答し、前記複数のモードの前記第2のモードで動作するとき、前記処理回路は、第2の命令セットからのプログラム命令に応答する請求項13から22のいずれか1項に記載の方法。請求項13から23のいずれか1項に記載の方法を実施するようにコンピュータを制御するコンピュータプログラムを含む仮想機械。一態様から見ると、本発明は、データを処理するための装置を提供し、装置は、データ処理オペレーションを実施するプログラム命令に応答し、複数のモードで動作するように構成された処理回路と、前記処理回路およびメモリに結合し、ページテーブルデータに基づいて前記メモリ内に格納されたデータ値に対するアクセス許可を制御するように構成されたメモリ管理回路とを備え、前記メモリは、複数のメモリページに分割されたメモリアドレス空間を有し、前記ページテーブルデータは、それぞれのメモリページ用のアクセス許可を規定する、前記複数のメモリページのそれぞれ用の複数のアクセス制御ビットを含み、前記処理回路が、アクセス許可をエンコードするために所定の数のアクセス制御ビットを使用する前記複数のモードの第1のモードにあるとき、前記メモリ管理回路は、前記アクセス制御ビットの複数の異なる組合せが、アクセス許可の同じセットを提供する冗長エンコーディングの少なくとも1つのインスタンスに応答し、前記処理回路が、アクセス許可をエンコードするために前記所定の数のアクセス制御ビットを使用する前記複数のモードの第2のモードにあるとき、前記メモリ管理ユニットは、非冗長エンコーディングにおいてアクセス許可の複数の異なるセットを提供するアクセス制御ビットの複数の異なる組合せに応答する。本技法は、第1の動作モードで使用されるアクセス制御ビットが、冗長エンコーディングの1つまたは複数のインスタンスを含むことを認識する。第2の動作モードでは、この冗長エンコーディングに対応するアクセス制御ビットの異なる組合せが、アクセス許可の複数の異なるセットを提供するために使用されることができ、それにより、アクセス制御ビットエンコーディング空間をより効率的に利用する。第1および第2のモードは、アクセス許可をエンコードするために同じ数のアクセス制御ビットを使用する。実際には、たとえばユーザ例外レベルと特権例外レベルの両方において、読取りアクセス、書込みアクセス、および実行アクセスの完全に直交しかつ独立の制御を設けることは、現実には必要とされないアクセス許可についての複数の可能性、たとえばユーザ例外レベルで書込み可能であったが、特権例外レベルで書込み可能でなかったメモリページをもたらすことを、本技法は認識する。異なるアクセス許可を提供し、アクセス制御ビットをより効率的に利用するために、第1の動作モード内での冗長エンコーディングが、第2の動作モードで使用されることができることを認識することによって、本技法はさらに進む。有利な後方互換性を提供する方法として、第2の動作モードで提供されるアクセス許可の複数の異なるセットは、第1のモードにおける冗長エンコーディングに対応するアクセス許可の同じセットを含むことができ、それにより、同じページテーブルデータが、第1の動作モードと第2の動作モードで使用されることを可能にする。第1のモード動作では、アクセス許可の従来のビューは、メモリページ内に格納されたデータ値が、それらのデータ値が実行可能であるために読取り可能であることを、アクセス許可が指定しなければならないような制御の装備をもたらす。しかし、仮想化技法のより広範な使用の出現によって、メモリページが実行可能であり、一方、データとして読取り可能でないことは、第2の動作モードで有用となりうる。例として、こうした配置構成は、プログラム命令が、未変換命令をデータとして読取るいずれの試みもトラップされ、仮想化をマスクする適切な処置がとられるように、仮想化システム内で変換されるときに有用である可能性がある。異なる動作モードのそれぞれの動作モード内で、ユーザレベルおよび特権レベルを含む複数の例外レベルも設けられることができ、特権レベルは、装置のリソースに対してより多くのアクセスを提供するたとえば、特権レベルは、ある制御または構成が変更されることを可能にする。アクセス制御ビットは、複数の異なる意味を提供し、それらの意味を異なる方法でエンコードするために使用されうることが理解されることになるが、いくつかの実施形態では、アクセス制御ビットの第1のアクセス制御ビットは、処理回路が複数のモードの第1のモードにあるとき、処理回路がユーザレベルと特権レベルの両方にあるときに、対応するメモリページからの命令の実行を防止するようにメモリ管理回路を選択的に制御する。したがって、この第1のアクセス制御ビットは、第1のモードで動作するとき、executeneverフラグとして効果的に役立つ。この同じ第1のアクセス制御ビットは、第2の動作モード内で異なる意味で、すなわち、処理回路がユーザレベルにあるときに、対応するメモリページからの命令の実行を防止するようにメモリ管理回路を選択的に制御するが、処理回路が特権レベルにあるときにそのメモリページからの命令を処理回路が実行できるか否かを制御しないために使用されうる。したがって、この状況では、第2のモードで動作するときの同じ第1のアクセス制御ビットは、userexecuteneverビットとして役立つ。アクセス制御ビットの第2のアクセス制御ビットは、処理回路が特権レベルにあり、処理回路が第1の動作モードまたは第2のモードのいずれかにあるときに、対応するメモリページからの命令の実行を防止するようにメモリ管理回路を選択的に制御するために使用されることができる。したがって、アクセス制御ビットのこの第2のアクセス制御ビットは、privilegeexecuteneverビットとして役立つ。処理回路がユーザレベルで動作するときのメモリページについてのアクセス制御ビットの少なくとも一部の組合せについて、メモリ管理回路は、そのメモリページからの命令の実行を許可するが、メモリページに対する読取りアクセスおよび書込みアクセスを許可しないことは、いくつかの実施形態では以外にも有用である。プログラミングにおいてエラーを起こし易いセキュリティを確実な方法で強化するために、メモリ管理回路は、メモリページから読取られる命令の実行を、そのメモリページ用のアクセス制御ビットがそのメモリページに対する書込みアクセスを提供するときのそのメモリページ用のアクセス制御ビットによって指定されるいずれの実行許可に係らず、防止する実行制御オーバライドパラメータに応答することができる。書込みアクセスと実行アクセスの両方を同時に装備することは、潜在的なセキュリティ脆弱性であり、したがって、改変を受け易いメモリページの実行を防止することは、セキュリティ強化である。実行制御オーバライドパラメータは、こうした制御が、単純な方法でかつページテーブルデータ自体大きく、複雑で、変化する場合があると独立に設けられることを可能にする。異なる動作モードは、種々の異なる形態をとりうるが、少なくともいくつかの実施形態では、第1の動作モードは、第1の命令セットからのプログラム命令に応答する処理回路に対応し、第2の動作モードは、第2の命令セットからのプログラム命令に応答する処理回路に対応する。さらなる態様から見ると、本発明は、データを処理するための装置を提供し、装置は、プログラム命令に応答しデータ処理オペレーションを実施するための処理手段であって、複数のモードで動作するように構成される、処理手段と、前記処理手段およびメモリに結合し、ページテーブルデータに基づいて前記メモリ内に格納されたデータ値に対するアクセス許可を制御するためのメモリ管理手段とを備え、前記メモリは、複数のメモリページに分割されたメモリアドレス空間を有し、前記ページテーブルデータは、それぞれのメモリページ用のアクセス許可を規定する、前記複数のメモリページのそれぞれ用の複数のアクセス制御ビットを含み、前記処理手段が、アクセス許可をエンコードするために所定の数のアクセス制御ビットを使用する前記複数のモードの第1のモードにあるとき、前記メモリ管理手段は、前記アクセス制御ビットの複数の異なる組合せが、アクセス許可の同じセットを提供する冗長エンコーディングの少なくとも1つのインスタンスに応答し、前記処理手段が、アクセス許可をエンコードするために前記所定の数のアクセス制御ビットを使用する前記複数のモードの第2のモードにあるとき、前記メモリ管理手段は、非冗長エンコーディングにおいてアクセス許可の複数の異なるセットを提供するためにアクセス制御ビットの前記複数の異なる組合せに応答する。さらなる態様から見ると、本発明は、データを処理する方法を提供し、方法は、プログラム命令に応答して、複数のモードで動作するように構成される処理回路によってデータ処理オペレーションを実施するステップと、ページテーブルデータに基づいて前記メモリ内に格納されたデータ値に対するアクセス許可を制御するステップとを含み、前記メモリは、複数のメモリページに分割されたメモリアドレス空間を有し、前記ページテーブルデータは、それぞれのメモリページ用のアクセス許可を規定する、前記複数のメモリページのそれぞれ用の複数のアクセス制御ビットを含み、前記処理回路が、アクセス許可をエンコードするために所定の数のアクセス制御ビットを使用する前記複数のモードの第1のモードにあるとき、前記アクセス制御ビットは、前記アクセス制御ビットの複数の異なる組合せが、アクセス許可の同じセットを提供する冗長エンコーディングの少なくとも1つのインスタンスを提供し、前記処理回路が、アクセス許可をエンコードするために前記所定の数のアクセス制御ビットを使用する前記複数のモードの第2のモードにあるとき、前記アクセス制御ビットの前記複数の異なる組合せは、非冗長エンコーディングにおいてアクセス許可の複数の異なるセットを提供する。本発明の実施形態はまた、上述した技法を実施するための実行環境を提供するための、コンピュータプログラムによって制御される汎用コンピュータを備える仮想機械の形態で提供されることができる。本発明の実施形態は、ここで、添付図面を参照して例としてだけ述べられる。図1は、メモリ管理ユニット6およびキャッシュメモリ8を介して主メモリ10に結合された、プロセッサコアの形態の処理回路4を含むデータ処理システム2を概略的に示す。処理回路4は、命令パイプライン22に沿って渡されるプログラム命令に応答して命令デコーダ20によって生成される制御信号によって制御される、汎用レジスタバンク12、マルチプレクサ14、シフター16、および加算器18を備えるデータ経路を含む。命令デコーダ20は、第1の命令セットと第2の命令セットの両方からの命令をデコードすることができる。モードレジスタ24は、命令デコーダ20を制御するモード値を格納して、命令パイプライン22からのプログラム命令を、第1の命令セットからの命令ISA0または第2の命令セットからの命令ISA1としてデコードする。処理回路4は、2つの異なる命令セットの使用に対応する上述した2つの異なるモードで動作すると共に、これらのモードのそれぞれのモード内で複数の異なる例外レベル、すなわちユーザレベルと特権レベルで動作することができる。例外レベルレジスタ26は、処理回路4の目下の例外レベルを規定するデータを格納する。例外レベルレジスタ26で示される目下の例外レベルに基づいて、処理回路4は、データ処理システム2内の異なるリソースにアクセスすることができる。当業者が情通しているように、特権レベルの場合、ユーザレベルの場合よりリソースに対するより多くのアクセスが、通常、与えられる。たとえば、いくつかの構成パラメータまたは命令は、特権レベルにおけるチャージングまたは実行について利用可能である可能性があるだけであり、ユーザレベルにおいて利用可能でない可能性がある。メモリアクセスを生成するときの処理回路4は、メモリ管理ユニット6によって物理アドレスPAに変換される仮想アドレスVAを生成する。メモリ管理ユニット6はまた、主メモリ10のメモリアドレス空間がその中に分割されるメモリページに関連するアクセス許可を管理の責任もある。メモリ管理ユニット6内の変換ルックアサイドバッファ28は、主メモリ10内に格納されたページテーブルデータ30のキャッシュされたコピーを使用して、大部分の仮想-物理アドレス変換を実施する。このページテーブルデータは、仮想-物理アドレス変換を指定すると共に、アクセス制御ビットを使用してアクセス許可を指定する。メモリアクセスが、処理回路4からメモリ管理ユニット6によって受信されると、目下のモードおよび目下の例外レベルが、アクセス許可に対してチェックされて、メモリアクセスが公認されるか否かが判定される。メモリアクセスが公認されるか否かはまた、メモリアクセスが、読取りメモリアクセスであるか、書込みメモリアクセスであるか、または関係するメモリページから実行用の命令をフェッチしようとするアクセスであるかに依存することになる。許可されるメモリアクセスについてメモリ管理ユニット6から出力される変換済み物理アドレスPAは、キャッシュメモリ8に渡される。キャッシュメモリ8が、関係するデータを格納している場合、そのメモリアクセスは、キャッシュメモリ8によってサービスされる。キャッシュメモリ8が、関係するデータを格納していない場合、メモリアクセスは、主メモリ10に進む。図1に示すように、主メモリは、複数のメモリページ34、36、38に分割されたメモリアドレス空間32を含み、複数のメモリページ34、36、38は、異なるサイズおよびそれらに関連する異なるアクセス許可を有する。メモリアドレス空間32内には、ページテーブルデータ30も含まれ、ページテーブルデータ30は、仮想-物理アドレスマッピングを規定するデータ、ならびに、処理回路の動作モードおよび処理回路4の例外レベルに応じてアクセス許可を制御するためのアクセス制御ビットを格納する。図2は、所与のメモリページについてページテーブルデータ30内に格納されたセクセツ制御ビットと、第1の動作モードおよび第2の動作モードならびにそれらの動作モード内の異なる例外レベルにおいて、これらのアクセス制御ビットによって提供されるアクセス許可との間の関係を示す表である。見てわかるように、この例示的な実施形態では、4つのアクセス制御ビットが存在する。第1のアクセス制御ビット40は、処理回路4が第1の命令セットを実行する第1のモードにあるときにユーザレベルと特権レベルの両方で適用可能なexecutenever非実行制御ビットに対応する。処理回路4が第2の命令セットを実行するときの第2のモードでは、第1のアクセス制御ビット40は、ユーザレベルでそのメモリページについて実行が許可されるか否かを指定し、また、特権レベルにあるときにそのメモリページから実行が許可されるか否かを制御できない、userexecuteneverユーザ非実行制御ビットとして役立つ。第2のアクセス制御ビット42は、privilegeexecutenever特権実行非制御ビットとして役立つ。第2の動作モードでは、privilegeexecutenever制御ビットである第2のアクセス制御ビット42およびuserexecutenever制御ビットである第1のアクセス制御ビット40は、独立にかつ直交して動作する。第1の動作モードでは、executenever制御ビットとして働く第1のアクセス制御ビット40は、privilegeexecutenever制御ビットとして役立つ第2のアクセス制御ビット42の指示をオーバライドすることができる。そのため、メモリページが、実行されないメモリページであることを第1のアクセス制御ビット40が指示する場合、実行許可は、特権レベル実行が許可されることをprivilegeexecutenever制御ビット42が指示しても、そのメモリページ内で許可されないことになる。第1の動作モードにあるときに第2のアクセス制御ビット42の指示をオーバライドする第1のアクセス制御ビット40のこの挙動は、図2でマークを付けられるように第1の動作モード内で冗長エンコーディングをもたらす。そのため、アクセス制御ビットの異なる組合せは、アクセス制御ビットのエンコーディングビット空間の消費に対応する、第1の動作モード内の同じアクセス許可をもたらす。第2の動作モードでは、アクセス制御ビットは別様にデコードされ、この冗長性が取除かれて、アクセス制御ビットの異なる組合せによって与えられるアクセス許可がアクセス許可の異なる組合せに対応する非冗長エンコーディングが提供される。第2のモードで与えられるアクセス許可の組合せの1つは、第1のモードで与えられるアクセス許可の単一の組合せと同じであり、それにより、後方互換性が促進される。アクセス許可のこの同じセットは、図2においてでマークを付けられる。処理回路4の第1の動作モード内で、メモリページは、実行可能であるために読取り可能でなければならない。この条件は、処理回路4の第2の動作モードで適用されない。図2においてでマーク付けされた、実行のみ用のアクセス許可であるアクセス許可は、第1の動作モード内でのエンコーディングによって提供されないアクセス許可の形態に対応する。図2に示すように、アクセス制御ビットのエンコーディングの上半分は、アクセス制御ビットの少なくとも一部の組合せについて書込みアクセスを提供し、一方、表の下半分では、書込みアクセスが許可されない。書込みアクセスが利用可能である時に提供される実行許可は、図1に示すメモリ管理ユニット6の制御レジスタ44内に格納された実行制御オーバライドパラメータによってオーバライドされることができる。この実行制御オーバライドパラメータは、特権レベルソフトウェア制御下で書込まれることができる、または、さらに高いセキュリティが所望される場合には、ハードウェア制御下で設定されることができる。実行制御オーバライドパラメータが設定されると、書込み可能であるメモリページについての実行許可は、実行許可が許容されることを第1のアクセス制御ビット40および/または第2のアクセス制御ビット42が指示しても、許可されないことになる。図3は、メモリアクセスが受信されるときにアクセス許可をデコードするときのメモリ管理ユニット6のアクションを示すフロー図である。ステップ46にて、メモリ管理ユニット6は、メモリアクセスが受信されるのを待つ。ステップ48にて、メモリアクセスのその仮想アドレスに対応するメモリページについてのアクセス制御ビットが読取られる。アクセス制御ビットのこうした読取りは、関係するメモリページが、最近アクセスされたか、または、別法として、当業者が情通するように、ページテーブルデータ30を通してページテーブルウォークを必要とする場合、変換ルックアサイドバッファ28内のルックアップによって実施されることができる。ステップ50にて、アクセス制御ビットは、処理回路の目下のモードたとえば、処理回路が、第1の命令セットの命令を実行しているか、または、第2の命令セットの命令を実行しているかならびに目下の例外レベルたとえば、処理回路が、ユーザレベルにあるか、または、特権レベルにあるかに基づいてデコードされて、アクセス許可が与えられることが決定される。このデコーディングは、図2の表による。ステップ52にて、デコードされたアクセス許可が、試行されるメモリアクセスと比較され、試行されるメモリアクセスが、許可されるメモリアクセスであるか否かについての判定が行われる。メモリアクセスが許可されない場合、ステップ54は、メモリアボートabortを生成する。メモリアクセスが許可される場合、ステップ56は、受信された仮想アドレスに対応する物理アドレスを出力し、メモリアクセスは、適宜キャッシュメモリ8または主メモリ10に渡るように許可される。図4は、使用されることができる仮想機械実装態様を示す。先に述べた実施形態は、関係する技法をサポートする特定の処理ハードウェアを動作させるための装置および方法によって本発明を実装するが、ハードウェアデバイスのいわゆる仮想機械実装態様も可能である。これらの仮想機械実装態様は、仮想機械プログラム510をサポートするホストオペレーティングシステム520を実行するホストプロセッサ530上に実行される。通常、適度な速度で実行する仮想機械実装態様を提供するためによりパワフルなプロセッサが必要とされるが、こうした手法は、互換性または再使用のために別のプロセッサに固有のコードを実行するという欲求が存在するときなど、ある状況で正当化されることができる。仮想機械プログラム510は、アプリケーションプログラム500にアプリケーションプログラムインタフェースを提供し、そのアプリケーションプログラムインタフェースは、仮想機械プログラム510によってモデル化されるデバイスである現実のハードウェアによって提供されることになるアプリケーションプログラムインタフェースと同じである。そのため、上述したメモリアクセスの制御を含むプログラム命令は、仮想機械ハードウェアとのその相互作用をモデル化するために、仮想機械プログラム510を使用してアプリケーションプログラム500内から実行されることができる。