JP7444610B2 - コンテキスト・データ管理 - Google Patents
コンテキスト・データ管理 Download PDFInfo
- Publication number
- JP7444610B2 JP7444610B2 JP2019572679A JP2019572679A JP7444610B2 JP 7444610 B2 JP7444610 B2 JP 7444610B2 JP 2019572679 A JP2019572679 A JP 2019572679A JP 2019572679 A JP2019572679 A JP 2019572679A JP 7444610 B2 JP7444610 B2 JP 7444610B2
- Authority
- JP
- Japan
- Prior art keywords
- context data
- context
- processing
- data
- dependent
- 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.)
- Active
Links
- 238000013523 data management Methods 0.000 title description 3
- 230000001419 dependent effect Effects 0.000 claims description 68
- 238000000034 method Methods 0.000 claims description 14
- 230000004044 response Effects 0.000 claims description 12
- 230000001960 triggered effect Effects 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 2
- 238000013500 data storage Methods 0.000 claims 1
- 238000004321 preservation Methods 0.000 claims 1
- 230000006870 function Effects 0.000 description 37
- BXLICFUSUZPSHT-UHFFFAOYSA-N 1-(4-chlorophenyl)-3-fluoropropan-2-amine Chemical compound FCC(N)CC1=CC=C(Cl)C=C1 BXLICFUSUZPSHT-UHFFFAOYSA-N 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 241000183024 Populus tremula Species 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
- G06F9/30043—LOAD or STORE instructions; Clear instruction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
- G06F9/30189—Instruction operation extension or modification according to execution mode, e.g. mode flag
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/629—Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30032—Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30076—Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/30101—Special purpose registers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/3012—Organisation of register space, e.g. banked or distributed register file
- G06F9/3013—Organisation of register space, e.g. banked or distributed register file according to data content, e.g. floating-point registers, address registers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/461—Saving or restoring of program or task context
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Executing Machine-Instructions (AREA)
- Storage Device Security (AREA)
- Communication Control (AREA)
- Multimedia (AREA)
Description
プログラム命令の制御下で処理動作を実施するための処理回路と、
前記プログラム命令をデコードして、前記処理動作を実施するよう前記処理回路を制御するための制御信号を生成するためのデコーダ回路とを含み、
前記デコーダ回路が、少なくとも1つのコンテキスト・データ依存プログラム命令及びコンテキスト・データに応答して、前記コンテキスト・データ依存プログラム命令及び前記コンテキスト・データによって指定されたコンテキスト・データ依存処理動作を実施するよう前記処理回路を制御するための前記制御信号を生成し、
前記デコーダ回路が、コンテキスト保存命令に応答し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されたものとして記録されている場合に、前記コンテキスト・データを保存するよう前記処理回路を制御し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されていないものとして記録されている場合に、デフォルトのコンテキスト・データを保存するよう前記処理回路を制御する、装置を提供する。
プログラム命令の制御下で処理動作を実施するための処理回路と、
前記プログラム命令をデコードして、前記処理動作を実施するよう前記処理回路を制御するための制御信号を生成するためのデコーダ回路とを含み、
前記デコーダ回路が、少なくとも1つのコンテキスト・データ依存プログラム命令及びコンテキスト・データに応答して、前記コンテキスト・データ依存プログラム命令及び前記コンテキスト・データによって指定されたコンテキスト・データ依存処理動作を実施するよう前記処理回路を制御するための前記制御信号を生成し、
前記デコーダ回路が、コンテキスト復元命令に応答し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されたものとして記録されている場合に、格納されたコンテキスト・データを使用して前記コンテキスト・データを復元するよう前記処理回路を制御し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されていないものとして記録されている場合に、前記コンテキスト・データを維持するよう前記処理回路を制御する、装置を提供する。
プログラム命令の制御下で処理動作を実施するための処理手段と、
前記プログラム命令をデコードして、前記処理動作を実施するよう前記処理手段を制御するための制御信号を生成するためのデコーダ手段とを含み、
前記デコーダ手段が、少なくとも1つのコンテキスト・データ依存プログラム命令及びコンテキスト・データに応答して、前記コンテキスト・データ依存プログラム命令及び前記コンテキスト・データによって指定されたコンテキスト・データ依存処理動作を実施するよう前記処理手段を制御するための前記制御信号を生成し、
前記デコーダ手段が、コンテキスト保存命令に応答し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されたものとして記録されている場合に、前記コンテキスト・データを保存するよう前記処理手段を制御し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されていないものとして記録されている場合に、デフォルトのコンテキスト・データを保存するよう前記処理手段を制御する、装置を提供する。
プログラム命令の制御下で処理動作を実施するための処理手段と、
前記プログラム命令をデコードして、前記処理動作を実施するよう前記処理手段を制御するための制御信号を生成するためのデコーダ手段とを含み、
前記デコーダ手段が、少なくとも1つのコンテキスト・データ依存プログラム命令及びコンテキスト・データに応答して、前記コンテキスト・データ依存プログラム命令及び前記コンテキスト・データによって指定されたコンテキスト・データ依存処理動作を実施するよう前記処理手段を制御するための前記制御信号を生成し、
前記デコーダ手段が、コンテキスト復元命令に応答し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されたものとして記録されている場合に、格納されたコンテキスト・データを使用して前記コンテキスト・データを復元するよう前記処理手段を制御し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されていないものとして記録されている場合に、前記コンテキスト・データを維持するよう前記処理手段を制御する、装置を提供する。
プログラム命令の制御下で処理回路を用いて処理動作を実施するステップと、
前記プログラム命令をデコードして、前記処理動作を実施するよう前記処理回路を制御するための制御信号を生成するステップとを含み、
前記デコードするステップが、少なくとも1つのコンテキスト・データ依存プログラム命令及びコンテキスト・データに応答して、前記コンテキスト・データ依存プログラム命令及び前記コンテキスト・データによって指定されたコンテキスト・データ依存処理動作を実施するよう前記処理回路を制御するための前記制御信号を生成し、
前記デコードするステップが、コンテキスト保存命令に応答し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されたものとして記録されている場合に、前記コンテキスト・データを保存するよう前記処理回路を制御し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されていないものとして記録されている場合に、デフォルトのコンテキスト・データを保存するよう前記処理回路を制御する、方法を提供する。
プログラム命令の制御下で処理回路を用いて処理動作を実施するステップと、
前記プログラム命令をデコードして、前記処理動作を実施するよう前記処理回路を制御するための制御信号を生成するステップとを含み、
前記デコードするステップが、少なくとも1つのコンテキスト・データ依存プログラム命令及びコンテキスト・データに応答して、前記コンテキスト・データ依存プログラム命令及び前記コンテキスト・データによって指定されたコンテキスト・データ依存処理動作を実施するよう前記処理回路を制御するための前記制御信号を生成し、
前記デコードするステップが、コンテキスト復元命令に応答し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されたものとして記録されている場合に、格納されたコンテキスト・データを使用して前記コンテキスト・データを復元するよう前記処理回路を制御し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されていないものとして記録されている場合に、前記コンテキスト・データを維持するよう前記処理回路を制御する、方法を提供する。
・ポイント1とポイント2との間でFP命令が実行されないため、ポイント2において現在のコンテキスト・データ(FPSCR及びSFPA)は再びメモリに押し出され、FPSCRはNSデフォルト値(FPDSCR_NS)に設定される。ポイント1においてFPSCRがNSデフォルト値(FPDSCR_NS)に設定されたため、ポイント2においてメモリに押し出された値はNSデフォルト値であり、ポイント1以前のFPSCRの値ではない。
・ポイント3において、セキュアFP命令が実行され、これによって、実例2のようにセキュアFPコンテキストが作成される。すなわち、SFPAは1に設定され、FPSCRはSデフォルト値(FPDSCR_S)に初期化される。
・ポイント4において、CXTRestoreがコンテキスト・データ(FPSCR及びSFPA)をポイント2以前の値に復元する、すなわち、FPSCRはNSデフォルト値(元はFPDSCR_NSから)に、また、SFPAは0に設定される。
・内部セキュア関数に戻った後、ポイント5においてセキュアFP命令が実行される。一見すると、このFP命令は、直前のポイントで復元されたFPSCRのNSデフォルト値の影響を受け得るように見える。しかし、CXTSave及びCXTRestoreがSFPAの値も同様に保存及び復元するため、ポイント2におけるSFPAの元の値(すなわち0)が復元されている。従って、ポイント5におけるFP命令によって、再びFPSCRは安全なセキュア・デフォルト値(FPDSCR_S)から再初期化される。
・ポイント6において、NS関数によって実行される次の任意のFP命令がポイント1以前のFPSCRの元の値を参照し直すよう、ポイント1で保存された元のコンテキスト・データが復元される。
Claims (19)
- データを処理するための装置であって、
プログラム命令の制御下で処理動作を実施するための処理回路と、
前記プログラム命令をデコードして、前記処理動作を実施するよう前記処理回路を制御するための制御信号を生成するためのデコーダ回路とを含み、
前記デコーダ回路が、少なくとも1つのコンテキスト・データ依存プログラム命令及び少なくとも1つの浮動小数点コンテキスト・データ・レジスタ内に格納されたコンテキスト・データに応答して、前記コンテキスト・データ依存プログラム命令及び前記コンテキスト・データによって指定されたコンテキスト・データ依存処理動作を実施するよう前記処理回路を制御するための前記制御信号を生成し、
前記デコーダ回路が、コンテキスト保存命令に応答し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されたものとして記録されている場合に、メモリの位置に前記コンテキスト・データを保存して、次のコンテキスト復元命令に応答して、前記少なくとも1つの浮動小数点コンテキスト・データ・レジスタに復元されるよう前記処理回路を制御し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されていないものとして記録されている場合に、前記メモリの位置にデフォルトのコンテキスト・データを保存して、前記次のコンテキスト復元命令に応答して、前記少なくとも1つの浮動小数点コンテキスト・データ・レジスタに復元されるよう前記処理回路を制御し、
前記コンテキスト・データ依存プログラム命令が浮動小数点プログラム命令であり、前記コンテキスト・データが浮動小数点コンテキスト・データであり、前記浮動小数点プログラム命令が前記浮動小数点コンテキスト・データに依存する浮動小数点処理動作を指定し、前記デフォルトのコンテキスト・データがデフォルトの浮動小数点コンテキスト・データを含む、装置。 - 前記処理回路が、セキュア・ドメイン及び非セキュア・ドメインを含む複数のドメインで動作し、前記セキュア・ドメインでの動作時に前記処理回路がセキュア・データにアクセスでき、前記非セキュア・ドメインでの動作時に前記処理回路が前記セキュア・データにアクセスできない、請求項1に記載の装置。
- 前記コンテキスト・データが前記処理回路によって保存され、前記コンテキスト・データが前記セキュア・ドメインで処理中に使用されていないものとして記録されている場合に、前記処理回路が前記コンテキスト・データを前記非セキュア・ドメイン向けのデフォルトのコンテキスト・データに設定する、請求項2に記載の装置。
- 前記コンテキスト・データが前記処理回路によって保存され、前記コンテキスト・データが前記セキュア・ドメインで処理中に使用されたものとして記録されている場合に、保存された前記コンテキスト・データの使用を維持する、請求項3に記載の装置。
- 前記コンテキスト保存命令が、
前記コンテキスト・データが使用されたものとして記録されている場合に、セキュリティ・ドメイン指示フラグが、前記コンテキスト・データが前記セキュア・ドメインによって使用されたものとして記録されたかを示すよう設定され、
前記コンテキスト・データが使用されたものとして記録されていない場合に、前記セキュリティ・ドメイン指示フラグが、前記セキュア・ドメインによって使用されていないことを示す値に設定されるように、
前記コンテキスト・データが使用されたものとして記録されているかどうかに応じて、前記セキュリティ・ドメイン指示フラグを保存するよう前記処理回路を制御する、請求項2から4までのいずれか一項に記載の装置。 - 前記処理回路が現在、前記コンテキスト・データ依存プログラム命令の使用を許可されていない場合に、前記コンテキスト・データが使用されたものとして記録されているかどうかに応じて、障害対応の例外がトリガされる、請求項1から5までのいずれか一項に記載の装置。
- 選択的なコンテキスト・データのハードウェア制御が無効化されている場合に、前記コンテキスト・データが、使用されたものとして記録され、且つ、コンテキスト保存命令に応答して保存されたものとして扱われるよう、選択的なコンテキスト・データ保存のハードウェア制御がソフトウェア構成可能なフラグによって無効化される、請求項1から6までのいずれか一項に記載の装置。
- 前記コンテキスト・データがメモリ内の位置に保存される、及び、
前記コンテキスト・データが汎用レジスタ・ファイル内のレジスタに保存される、
のうちの一方である、請求項1から7までのいずれか一項に記載の装置。 - 前記デコーダ回路が、コンテキスト復元命令に応答し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されたものとして記録されている場合に、格納されたコンテキスト・データを使用して前記コンテキスト・データを復元するよう前記処理回路を制御し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されていないものとして記録されている場合に、前記コンテキスト・データを維持するよう前記処理回路を制御する、請求項1から8までのいずれか一項に記載の装置。 - 前記浮動小数点プログラム命令が前記浮動小数点コンテキスト・データに依存する浮動小数点処理動作を指定する、請求項9に記載の装置。
- 前記処理回路が現在、前記コンテキスト・データ依存プログラム命令の使用を許可されていない場合に、前記コンテキスト・データが使用されたものとして記録されているかどうかに応じて、障害対応の例外がトリガされる、請求項9又は10に記載の装置。
- 前記処理回路が、セキュア・ドメイン及び非セキュア・ドメインを含む複数のドメインで動作し、前記セキュア・ドメインでの動作時に前記処理回路がセキュア・データにアクセスでき、前記非セキュア・ドメインでの動作時に前記処理回路が前記セキュア・データにアクセスできず、また、前記処理回路が前記コンテキスト復元命令によって、前記セキュア・ドメインが前記コンテキスト・データを使用したかどうかを示すセキュリティ・ドメイン指示フラグを復元するよう制御され、前記復元が、前記コンテキスト・データが使用されたものとして記録されているかどうかに依存する、請求項9から11までのいずれか一項に記載の装置。
- 前記コンテキスト・データがメモリ内の位置から復元される、及び、
前記コンテキスト・データが汎用レジスタ・ファイル内のレジスタから復元される、
のうちの一方である、請求項9から12までのいずれか一項に記載の装置。 - 選択的なコンテキスト・データのハードウェア制御が無効化されている場合に、コンテキスト復元命令に応答して、前記コンテキスト・データが使用されたものとして記録されたものとして扱われるよう、選択的なコンテキスト・データ保存のハードウェア制御がソフトウェア構成可能なフラグによって無効化される、請求項9から13までのいずれか一項に記載の装置。
- データを処理するための装置であって、
プログラム命令の制御下で処理動作を実施するための処理手段と、
前記プログラム命令をデコードして、前記処理動作を実施するよう前記処理手段を制御するための制御信号を生成するためのデコーダ手段とを含み、
前記デコーダ手段が、少なくとも1つのコンテキスト・データ依存プログラム命令及びコンテキスト・データを格納するための手段内に格納されたコンテキスト・データに応答して、前記コンテキスト・データ依存プログラム命令及び前記コンテキスト・データによって指定されたコンテキスト・データ依存処理動作を実施するよう前記処理手段を制御するための前記制御信号を生成し、
前記デコーダ手段が、コンテキスト保存命令に応答し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されたものとして記録されている場合に、メモリの位置に前記コンテキスト・データを保存して、次のコンテキスト復元命令に応答して、前記コンテキスト・データを格納するための手段に復元されるよう前記処理手段を制御し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されていないものとして記録されている場合に、前記メモリの位置にデフォルトのコンテキスト・データを保存して、前記次のコンテキスト復元命令に応答して、前記コンテキスト・データを格納するための手段に復元されるよう前記処理手段を制御し、
前記コンテキスト・データ依存プログラム命令が浮動小数点プログラム命令であり、前記コンテキスト・データが浮動小数点コンテキスト・データであり、前記浮動小数点プログラム命令が前記浮動小数点コンテキスト・データに依存する浮動小数点処理動作を指定し、前記デフォルトのコンテキスト・データがデフォルトの浮動小数点コンテキスト・データを含む、装置。 - 前記デコーダ手段がコンテキスト復元命令に応答し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されたものとして記録されている場合に、格納されたコンテキスト・データを使用して前記コンテキスト・データを復元するよう前記処理手段を制御し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されていないものとして記録されている場合に、前記コンテキスト・データを維持するよう前記処理手段を制御する、請求項15に記載の装置。 - データを処理する方法であって、
プログラム命令の制御下で処理回路を用いて処理動作を実施するステップと、
前記プログラム命令をデコードして、前記処理動作を実施するよう前記処理回路を制御するための制御信号を生成するステップとを含み、
前記デコードするステップが、少なくとも1つのコンテキスト・データ依存プログラム命令及び少なくとも1つの浮動小数点コンテキスト・データ・レジスタ内に格納されたコンテキスト・データに応答して、前記コンテキスト・データ依存プログラム命令及び前記コンテキスト・データによって指定されたコンテキスト・データ依存処理動作を実施するよう前記処理回路を制御するための前記制御信号を生成し、
前記デコードするステップが、コンテキスト保存命令に応答し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されたものとして記録されている場合に、メモリの位置に前記コンテキスト・データを保存して、次のコンテキスト復元命令に応答して、前記少なくとも1つの浮動小数点コンテキスト・データ・レジスタに復元されるよう前記処理回路を制御し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されていないものとして記録されている場合に、前記メモリの位置にデフォルトのコンテキスト・データを保存して、前記次のコンテキスト復元命令に応答して、前記少なくとも1つの浮動小数点コンテキスト・データ・レジスタに復元されるよう前記処理回路を制御し、
前記コンテキスト・データ依存プログラム命令が浮動小数点プログラム命令であり、前記コンテキスト・データが浮動小数点コンテキスト・データであり、前記浮動小数点プログラム命令が前記浮動小数点コンテキスト・データに依存する浮動小数点処理動作を指定し、前記デフォルトのコンテキスト・データがデフォルトの浮動小数点コンテキスト・データを含む、方法。 - 前記デコードするステップが、コンテキスト復元命令に応答し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されたものとして記録されている場合に、格納されたコンテキスト・データを使用して前記コンテキスト・データを復元するよう前記処理回路を制御し、
前記コンテキスト・データがコンテキスト・データ依存処理動作を制御するために使用されていないものとして記録されている場合に、前記コンテキスト・データを維持するよう前記処理回路を制御する、請求項17に記載の方法。 - 請求項17又は18に記載の方法に従って動作するようコンピュータを制御するための、仮想マシン・コンピュータ・プログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1710790.5A GB2564144B (en) | 2017-07-05 | 2017-07-05 | Context data management |
GB1710790.5 | 2017-07-05 | ||
PCT/GB2018/051701 WO2019008323A1 (en) | 2017-07-05 | 2018-06-19 | CONTEXTUAL DATA MANAGEMENT |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020525957A JP2020525957A (ja) | 2020-08-27 |
JP7444610B2 true JP7444610B2 (ja) | 2024-03-06 |
Family
ID=59592414
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019572679A Active JP7444610B2 (ja) | 2017-07-05 | 2018-06-19 | コンテキスト・データ管理 |
Country Status (9)
Country | Link |
---|---|
US (1) | US11704127B2 (ja) |
EP (1) | EP3649549B1 (ja) |
JP (1) | JP7444610B2 (ja) |
KR (1) | KR102584039B1 (ja) |
CN (1) | CN110799940B (ja) |
GB (1) | GB2564144B (ja) |
IL (1) | IL271662B2 (ja) |
TW (1) | TWI822685B (ja) |
WO (1) | WO2019008323A1 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012530315A (ja) | 2009-06-19 | 2012-11-29 | アーム・リミテッド | データ処理装置および方法 |
US20130042093A1 (en) | 2007-12-31 | 2013-02-14 | Don A. Van Dyke | Context state management for processor feature sets |
WO2017009597A1 (en) | 2015-07-15 | 2017-01-19 | Arm Limited | Secure mode state data access tracking |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5150470A (en) * | 1989-12-20 | 1992-09-22 | International Business Machines Corporation | Data processing system with instruction queue having tags indicating outstanding data status |
JPH05165652A (ja) * | 1991-12-16 | 1993-07-02 | Fujitsu Ltd | タスク切替え制御方法 |
US5481719A (en) * | 1994-09-09 | 1996-01-02 | International Business Machines Corporation | Exception handling method and apparatus for a microkernel data processing system |
JP3619939B2 (ja) * | 1994-09-26 | 2005-02-16 | 株式会社ルネサステクノロジ | 中央処理装置 |
US5987495A (en) | 1997-11-07 | 1999-11-16 | International Business Machines Corporation | Method and apparatus for fully restoring a program context following an interrupt |
US6810476B2 (en) * | 2000-08-09 | 2004-10-26 | Advanced Micro Devices, Inc. | Variable state save formats based on operand size of state save instruction |
JP5154119B2 (ja) | 2007-03-26 | 2013-02-27 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | プロセッサ |
CN101430376B (zh) * | 2008-12-24 | 2011-05-04 | 北京航空航天大学 | 利用索引信息加速图形电磁计算目标雷达散射截面预评估系统 |
GB2474521B (en) * | 2009-10-19 | 2014-10-15 | Ublox Ag | Program flow control |
GB2474522B (en) * | 2009-10-19 | 2014-09-03 | Advanced Risc Mach Ltd | Register state saving and restoring |
US10102003B2 (en) * | 2012-11-01 | 2018-10-16 | International Business Machines Corporation | Intelligent context management |
WO2014150941A1 (en) | 2013-03-15 | 2014-09-25 | Soft Machines, Inc. | A method for executing blocks of instructions using a microprocessor architecture having a register view, source view, instruction view, and a plurality of register templates |
US9417876B2 (en) | 2014-03-27 | 2016-08-16 | International Business Machines Corporation | Thread context restoration in a multithreading computer system |
CN104240285A (zh) * | 2014-09-16 | 2014-12-24 | 无锡梵天信息技术股份有限公司 | 利用vtf技术处理cpu大批量数据传入gpu的方法 |
US9715403B2 (en) * | 2015-02-27 | 2017-07-25 | Red Hat, Inc. | Optimized extended context management for virtual machines |
-
2017
- 2017-07-05 GB GB1710790.5A patent/GB2564144B/en active Active
-
2018
- 2018-06-19 US US16/628,418 patent/US11704127B2/en active Active
- 2018-06-19 WO PCT/GB2018/051701 patent/WO2019008323A1/en unknown
- 2018-06-19 JP JP2019572679A patent/JP7444610B2/ja active Active
- 2018-06-19 KR KR1020207002695A patent/KR102584039B1/ko active IP Right Grant
- 2018-06-19 EP EP18734927.9A patent/EP3649549B1/en active Active
- 2018-06-19 IL IL271662A patent/IL271662B2/en unknown
- 2018-06-19 CN CN201880043850.6A patent/CN110799940B/zh active Active
- 2018-06-28 TW TW107122288A patent/TWI822685B/zh active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130042093A1 (en) | 2007-12-31 | 2013-02-14 | Don A. Van Dyke | Context state management for processor feature sets |
JP2012530315A (ja) | 2009-06-19 | 2012-11-29 | アーム・リミテッド | データ処理装置および方法 |
WO2017009597A1 (en) | 2015-07-15 | 2017-01-19 | Arm Limited | Secure mode state data access tracking |
Non-Patent Citations (2)
Title |
---|
インテル株式会社,インテル・アーキテクチャ・ソフトウェア・ディベロッパーズ・マニュアル 中巻:命令セット・リファレンス,CQ出版株式会社,1997年,3の38頁~3の48頁、3の218頁~3の221頁 |
インテル株式会社,ソフトウェア・ディベロッパーズ・マニュアル 下巻:システム・プログラミング・ガイド,CQ出版株式会社,1997年,5の38頁~5の39頁、6の10頁~6の20頁 |
Also Published As
Publication number | Publication date |
---|---|
KR20200020926A (ko) | 2020-02-26 |
CN110799940A (zh) | 2020-02-14 |
CN110799940B (zh) | 2023-12-22 |
KR102584039B1 (ko) | 2023-10-04 |
WO2019008323A1 (en) | 2019-01-10 |
GB201710790D0 (en) | 2017-08-16 |
GB2564144B (en) | 2020-01-08 |
IL271662B1 (en) | 2023-11-01 |
TWI822685B (zh) | 2023-11-21 |
EP3649549A1 (en) | 2020-05-13 |
IL271662A (en) | 2020-02-27 |
US20200167160A1 (en) | 2020-05-28 |
IL271662B2 (en) | 2024-03-01 |
EP3649549B1 (en) | 2023-12-20 |
TW201907294A (zh) | 2019-02-16 |
JP2020525957A (ja) | 2020-08-27 |
GB2564144A (en) | 2019-01-09 |
US11704127B2 (en) | 2023-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2572274B1 (en) | Illegal mode change handling | |
JP5571201B2 (ja) | ハードウェアモードおよびセキュリティフラグに基づく、読み出される命令用のメモリエリアの制限 | |
JP6185487B2 (ja) | ドメイン間で切り替わる際のセキュアなデータの非セキュアなアクセスから隔離された状態での維持 | |
US6694457B2 (en) | System and method for monitoring execution of privileged instructions | |
JP6807383B2 (ja) | 転送プレフィックス命令 | |
US20090172329A1 (en) | Providing secure services to a non-secure application | |
US11727110B2 (en) | Verifying stack pointer | |
KR102509365B1 (ko) | 보안 모드 상태 데이터 액세스 트랙킹 | |
CN111133418A (zh) | 在例外屏蔽更新指令之后允许未中止的事务处理 | |
KR102307581B1 (ko) | 레지스터 복구 분기 명령 | |
JP7444610B2 (ja) | コンテキスト・データ管理 | |
US6772372B2 (en) | System and method for monitoring unaligned memory accesses | |
JP2019510313A (ja) | ベクトル命令の処理 | |
CN108701031B (zh) | 寄存器访问控制 | |
JPWO2020182498A5 (ja) | ||
JP2001125804A (ja) | 割り込み処理制御装置および方法 | |
JPH0749777A (ja) | 情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210611 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220518 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220621 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220921 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20221227 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230327 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20230630 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231031 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20231109 |
|
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: 20240130 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240222 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7444610 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |