JP2016517992A - 属性フィールドのマルチコアページテーブルセット - Google Patents
属性フィールドのマルチコアページテーブルセット Download PDFInfo
- Publication number
- JP2016517992A JP2016517992A JP2016512914A JP2016512914A JP2016517992A JP 2016517992 A JP2016517992 A JP 2016517992A JP 2016512914 A JP2016512914 A JP 2016512914A JP 2016512914 A JP2016512914 A JP 2016512914A JP 2016517992 A JP2016517992 A JP 2016517992A
- Authority
- JP
- Japan
- Prior art keywords
- page
- page table
- attribute data
- processing unit
- table entry
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012545 processing Methods 0.000 claims abstract description 475
- 238000000034 method Methods 0.000 claims description 106
- 230000008569 process Effects 0.000 claims description 24
- 238000013507 mapping Methods 0.000 description 36
- 238000007726 management method Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 239000000872 buffer Substances 0.000 description 7
- 238000013519 translation Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1009—Address translation using page tables, e.g. page table structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
- G06F12/145—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being virtual, e.g. for virtual blocks or segments before a translation mechanism
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[C1]
第1の処理ユニットを用いて、第1のページテーブル内の第1のページテーブルエントリから物理アドレスを読み取ることと、
前記第1の処理ユニットを用いて、前記第1のページテーブルエントリから第1のページ属性データを決定することと、ここにおいて、前記第1のページ属性データは、前記第1の処理ユニットに関する前記メモリの物理ページの1つまたは複数のアクセス可能性属性を定義し、
前記第2の処理ユニットを用いて、前記第1のページテーブル内の前記第1のページテーブルエントリから前記物理アドレスを読み取ることと、
前記第2の処理ユニットを用いて、代替の場所から第2のページ属性データを決定することと、ここにおいて、前記代替の場所は、前記第1のページテーブルエントリに関連付けられ、前記第2のページ属性データは、前記第2の処理ユニットに関する前記メモリの物理ページの1つまたは複数のアクセス可能性属性を定義し、
前記第1の処理ユニットを用いて、前記第1のページ属性データの前記1つまたは複数のアクセス可能性属性にしたがって、前記物理アドレスに関連付けられるメモリの物理ページにアクセスすることと、
前記第2の処理ユニットを用いて、前記第2のページ属性データの前記1つまたは複数のアクセス可能性属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスすることと、
を備える、メモリにアクセスする方法。
[C2]
前記代替の場所は、第2のページテーブル内の第2のページテーブルエントリを備え、ここにおいて、前記第2のページ属性データを決定することは、
前記第2の処理ユニットを用いて、前記第1のページテーブルエントリを読み取ることと並行して、前記第2のページテーブルエントリから前記第2のページ属性データを決定することをさらに備える、C1に記載の方法。
[C3]
前記代替の場所は、第2のページテーブル内の第2のページテーブルエントリであり、前記方法は、
前記第2の処理ユニットを用いて、前記第1のページテーブルエントリから前記第2のページテーブルに関連付けられるデータを読み取ることをさらに備え、
ここにおいて、前記第2のページ属性データを決定することは、
前記第2の処理ユニットを用いて、前記第2のページテーブルに関連付けられる前記データに基づいて、前記第2のページテーブルを識別することをさらに備える、C1に記載の方法。
[C4]
前記第2のページテーブルに関連付けられる前記データは、複数の並行するページテーブルから前記第2のページテーブルを識別する識別子を備える、C3に記載の方法。
[C5]
前記代替の場所は、前記第1のページテーブル内の第2のページテーブルエントリを備え、
ここにおいて、前記第1のページテーブル内の前記第2のページテーブルエントリは、前記第1のページテーブルエントリのポインタ値に基づいて、前記第1のページテーブルエントリに関連付けられる、C1に記載の方法。
[C6]
前記ポインタ値は、仮想アドレスと物理アドレスのうちの少なくとも1つを備える、C5に記載の方法。
[C7]
結合されたページ属性データの1つまたは複数のアクセス可能性属性を形成するために、前記第2の処理ユニットを用いて、前記第1のページ属性データの前記1つまたは複数の属性と前記第2のページ属性データの1つまたは複数の属性を組み合わせることをさらに備え、
ここにおいて、前記第2の処理ユニットは、前記結合されたページ属性データの前記1つまたは複数の属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスする、C1に記載の方法。
[C8]
前記第2のページ属性データは、前記第1のページ属性データの前記1つまたは複数の属性値とは異なる1つまたは複数の属性値を含む、C7に記載の方法。
[C9]
前記第1の処理ユニットを用いて、前記第2のページ属性データが有効であるかどうかを示す前記第1のページテーブルエントリから有効データを読み取ることをさらに備え、
ここにおいて、前記第2のページ属性データを決定することは、前記第1のページテーブルエントリからの前記有効データが、前記第2のページ属性データが有効であることを示す場合、前記第2の処理ユニットを用いて、前記第2のページ属性データを決定することをさらに備える、C1に記載の方法。
[C10]
前記第1のページ属性データと前記第2のページ属性データは、前記メモリのページが、読み取り可能、書き込み可能、キャッシュ可能、実行可能、およびダーティのうちの少なくとも1つであるかどうかを定義する、C1に記載の方法。
[C11]
前記代替の場所はレジスタを備え、
ここにおいて、前記レジスタは、前記第1のページテーブルエントリ内のポインタ値に基づいて、前記第1のページテーブルエントリに関連付けられる、C1に記載の方法。
[C12]
前記第1の処理ユニットはCPUであり、ならびに前記第2の処理ユニットはGPUである、C1に記載の方法。
[C13]
前記第1の処理ユニットは第1のメモリ管理ユニット(MMU)を備え、ならびに前記第2の処理ユニットは第2のMMUを備え、ここにおいて、前記第1のMMUは、前記第1のページテーブルおよび前記代替の場所のうちの少なくとも1つにアクセスするように構成され、および前記第2のMMUは、前記第1のページテーブルおよび前記代替の場所のうちの少なくとも1つにアクセスするように構成される、C12に記載の方法。
[C14]
第1のページテーブルエントリを含む第1のページテーブルと、ここにおいて、前記第1のページテーブルエントリは物理アドレスをさらに含み、
前記第1のページテーブルエントリに関連付けられる代替の場所と、
前記物理アドレスに関連付けられるメモリの物理ページと、
を記憶するための手段と、
第1の処理をするための手段と、ここにおいて、前記第1の処理をするための手段は、
前記物理アドレスを前記第1のページテーブルエントリから読み取るための手段と、
前記第1のページテーブルエントリから第1のページ属性データを決定するための手段と、ここにおいて、前記第1のページ属性データは、前記第1の処理をするための手段に関する前記メモリの物理ページの1つまたは複数のアクセス可能性属性を定義し、
前記第1のページ属性データの前記1つまたは複数のアクセス可能性属性にしたがって、前記物理アドレスを用いてメモリの物理ページにアクセスするための手段と、
を備え、
第2の処理をするための手段と、ここにおいて、前記第2の処理をするための手段は、
前記第1のページテーブルエントリを前記第1のページテーブルから読み取るための手段と、
前記第1のページテーブルエントリから前記物理アドレスを決定するための手段と、
前記代替の場所から第2のページ属性データを決定するための手段と、ここにおいて、前記代替の場所は、前記第1のページテーブルエントリに関連付けられ、前記第2のページ属性データは、前記第2の処理をするための手段に関する前記メモリの物理ページの1つまたは複数のアクセス可能性属性を定義し、
前記第2のページ属性データの前記1つまたは複数のアクセス可能性属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスするための手段と、
を備え、
を備える装置。
[C15]
前記代替の場所は、第2のページテーブル内の第2のページテーブルエントリを備え、ここにおいて、前記第2のページ属性データを決定するための前記手段は、
前記第1のページ属性データを決定するための前記手段と並行して、前記第2のページテーブルエントリから前記第2のページ属性データを決定するための手段をさらに備える、C14に記載の装置。
[C16]
前記代替の場所は、第2のページテーブル内の第2のページテーブルエントリであり、前記第2の処理をするための手段は、
前記第1のページテーブルエントリから前記第2のページテーブルに関連付けられるデータを読み取るための手段をさらに備え、
ここにおいて、前記第2のページ属性データを決定するための前記手段は、
前記第2のページテーブルに関連付けられる前記データに基づいて、前記第2のページテーブルを識別するための手段をさらに備える、C14に記載の装置。
[C17]
前記第2のページテーブルに関連付けられる前記データは、複数の並行するページテーブルから前記第2のページテーブルを識別する識別子を備える、C16に記載の装置。
[C18]
前記代替の場所は、前記第1のページテーブル内の第2のページテーブルエントリを備え、
ここにおいて、前記第1のページテーブル内の前記第2のページテーブルエントリは、前記第1のページテーブルエントリのポインタ値に基づいて、前記第1のページテーブルエントリに関連付けられる、C14に記載の装置。
[C19]
前記ポインタ値は、仮想アドレスと物理アドレスのうちの少なくとも1つを備える、C18に記載の装置。
[C20]
前記第2の処理をするための手段は、
結合されたページ属性データの1つまたは複数のアクセス可能性属性を形成するために、前記第1のページ属性データの前記1つまたは複数の属性と前記第2のページ属性データの1つまたは複数の属性を組み合わせるための手段をさらに備え、
ここにおいて、前記第2の処理をするための手段が、前記結合されたページ属性データの前記1つまたは複数の属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスする、C14に記載の装置。
[C21]
前記第2のページ属性データは、前記第1のページ属性データの前記1つまたは複数の属性値とは異なる1つまたは複数の属性値を含む、C20に記載の装置。
[C22]
前記第1の処理をするための手段は、前記第2のページ属性データが有効であるかどうかを示す前記第1のページテーブルエントリから有効データを読み取るための手段をさらに備え、
ここにおいて、前記第2のページ属性データを決定するための前記手段は、
前記第1のページテーブルエントリからの前記有効データが、前記第2のページ属性データが有効であることを示す場合、前記第2のページ属性データを決定するための手段をさらに備える、C14に記載の装置。
[C23]
前記第1のページ属性データと前記第2のページ属性データは、前記メモリのページが、読み取り可能、書き込み可能、キャッシュ可能、実行可能、およびダーティのうちの少なくとも1つであるかどうかを定義する、C14に記載の装置。
[C24]
前記代替の場所はレジスタを備え、
ここにおいて、前記レジスタは、前記第1のページテーブルエントリ内のポインタ値に基づいて、前記第1のページテーブルエントリに関連付けられる、C14に記載の装置。
[C25]
前記第1の処理をするための手段はCPUであり、ならびに前記第2の処理をするための手段はGPUである、C14に記載の装置。
[C26]
前記第1の処理をするための手段は第1のメモリ管理ユニット(MMU)を備え、ならびに前記第2の処理をするための手段は第2のMMUを備え、
ここにおいて、前記第1のMMUは、前記第1のページテーブルおよび前記代替の場所のうちの少なくとも1つにアクセスするために構成された手段を備え、および前記第2のMMUは、前記第1のページテーブルおよび前記代替の場所のうちの少なくとも1つにアクセスするための手段を備える、C25に記載の装置。
[C27]
第1のページテーブルエントリを含む第1のページテーブルと、ここにおいて、前記第1のページテーブルエントリは物理アドレスをさらに含み、
前記第1のページテーブルエントリに関連付けられる代替の場所と、
前記物理アドレスに関連付けられるメモリの物理ページと、
を記憶するメモリと、
前記物理アドレスを前記第1のページテーブルから読み取ることと、
前記第1のページテーブルエントリから第1のページ属性データを決定することと、ここにおいて、前記第1のページ属性データは、第1の処理ユニットに関する前記メモリの物理ページの1つまたは複数のアクセス可能性属性を定義し、
前記第1のページ属性データの前記1つまたは複数のアクセス可能性属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスすることと、
を行うように構成された前記第1の処理ユニットと、
前記第1のページテーブルエントリを前記第1のページテーブルから読み取ることと、
前記第1のページテーブルエントリから前記物理アドレスを決定することと、
前記代替の場所から第2のページ属性データを決定することと、ここにおいて、前記代替の場所は、前記第1のページテーブルエントリに関連付けられ、前記第2のページ属性データは、第2の処理ユニットに関する前記メモリの物理ページの1つまたは複数のアクセス可能性属性を定義し、
前記第2のページ属性データの前記1つまたは複数のアクセス可能性属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスすることと、
を行うように構成された前記第2の処理ユニットと、
を備える、装置。
[C28]
前記代替の場所は、第2のページテーブル内の第2のページテーブルエントリを備え、ここにおいて、前記第2のページ属性データを決定するために、前記第2の処理ユニットは、前記第2のページテーブルエントリから前記第2のページ属性データを決定することと前記第1のページテーブルエントリを読み取ることを並行して行うようにさらに構成される、C27に記載の装置。
[C29]
前記代替の場所は、第2のページテーブル内の第2のページテーブルエントリであり、前記第2の処理ユニットは、
前記第1のページテーブルエントリから前記第2のページテーブルに関連付けられるデータを読み取るようにさらに構成され、
ここにおいて、前記第2のページ属性データを決定するために、前記第2の処理ユニットは、前記第2のページテーブルに関連付けられる前記データに基づいて、前記第2のページテーブルを識別するようにさらに構成される、C27に記載の装置。
[C30]
前記第2のページテーブルに関連付けられる前記データは、複数の並行するページテーブルから前記第2のページテーブルを識別する識別子を備える、C29に記載の装置。
[C31]
前記代替の場所は、前記第1のページテーブル内の第2のページテーブルエントリを備え、
ここにおいて、前記第1のページテーブル内の前記第2のページテーブルエントリは、前記第1のページテーブルエントリのポインタ値に基づいて、前記第1のページテーブルエントリに関連付けられる、C27に記載の装置。
[C32]
前記ポインタ値は、仮想アドレスおよび物理アドレスのうちの少なくとも1つを備える、C31に記載の装置。
[C33]
前記第2の処理ユニットは、
結合されたページ属性データの1つまたは複数のアクセス可能性属性を形成するために、前記第1のページ属性データの前記1つまたは複数の属性と前記第2のページ属性データの1つまたは複数の属性を組み合わせるようにさらに構成され、
ここにおいて、前記第2の処理ユニットは、前記結合されたページ属性データの前記1つまたは複数の属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスする、C27に記載の装置。
[C34]
前記第2のページ属性データは、前記第1のページ属性データの前記1つまたは複数の属性値とは異なる1つまたは複数の属性値を含む、C33に記載の装置。
[C35]
前記第1の処理ユニットは、前記第2のページ属性データが有効であるかどうかを示す前記第1のページテーブルエントリから有効データを読み取るようにさらに構成され、
ここにおいて、前記第2のページ属性データを決定するために、前記第2の処理ユニットは、
前記第1のページテーブルエントリからの前記有効データが、前記第2のページ属性データが有効であることを示す場合、前記第2のページ属性データを決定するようにさらに構成される、C27に記載の装置。
[C36]
前記第1のページ属性データと前記第2のページ属性データは、前記メモリのページが、読み取り可能、書き込み可能、キャッシュ可能、実行可能、およびダーティのうちの少なくとも1つであるかどうかを定義する、C27に記載の装置。
[C37]
前記代替の場所はレジスタを備え、
ここにおいて、前記レジスタは、前記第1のページテーブルエントリ内のポインタ値に基づいて、前記第1のページテーブルエントリに関連付けられる、C27に記載の装置。
[C38]
前記第1の処理ユニットはCPUであり、ならびに前記第2の処理ユニットはGPUである、C27に記載の装置。
[C39]
前記第1の処理をするための手段は、第1のメモリ管理ユニット(MMU)を備え、ならびに前記第2の処理をするための手段は第2のMMUを備え、
ここにおいて、前記第1のMMUは、前記第1のページテーブルおよび前記代替の場所のうちの少なくとも1つにアクセスするために構成された手段を備え、および
前記第2のMMUは、前記第1のページテーブルおよび前記代替の場所のうちの少なくとも1つにアクセスするための手段を備える、C38に記載の装置。
[C40]
命令を記憶した非一時的なコンピュータ可読記憶媒体であって、実行されると、第1の処理ユニットと第2の処理ユニットに、
第1の処理ユニットを用いて、第1のページテーブル内の第1のページテーブルエントリから物理アドレスを読み取ることと、
前記第1の処理ユニットを用いて、前記第1のページテーブルエントリから第1のページ属性データを決定することと、ここにおいて、前記第1のページ属性データは、前記第1の処理ユニットに関する前記メモリの物理ページの1つまたは複数のアクセス可能性属性を定義し、
前記第2の処理ユニットを用いて、前記第1のページテーブル内の前記第1のページテーブルエントリから前記物理アドレスを読み取ることと、
前記第2の処理ユニットを用いて、代替の場所から第2のページ属性データを決定することと、ここにおいて、前記代替の場所は、前記第1のページテーブルエントリに関連付けられ、前記第2のページ属性データは、前記第2の処理ユニットに関する前記メモリの物理ページの1つまたは複数のアクセス可能性属性を定義し、
前記第1の処理ユニットを用いて、前記第1のページ属性データの前記1つまたは複数のアクセス可能性属性にしたがって、前記物理アドレスに関連付けられるメモリの物理ページにアクセスすることと、
前記第2の処理ユニットを用いて、前記第2のページ属性データの前記1つまたは複数のアクセス可能性属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスすることと、
を行わせる、非一時的なコンピュータ可読記憶媒体。
[C41]
前記代替の場所は、第2のページテーブル内の第2のページテーブルエントリを備え、ここにおいて、前記第2の処理ユニットに前記第2のページ属性データを決定させる命令は、実行されると、前記第2の処理ユニットに、
前記第2のページテーブルエントリから前記第2のページ属性データを決定することと前記第1のページテーブルエントリを読み取ることを並行して行わせる命令をさらに備える、C40に記載の非一時的なコンピュータ可読記憶媒体。
[C42]
前記代替の場所は、第2のページテーブル内の第2のページテーブルエントリであり、
実行されると、前記第2の処理ユニットに、
前記第1のページテーブルエントリから前記第2のページテーブルに関連付けられるデータを読み取らせる命令をさらに備え、
ここにおいて、前記第2の処理ユニットに、前記第2のページ属性データを決定させる命令は、実行されると、前記第2の処理ユニットに、
前記第2のページテーブルに関連付けられる前記データに基づいて、前記第2のページテーブルを識別させる命令をさらに備える、C40に記載の非一時的なコンピュータ可読記憶媒体。
[C43]
前記第2のページテーブルに関連付けられる前記データは、複数の並行するページテーブルから前記第2のページテーブルを識別する識別子を備える、C42に記載の非一時的なコンピュータ可読記憶媒体。
[C44]
前記代替の場所は、前記第1のページテーブル内の第2のページテーブルエントリを備え、
ここにおいて、前記第1のページテーブル内の前記第2のページテーブルエントリは、前記第1のページテーブルエントリのポインタ値に基づいて、前記第1のページテーブルエントリに関連付けられる、C40に記載の非一時的なコンピュータ可読記憶媒体。
[C45]
前記ポインタ値は、仮想アドレスと物理アドレスのうちの少なくとも1つを備える、C44に記載の非一時的なコンピュータ可読記憶媒体。
[C46]
実行されると、前記第2の処理ユニットに、
結合されたページ属性データの1つまたは複数のアクセス可能性属性を形成するために、前記第1のページ属性データの前記1つまたは複数の属性と前記第2のページ属性データの1つまたは複数の属性を組み合わせること行わせる命令をさらに備え、
ここにおいて、前記第2の処理ユニットは、前記結合されたページ属性データの前記1つまたは複数の属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスする、C40に記載の非一時的なコンピュータ可読記憶媒体。
[C47]
前記第2のページ属性データは、前記第1のページ属性データの前記1つまたは複数の属性値とは異なる1つまたは複数の属性値を含む、C46に記載の非一時的なコンピュータ可読記憶媒体。
[C48]
実行されると、前記第1の処理ユニットに、
前記第2のページ属性データが有効であるかどうかを示す前記第1のページテーブルエントリから有効データを読み取らせる命令をさらに備え、
ここにおいて、前記第2の処理ユニットに前記第2のページ属性データを決定することを行わせる命令は、実行されると、前記第2の処理ユニットに、
前記第1のページテーブルエントリからの前記有効データが、前記第2のページ属性データが有効であることを示す場合、前記第2のページ属性データを決定させる命令をさらに備える、C40に記載の非一時的なコンピュータ可読記憶媒体。
[C49]
前記第1のページ属性データと前記第2のページ属性データは、前記メモリのページが、読み取り可能、書き込み可能、キャッシュ可能、実行可能、およびダーティのうちの少なくとも1つであるかどうかを定義する、C40に記載の非一時的なコンピュータ可読記憶媒体。
[C50]
前記代替の場所はレジスタを備え、
ここにおいて、前記レジスタは、前記第1のページテーブルエントリ内のポインタ値に基づいて、前記第1のページテーブルエントリに関連付けられる、C40に記載の非一時的なコンピュータ可読記憶媒体。
[C51]
前記第1の処理ユニットはCPUであり、ならびに前記第2の処理ユニットはGPUである、C40に記載の非一時的なコンピュータ可読記憶媒体。
[C52]
前記第1の処理ユニットは第1のメモリ管理ユニット(MMU)を備え、ならびに前記第2の処理ユニットは第2のMMUを備え、ここにおいて、前記第1のMMUは、前記第1のページテーブルおよび前記代替の場所のうちの少なくとも1つにアクセスするように構成され、および前記第2のMMUは、前記第1のページテーブルおよび前記代替の場所のうちの少なくとも1つにアクセスするように構成される、C51に記載の非一時的なコンピュータ可読記憶媒体。
Claims (52)
- 第1の処理ユニットを用いて、第1のページテーブル内の第1のページテーブルエントリから物理アドレスを読み取ることと、
前記第1の処理ユニットを用いて、前記第1のページテーブルエントリから第1のページ属性データを決定することと、ここにおいて、前記第1のページ属性データは、前記第1の処理ユニットに関する前記メモリの物理ページの1つまたは複数のアクセス可能性属性を定義し、
前記第2の処理ユニットを用いて、前記第1のページテーブル内の前記第1のページテーブルエントリから前記物理アドレスを読み取ることと、
前記第2の処理ユニットを用いて、代替の場所から第2のページ属性データを決定することと、ここにおいて、前記代替の場所は、前記第1のページテーブルエントリに関連付けられ、前記第2のページ属性データは、前記第2の処理ユニットに関する前記メモリの物理ページの1つまたは複数のアクセス可能性属性を定義し、
前記第1の処理ユニットを用いて、前記第1のページ属性データの前記1つまたは複数のアクセス可能性属性にしたがって、前記物理アドレスに関連付けられるメモリの物理ページにアクセスすることと、
前記第2の処理ユニットを用いて、前記第2のページ属性データの前記1つまたは複数のアクセス可能性属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスすることと、
を備える、メモリにアクセスする方法。 - 前記代替の場所は、第2のページテーブル内の第2のページテーブルエントリを備え、ここにおいて、前記第2のページ属性データを決定することは、
前記第2の処理ユニットを用いて、前記第1のページテーブルエントリを読み取ることと並行して、前記第2のページテーブルエントリから前記第2のページ属性データを決定することをさらに備える、請求項1に記載の方法。 - 前記代替の場所は、第2のページテーブル内の第2のページテーブルエントリであり、前記方法は、
前記第2の処理ユニットを用いて、前記第1のページテーブルエントリから前記第2のページテーブルに関連付けられるデータを読み取ることをさらに備え、
ここにおいて、前記第2のページ属性データを決定することは、
前記第2の処理ユニットを用いて、前記第2のページテーブルに関連付けられる前記データに基づいて、前記第2のページテーブルを識別することをさらに備える、請求項1に記載の方法。 - 前記第2のページテーブルに関連付けられる前記データは、複数の並行するページテーブルから前記第2のページテーブルを識別する識別子を備える、請求項3に記載の方法。
- 前記代替の場所は、前記第1のページテーブル内の第2のページテーブルエントリを備え、
ここにおいて、前記第1のページテーブル内の前記第2のページテーブルエントリは、前記第1のページテーブルエントリのポインタ値に基づいて、前記第1のページテーブルエントリに関連付けられる、請求項1に記載の方法。 - 前記ポインタ値は、仮想アドレスと物理アドレスのうちの少なくとも1つを備える、請求項5に記載の方法。
- 結合されたページ属性データの1つまたは複数のアクセス可能性属性を形成するために、前記第2の処理ユニットを用いて、前記第1のページ属性データの前記1つまたは複数の属性と前記第2のページ属性データの1つまたは複数の属性を組み合わせることをさらに備え、
ここにおいて、前記第2の処理ユニットは、前記結合されたページ属性データの前記1つまたは複数の属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスする、請求項1に記載の方法。 - 前記第2のページ属性データは、前記第1のページ属性データの前記1つまたは複数の属性値とは異なる1つまたは複数の属性値を含む、請求項7に記載の方法。
- 前記第1の処理ユニットを用いて、前記第2のページ属性データが有効であるかどうかを示す前記第1のページテーブルエントリから有効データを読み取ることをさらに備え、
ここにおいて、前記第2のページ属性データを決定することは、前記第1のページテーブルエントリからの前記有効データが、前記第2のページ属性データが有効であることを示す場合、前記第2の処理ユニットを用いて、前記第2のページ属性データを決定することをさらに備える、請求項1に記載の方法。 - 前記第1のページ属性データと前記第2のページ属性データは、前記メモリのページが、読み取り可能、書き込み可能、キャッシュ可能、実行可能、およびダーティのうちの少なくとも1つであるかどうかを定義する、請求項1に記載の方法。
- 前記代替の場所はレジスタを備え、
ここにおいて、前記レジスタは、前記第1のページテーブルエントリ内のポインタ値に基づいて、前記第1のページテーブルエントリに関連付けられる、請求項1に記載の方法。 - 前記第1の処理ユニットはCPUであり、ならびに前記第2の処理ユニットはGPUである、請求項1に記載の方法。
- 前記第1の処理ユニットは第1のメモリ管理ユニット(MMU)を備え、ならびに前記第2の処理ユニットは第2のMMUを備え、ここにおいて、前記第1のMMUは、前記第1のページテーブルおよび前記代替の場所のうちの少なくとも1つにアクセスするように構成され、および前記第2のMMUは、前記第1のページテーブルおよび前記代替の場所のうちの少なくとも1つにアクセスするように構成される、請求項12に記載の方法。
- 第1のページテーブルエントリを含む第1のページテーブルと、ここにおいて、前記第1のページテーブルエントリは物理アドレスをさらに含み、
前記第1のページテーブルエントリに関連付けられる代替の場所と、
前記物理アドレスに関連付けられるメモリの物理ページと、
を記憶するための手段と、
第1の処理をするための手段と、ここにおいて、前記第1の処理をするための手段は、
前記物理アドレスを前記第1のページテーブルエントリから読み取るための手段と、
前記第1のページテーブルエントリから第1のページ属性データを決定するための手段と、ここにおいて、前記第1のページ属性データは、前記第1の処理をするための手段に関する前記メモリの物理ページの1つまたは複数のアクセス可能性属性を定義し、
前記第1のページ属性データの前記1つまたは複数のアクセス可能性属性にしたがって、前記物理アドレスを用いてメモリの物理ページにアクセスするための手段と、
を備え、
第2の処理をするための手段と、ここにおいて、前記第2の処理をするための手段は、
前記第1のページテーブルエントリを前記第1のページテーブルから読み取るための手段と、
前記第1のページテーブルエントリから前記物理アドレスを決定するための手段と、
前記代替の場所から第2のページ属性データを決定するための手段と、ここにおいて、前記代替の場所は、前記第1のページテーブルエントリに関連付けられ、前記第2のページ属性データは、前記第2の処理をするための手段に関する前記メモリの物理ページの1つまたは複数のアクセス可能性属性を定義し、
前記第2のページ属性データの前記1つまたは複数のアクセス可能性属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスするための手段と、
を備え、
を備える装置。 - 前記代替の場所は、第2のページテーブル内の第2のページテーブルエントリを備え、ここにおいて、前記第2のページ属性データを決定するための前記手段は、
前記第1のページ属性データを決定するための前記手段と並行して、前記第2のページテーブルエントリから前記第2のページ属性データを決定するための手段をさらに備える、請求項14に記載の装置。 - 前記代替の場所は、第2のページテーブル内の第2のページテーブルエントリであり、前記第2の処理をするための手段は、
前記第1のページテーブルエントリから前記第2のページテーブルに関連付けられるデータを読み取るための手段をさらに備え、
ここにおいて、前記第2のページ属性データを決定するための前記手段は、
前記第2のページテーブルに関連付けられる前記データに基づいて、前記第2のページテーブルを識別するための手段をさらに備える、請求項14に記載の装置。 - 前記第2のページテーブルに関連付けられる前記データは、複数の並行するページテーブルから前記第2のページテーブルを識別する識別子を備える、請求項16に記載の装置。
- 前記代替の場所は、前記第1のページテーブル内の第2のページテーブルエントリを備え、
ここにおいて、前記第1のページテーブル内の前記第2のページテーブルエントリは、前記第1のページテーブルエントリのポインタ値に基づいて、前記第1のページテーブルエントリに関連付けられる、請求項14に記載の装置。 - 前記ポインタ値は、仮想アドレスと物理アドレスのうちの少なくとも1つを備える、請求項18に記載の装置。
- 前記第2の処理をするための手段は、
結合されたページ属性データの1つまたは複数のアクセス可能性属性を形成するために、前記第1のページ属性データの前記1つまたは複数の属性と前記第2のページ属性データの1つまたは複数の属性を組み合わせるための手段をさらに備え、
ここにおいて、前記第2の処理をするための手段が、前記結合されたページ属性データの前記1つまたは複数の属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスする、請求項14に記載の装置。 - 前記第2のページ属性データは、前記第1のページ属性データの前記1つまたは複数の属性値とは異なる1つまたは複数の属性値を含む、請求項20に記載の装置。
- 前記第1の処理をするための手段は、前記第2のページ属性データが有効であるかどうかを示す前記第1のページテーブルエントリから有効データを読み取るための手段をさらに備え、
ここにおいて、前記第2のページ属性データを決定するための前記手段は、
前記第1のページテーブルエントリからの前記有効データが、前記第2のページ属性データが有効であることを示す場合、前記第2のページ属性データを決定するための手段をさらに備える、請求項14に記載の装置。 - 前記第1のページ属性データと前記第2のページ属性データは、前記メモリのページが、読み取り可能、書き込み可能、キャッシュ可能、実行可能、およびダーティのうちの少なくとも1つであるかどうかを定義する、請求項14に記載の装置。
- 前記代替の場所はレジスタを備え、
ここにおいて、前記レジスタは、前記第1のページテーブルエントリ内のポインタ値に基づいて、前記第1のページテーブルエントリに関連付けられる、請求項14に記載の装置。 - 前記第1の処理をするための手段はCPUであり、ならびに前記第2の処理をするための手段はGPUである、請求項14に記載の装置。
- 前記第1の処理をするための手段は第1のメモリ管理ユニット(MMU)を備え、ならびに前記第2の処理をするための手段は第2のMMUを備え、
ここにおいて、前記第1のMMUは、前記第1のページテーブルおよび前記代替の場所のうちの少なくとも1つにアクセスするために構成された手段を備え、および前記第2のMMUは、前記第1のページテーブルおよび前記代替の場所のうちの少なくとも1つにアクセスするための手段を備える、請求項25に記載の装置。 - 第1のページテーブルエントリを含む第1のページテーブルと、ここにおいて、前記第1のページテーブルエントリは物理アドレスをさらに含み、
前記第1のページテーブルエントリに関連付けられる代替の場所と、
前記物理アドレスに関連付けられるメモリの物理ページと、
を記憶するメモリと、
前記物理アドレスを前記第1のページテーブルから読み取ることと、
前記第1のページテーブルエントリから第1のページ属性データを決定することと、ここにおいて、前記第1のページ属性データは、第1の処理ユニットに関する前記メモリの物理ページの1つまたは複数のアクセス可能性属性を定義し、
前記第1のページ属性データの前記1つまたは複数のアクセス可能性属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスすることと、
を行うように構成された前記第1の処理ユニットと、
前記第1のページテーブルエントリを前記第1のページテーブルから読み取ることと、
前記第1のページテーブルエントリから前記物理アドレスを決定することと、
前記代替の場所から第2のページ属性データを決定することと、ここにおいて、前記代替の場所は、前記第1のページテーブルエントリに関連付けられ、前記第2のページ属性データは、第2の処理ユニットに関する前記メモリの物理ページの1つまたは複数のアクセス可能性属性を定義し、
前記第2のページ属性データの前記1つまたは複数のアクセス可能性属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスすることと、
を行うように構成された前記第2の処理ユニットと、
を備える、装置。 - 前記代替の場所は、第2のページテーブル内の第2のページテーブルエントリを備え、ここにおいて、前記第2のページ属性データを決定するために、前記第2の処理ユニットは、前記第2のページテーブルエントリから前記第2のページ属性データを決定することと前記第1のページテーブルエントリを読み取ることを並行して行うようにさらに構成される、請求項27に記載の装置。
- 前記代替の場所は、第2のページテーブル内の第2のページテーブルエントリであり、前記第2の処理ユニットは、
前記第1のページテーブルエントリから前記第2のページテーブルに関連付けられるデータを読み取るようにさらに構成され、
ここにおいて、前記第2のページ属性データを決定するために、前記第2の処理ユニットは、前記第2のページテーブルに関連付けられる前記データに基づいて、前記第2のページテーブルを識別するようにさらに構成される、請求項27に記載の装置。 - 前記第2のページテーブルに関連付けられる前記データは、複数の並行するページテーブルから前記第2のページテーブルを識別する識別子を備える、請求項29に記載の装置。
- 前記代替の場所は、前記第1のページテーブル内の第2のページテーブルエントリを備え、
ここにおいて、前記第1のページテーブル内の前記第2のページテーブルエントリは、前記第1のページテーブルエントリのポインタ値に基づいて、前記第1のページテーブルエントリに関連付けられる、請求項27に記載の装置。 - 前記ポインタ値は、仮想アドレスおよび物理アドレスのうちの少なくとも1つを備える、請求項31に記載の装置。
- 前記第2の処理ユニットは、
結合されたページ属性データの1つまたは複数のアクセス可能性属性を形成するために、前記第1のページ属性データの前記1つまたは複数の属性と前記第2のページ属性データの1つまたは複数の属性を組み合わせるようにさらに構成され、
ここにおいて、前記第2の処理ユニットは、前記結合されたページ属性データの前記1つまたは複数の属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスする、請求項27に記載の装置。 - 前記第2のページ属性データは、前記第1のページ属性データの前記1つまたは複数の属性値とは異なる1つまたは複数の属性値を含む、請求項33に記載の装置。
- 前記第1の処理ユニットは、前記第2のページ属性データが有効であるかどうかを示す前記第1のページテーブルエントリから有効データを読み取るようにさらに構成され、
ここにおいて、前記第2のページ属性データを決定するために、前記第2の処理ユニットは、
前記第1のページテーブルエントリからの前記有効データが、前記第2のページ属性データが有効であることを示す場合、前記第2のページ属性データを決定するようにさらに構成される、請求項27に記載の装置。 - 前記第1のページ属性データと前記第2のページ属性データは、前記メモリのページが、読み取り可能、書き込み可能、キャッシュ可能、実行可能、およびダーティのうちの少なくとも1つであるかどうかを定義する、請求項27に記載の装置。
- 前記代替の場所はレジスタを備え、
ここにおいて、前記レジスタは、前記第1のページテーブルエントリ内のポインタ値に基づいて、前記第1のページテーブルエントリに関連付けられる、請求項27に記載の装置。 - 前記第1の処理ユニットはCPUであり、ならびに前記第2の処理ユニットはGPUである、請求項27に記載の装置。
- 前記第1の処理をするための手段は、第1のメモリ管理ユニット(MMU)を備え、ならびに前記第2の処理をするための手段は第2のMMUを備え、
ここにおいて、前記第1のMMUは、前記第1のページテーブルおよび前記代替の場所のうちの少なくとも1つにアクセスするために構成された手段を備え、および
前記第2のMMUは、前記第1のページテーブルおよび前記代替の場所のうちの少なくとも1つにアクセスするための手段を備える、請求項38に記載の装置。 - 命令を記憶した非一時的なコンピュータ可読記憶媒体であって、実行されると、第1の処理ユニットと第2の処理ユニットに、
第1の処理ユニットを用いて、第1のページテーブル内の第1のページテーブルエントリから物理アドレスを読み取ることと、
前記第1の処理ユニットを用いて、前記第1のページテーブルエントリから第1のページ属性データを決定することと、ここにおいて、前記第1のページ属性データは、前記第1の処理ユニットに関する前記メモリの物理ページの1つまたは複数のアクセス可能性属性を定義し、
前記第2の処理ユニットを用いて、前記第1のページテーブル内の前記第1のページテーブルエントリから前記物理アドレスを読み取ることと、
前記第2の処理ユニットを用いて、代替の場所から第2のページ属性データを決定することと、ここにおいて、前記代替の場所は、前記第1のページテーブルエントリに関連付けられ、前記第2のページ属性データは、前記第2の処理ユニットに関する前記メモリの物理ページの1つまたは複数のアクセス可能性属性を定義し、
前記第1の処理ユニットを用いて、前記第1のページ属性データの前記1つまたは複数のアクセス可能性属性にしたがって、前記物理アドレスに関連付けられるメモリの物理ページにアクセスすることと、
前記第2の処理ユニットを用いて、前記第2のページ属性データの前記1つまたは複数のアクセス可能性属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスすることと、
を行わせる、非一時的なコンピュータ可読記憶媒体。 - 前記代替の場所は、第2のページテーブル内の第2のページテーブルエントリを備え、ここにおいて、前記第2の処理ユニットに前記第2のページ属性データを決定させる命令は、実行されると、前記第2の処理ユニットに、
前記第2のページテーブルエントリから前記第2のページ属性データを決定することと前記第1のページテーブルエントリを読み取ることを並行して行わせる命令をさらに備える、請求項40に記載の非一時的なコンピュータ可読記憶媒体。 - 前記代替の場所は、第2のページテーブル内の第2のページテーブルエントリであり、
実行されると、前記第2の処理ユニットに、
前記第1のページテーブルエントリから前記第2のページテーブルに関連付けられるデータを読み取らせる命令をさらに備え、
ここにおいて、前記第2の処理ユニットに、前記第2のページ属性データを決定させる命令は、実行されると、前記第2の処理ユニットに、
前記第2のページテーブルに関連付けられる前記データに基づいて、前記第2のページテーブルを識別させる命令をさらに備える、請求項40に記載の非一時的なコンピュータ可読記憶媒体。 - 前記第2のページテーブルに関連付けられる前記データは、複数の並行するページテーブルから前記第2のページテーブルを識別する識別子を備える、請求項42に記載の非一時的なコンピュータ可読記憶媒体。
- 前記代替の場所は、前記第1のページテーブル内の第2のページテーブルエントリを備え、
ここにおいて、前記第1のページテーブル内の前記第2のページテーブルエントリは、前記第1のページテーブルエントリのポインタ値に基づいて、前記第1のページテーブルエントリに関連付けられる、請求項40に記載の非一時的なコンピュータ可読記憶媒体。 - 前記ポインタ値は、仮想アドレスと物理アドレスのうちの少なくとも1つを備える、請求項44に記載の非一時的なコンピュータ可読記憶媒体。
- 実行されると、前記第2の処理ユニットに、
結合されたページ属性データの1つまたは複数のアクセス可能性属性を形成するために、前記第1のページ属性データの前記1つまたは複数の属性と前記第2のページ属性データの1つまたは複数の属性を組み合わせること行わせる命令をさらに備え、
ここにおいて、前記第2の処理ユニットは、前記結合されたページ属性データの前記1つまたは複数の属性にしたがって、前記物理アドレスに関連付けられる前記メモリの物理ページにアクセスする、請求項40に記載の非一時的なコンピュータ可読記憶媒体。 - 前記第2のページ属性データは、前記第1のページ属性データの前記1つまたは複数の属性値とは異なる1つまたは複数の属性値を含む、請求項46に記載の非一時的なコンピュータ可読記憶媒体。
- 実行されると、前記第1の処理ユニットに、
前記第2のページ属性データが有効であるかどうかを示す前記第1のページテーブルエントリから有効データを読み取らせる命令をさらに備え、
ここにおいて、前記第2の処理ユニットに前記第2のページ属性データを決定することを行わせる命令は、実行されると、前記第2の処理ユニットに、
前記第1のページテーブルエントリからの前記有効データが、前記第2のページ属性データが有効であることを示す場合、前記第2のページ属性データを決定させる命令をさらに備える、請求項40に記載の非一時的なコンピュータ可読記憶媒体。 - 前記第1のページ属性データと前記第2のページ属性データは、前記メモリのページが、読み取り可能、書き込み可能、キャッシュ可能、実行可能、およびダーティのうちの少なくとも1つであるかどうかを定義する、請求項40に記載の非一時的なコンピュータ可読記憶媒体。
- 前記代替の場所はレジスタを備え、
ここにおいて、前記レジスタは、前記第1のページテーブルエントリ内のポインタ値に基づいて、前記第1のページテーブルエントリに関連付けられる、請求項40に記載の非一時的なコンピュータ可読記憶媒体。 - 前記第1の処理ユニットはCPUであり、ならびに前記第2の処理ユニットはGPUである、請求項40に記載の非一時的なコンピュータ可読記憶媒体。
- 前記第1の処理ユニットは第1のメモリ管理ユニット(MMU)を備え、ならびに前記第2の処理ユニットは第2のMMUを備え、ここにおいて、前記第1のMMUは、前記第1のページテーブルおよび前記代替の場所のうちの少なくとも1つにアクセスするように構成され、および前記第2のMMUは、前記第1のページテーブルおよび前記代替の場所のうちの少なくとも1つにアクセスするように構成される、請求項51に記載の非一時的なコンピュータ可読記憶媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/888,069 US9436616B2 (en) | 2013-05-06 | 2013-05-06 | Multi-core page table sets of attribute fields |
US13/888,069 | 2013-05-06 | ||
PCT/US2014/035036 WO2014182443A1 (en) | 2013-05-06 | 2014-04-22 | Multi-core page table sets of attribute fields |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2016517992A true JP2016517992A (ja) | 2016-06-20 |
JP2016517992A5 JP2016517992A5 (ja) | 2016-12-15 |
JP6067928B2 JP6067928B2 (ja) | 2017-01-25 |
Family
ID=50884497
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016512914A Active JP6067928B2 (ja) | 2013-05-06 | 2014-04-22 | 属性フィールドのマルチコアページテーブルセット |
Country Status (8)
Country | Link |
---|---|
US (1) | US9436616B2 (ja) |
EP (1) | EP2994837B1 (ja) |
JP (1) | JP6067928B2 (ja) |
KR (1) | KR101708142B1 (ja) |
CN (1) | CN105164653B (ja) |
ES (1) | ES2642347T3 (ja) |
HU (1) | HUE035960T2 (ja) |
WO (1) | WO2014182443A1 (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140331019A1 (en) * | 2013-05-06 | 2014-11-06 | Microsoft Corporation | Instruction set specific execution isolation |
US9817689B2 (en) | 2015-02-27 | 2017-11-14 | Red Hat, Inc. | Dirty page tracking of guest-uncached memory |
US10114768B2 (en) * | 2016-08-29 | 2018-10-30 | Intel Corporation | Enhance memory access permission based on per-page current privilege level |
US10713177B2 (en) | 2016-09-09 | 2020-07-14 | Intel Corporation | Defining virtualized page attributes based on guest page attributes |
CN110007987B (zh) * | 2018-01-05 | 2022-03-25 | 武汉斗鱼网络科技有限公司 | 一种视图对象的层级管理方法及系统 |
US10713746B2 (en) | 2018-01-29 | 2020-07-14 | Microsoft Technology Licensing, Llc | FIFO queue, memory resource, and task management for graphics processing |
US10719268B2 (en) * | 2018-06-29 | 2020-07-21 | Microsoft Technology Licensing, Llc | Techniques for safely and efficiently enqueueing and dequeueing data on a graphics processor |
US11914726B2 (en) | 2018-08-30 | 2024-02-27 | Micron Technology, Inc. | Access control for processor registers based on execution domains |
US10915457B2 (en) * | 2018-08-30 | 2021-02-09 | Micron Technology, Inc. | Memory access control through permissions specified in page table entries for execution domains |
US10691592B2 (en) * | 2018-10-30 | 2020-06-23 | Micron Technology, Inc. | Error-checking in namespaces on storage devices using a namespace table and metadata |
US11216385B2 (en) | 2019-05-15 | 2022-01-04 | Samsung Electronics Co., Ltd. | Application processor, system-on chip and method of operating memory management unit |
US11119914B2 (en) * | 2019-11-15 | 2021-09-14 | Micron Technology, Inc. | Method of operating a memory with dynamically changeable attributes |
GB2604629B (en) * | 2021-03-10 | 2023-06-07 | Imagination Tech Ltd | A computer system and method using a first page table and a second page table |
KR20220147277A (ko) | 2021-04-27 | 2022-11-03 | 삼성전자주식회사 | 제어 장치, 이를 포함하는 컴퓨팅 시스템, 및 이의 페이지 테이블 엔트리 생성 및 탐색 방법 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03127146A (ja) * | 1989-10-12 | 1991-05-30 | Koufu Nippon Denki Kk | 情報処理装置 |
JPH0793220A (ja) * | 1993-09-20 | 1995-04-07 | Agency Of Ind Science & Technol | 仮想記憶管理方式 |
JP2003067357A (ja) * | 2001-06-21 | 2003-03-07 | Internatl Business Mach Corp <Ibm> | 不均一メモリ・アクセス(numa)データ処理システムおよびその操作方法 |
US20070168644A1 (en) * | 2006-01-17 | 2007-07-19 | Hummel Mark D | Using an IOMMU to Create Memory Archetypes |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6446034B1 (en) | 1998-12-16 | 2002-09-03 | Bull Hn Information Systems Inc. | Processor emulation virtual memory address translation |
US6286092B1 (en) | 1999-05-12 | 2001-09-04 | Ati International Srl | Paged based memory address translation table update method and apparatus |
US7444636B2 (en) | 2002-07-15 | 2008-10-28 | Hewlett-Packard Development Company, L.P. | Method and system of determining attributes of a functional unit in a multiple processor computer system |
US7111145B1 (en) | 2003-03-25 | 2006-09-19 | Vmware, Inc. | TLB miss fault handler and method for accessing multiple page tables |
US7366869B2 (en) * | 2005-03-17 | 2008-04-29 | Qualcomm Incorporated | Method and system for optimizing translation lookaside buffer entries |
US7539842B2 (en) | 2006-08-15 | 2009-05-26 | International Business Machines Corporation | Computer memory system for selecting memory buses according to physical memory organization information stored in virtual address translation tables |
US7865675B2 (en) | 2007-12-06 | 2011-01-04 | Arm Limited | Controlling cleaning of data values within a hardware accelerator |
US8015361B2 (en) | 2007-12-14 | 2011-09-06 | International Business Machines Corporation | Memory-centric page table walker |
US8620880B2 (en) | 2008-05-30 | 2013-12-31 | Nec Corporation | Database system, method of managing database, and computer-readable storage medium |
US8244981B2 (en) | 2009-07-10 | 2012-08-14 | Apple Inc. | Combined transparent/non-transparent cache |
US20110016290A1 (en) | 2009-07-14 | 2011-01-20 | Arie Chobotaro | Method and Apparatus for Supporting Address Translation in a Multiprocessor Virtual Machine Environment |
US20110161620A1 (en) * | 2009-12-29 | 2011-06-30 | Advanced Micro Devices, Inc. | Systems and methods implementing shared page tables for sharing memory resources managed by a main operating system with accelerator devices |
US20120233439A1 (en) | 2011-03-11 | 2012-09-13 | Boris Ginzburg | Implementing TLB Synchronization for Systems with Shared Virtual Memory Between Processing Devices |
US8938602B2 (en) | 2012-08-02 | 2015-01-20 | Qualcomm Incorporated | Multiple sets of attribute fields within a single page table entry |
-
2013
- 2013-05-06 US US13/888,069 patent/US9436616B2/en active Active
-
2014
- 2014-04-22 ES ES14728008.5T patent/ES2642347T3/es active Active
- 2014-04-22 HU HUE14728008A patent/HUE035960T2/en unknown
- 2014-04-22 EP EP14728008.5A patent/EP2994837B1/en active Active
- 2014-04-22 KR KR1020157031381A patent/KR101708142B1/ko active IP Right Grant
- 2014-04-22 WO PCT/US2014/035036 patent/WO2014182443A1/en active Application Filing
- 2014-04-22 JP JP2016512914A patent/JP6067928B2/ja active Active
- 2014-04-22 CN CN201480024817.0A patent/CN105164653B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03127146A (ja) * | 1989-10-12 | 1991-05-30 | Koufu Nippon Denki Kk | 情報処理装置 |
JPH0793220A (ja) * | 1993-09-20 | 1995-04-07 | Agency Of Ind Science & Technol | 仮想記憶管理方式 |
JP2003067357A (ja) * | 2001-06-21 | 2003-03-07 | Internatl Business Mach Corp <Ibm> | 不均一メモリ・アクセス(numa)データ処理システムおよびその操作方法 |
US20070168644A1 (en) * | 2006-01-17 | 2007-07-19 | Hummel Mark D | Using an IOMMU to Create Memory Archetypes |
Also Published As
Publication number | Publication date |
---|---|
CN105164653A (zh) | 2015-12-16 |
EP2994837A1 (en) | 2016-03-16 |
US9436616B2 (en) | 2016-09-06 |
EP2994837B1 (en) | 2017-07-12 |
KR101708142B1 (ko) | 2017-02-27 |
KR20160008176A (ko) | 2016-01-21 |
HUE035960T2 (en) | 2018-05-28 |
US20140331023A1 (en) | 2014-11-06 |
ES2642347T3 (es) | 2017-11-16 |
CN105164653B (zh) | 2018-06-19 |
WO2014182443A1 (en) | 2014-11-13 |
JP6067928B2 (ja) | 2017-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6067928B2 (ja) | 属性フィールドのマルチコアページテーブルセット | |
JP6728419B2 (ja) | 単一のページテーブルエントリ内の複数のセットの属性フィールド | |
US7613898B2 (en) | Virtualizing an IOMMU | |
JP5680642B2 (ja) | 周辺相互接続におけるi/o及び計算負荷軽減デバイスのための2レベルのアドレストランスレーションを用いるiommu | |
KR101614865B1 (ko) | I/o 및 계산 오프로드를 위해 복수레벨 어드레스 변환을 포함하는 i/o 메모리 관리 유닛 | |
US8631170B2 (en) | Memory overcommit by using an emulated IOMMU in a computer system with a host IOMMU | |
JP2015503805A (ja) | 物理アドレスを用いる非割当てメモリアクセス | |
US10459852B1 (en) | Memory utilization analysis for memory management systems | |
US20160188251A1 (en) | Techniques for Creating a Notion of Privileged Data Access in a Unified Virtual Memory System | |
US8347064B1 (en) | Memory access techniques in an aperture mapped memory space | |
CN114063934B (zh) | 数据更新装置、方法及电子设备 | |
WO2023064590A1 (en) | Software indirection level for address translation sharing | |
WO2023064609A1 (en) | Translation tagging for address translation caching |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161026 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161026 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20161026 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20161116 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20161122 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161221 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6067928 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |