JP5182816B2 - 共有リソースのアクセス調整機構を提供する方法、およびその装置及びコンピュータ・プログラム - Google Patents
共有リソースのアクセス調整機構を提供する方法、およびその装置及びコンピュータ・プログラム Download PDFInfo
- Publication number
- JP5182816B2 JP5182816B2 JP2008514198A JP2008514198A JP5182816B2 JP 5182816 B2 JP5182816 B2 JP 5182816B2 JP 2008514198 A JP2008514198 A JP 2008514198A JP 2008514198 A JP2008514198 A JP 2008514198A JP 5182816 B2 JP5182816 B2 JP 5182816B2
- Authority
- JP
- Japan
- Prior art keywords
- subject
- value
- instruction
- local
- code
- 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.)
- Expired - Fee Related
Links
- 230000007246 mechanism Effects 0.000 title claims description 54
- 238000000034 method Methods 0.000 title claims description 40
- 238000004590 computer program Methods 0.000 title claims 2
- 230000004044 response Effects 0.000 claims description 17
- 230000002452 interceptive effect Effects 0.000 claims description 11
- 238000001514 detection method Methods 0.000 claims description 8
- 238000013519 translation Methods 0.000 claims description 5
- YGSDEFSMJLZEOE-UHFFFAOYSA-M salicylate Chemical compound OC1=CC=CC=C1C([O-])=O YGSDEFSMJLZEOE-UHFFFAOYSA-M 0.000 claims 2
- 229960001860 salicylate Drugs 0.000 claims 2
- 230000000717 retained effect Effects 0.000 claims 1
- 238000006243 chemical reaction Methods 0.000 description 26
- 238000010586 diagram Methods 0.000 description 11
- 230000008901 benefit Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000005457 optimization Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 2
- 230000000052 comparative effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 125000002015 acyclic group Chemical group 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
Images
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/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/526—Mutual exclusion algorithms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/52—Binary to binary
-
- 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
-
- 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/30072—Arrangements for executing specific machine instructions to perform conditional operations, e.g. using predicates or guards
-
- 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
- G06F9/30087—Synchronisation or serialisation instructions
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45516—Runtime code conversion or optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/52—Indexing scheme relating to G06F9/52
- G06F2209/522—Manager
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Devices For Executing Special Programs (AREA)
- Executing Machine-Instructions (AREA)
Description
次の説明は、本発明の実施例に基づいて実用化可能な種々の観点および利点の概要である。当業者に対して本明細書に添付された請求項の範囲に決して限定せず、また、限定することを意図せず詳細な設計の説明をより迅速に理解する助けとなる導入部として提供される。
図2に示したように、制御装置は最初に、トランスレータ制御ループ190とともに存在する。ステップ201において、制御ループ190がトランスレータコード19のコード発生機能192をコールし、一連のサブジェクトコード17を対応する一連の被変換コード21に変換する。次に、ステップ202において、この一連の被変換コード21がターゲットプロセッサ13上で実行される。好都合なことに、各一連の被変換コード21の終端は、制御ループ201に制御装置を帰還させる命令を含む。換言すれば、サブジェクトコードをトランスレートし、実行するステップはサブジェクトプログラム17の一部が順番にトランスレートされて実行されるようにインターレースされる。
図4は、サブジェクトプロセッサ400の一例を示す概略図である。サブジェクトプロセッサ400は、当業者によく知られているようにメモリ401にアクセスし、少なくとも一つの汎用目的レジスタ402を含む。図示されるサブジェクトプロセッサ400は、RISCプロセッサの一般的なものである。
本実施例において、リザベーション403は、予約フラグ404、特定目的リザベーションレジスタ405を備えている。予約フラグ404は一般的に1ビットフラグであり、リザベーションが設定されているかクリアされているかを示す。リザベーションレジスタ405はメモリアドレスを記憶するのに使用される。
再試行:
ロード−リンク[MEM LL]
...ロード−データに対して操作を実行、
ストア−コンディショナル[MEM SC]
ストア−コンディショナルが失敗であれば分岐:再試行
...
(retry:
load-link [MEM LL]
...perform operations on the loaded data
store-conditional [MEM SC]
branch if store-conditional fails: retry
...)である。
図5はターゲットコンピューティングプラットフォーム14の概略図であって、本発明の典型的な実施例に使用される共有リソースへのアクセスを協調するための機構体を含む。
トランスレータ19は、サブジェクトリザベーション403で動作するサブジェクトコードのロード−リンク命令load−link[MEM LL]のようなサブジェクト設定命令を識別する。トランスレータによって生成された対応ターゲットコード21が、図7に示されたステップを実行する。簡単に説明すると、図7は、グローバルトークン501を調整するステップ701、データを共有リソースから読み込むステップ703、ならびにローカルデータ構造体502を記憶するステップ702,704および705を示す。
ステップ703は、サブジェクトロードリンク命令内で特定されたメモリロケーション(すなわち、サブジェクトアドレス[MEM LL]に関係するターゲットメモリ18内のロケーション)からデータをロードするステップを含む。すなわち、サブジェクト設定命令は共有リソースに関連する設定アドレスを提供し、データ値が設定アドレス(すなわち、必要とされれば適切なアドレス変換により)に応答して共有リソースから読み込まれる。
[atomically] adjust global token
load [MEM LL]
local_token = global token
local_mem = MEM LL
local_value = value in MEM LLである。
サブジェクトコードのストア−コンディショナル命令は、図8に示すようにターゲットコード内でいくつかのサブ−ステップに好便に分割される。
ステップ806は、サブジェクトプログラムの操作が目下続行されるようにチェッキングと記憶操作とが成功したことを指示するステップを含む。例えば、成功/失敗フラグが用意され、ターゲットコード21またはトランスレータ19によって参照される。
ステップ807は、ステップ701につき上述したように、原子的インクリメント(例えば、比較−交換)命令のようなグローバルトークンを調整するステップを含む。
If (local mem == MEM SC)
and (local token == global token)
and (local value == contents of MEM SC)
then:
perfom sotre [MEM SC]
[atomically] adjust global token
set success flag
else
[atomically] adjust global token
set failure flag
ここで説明する典型的な実施例は、多くの有益性と利点とを有している。ここで説明する実施例は、アクセス協調へのソフト指向アプローチを有利に提供し、なおもトランスレータ内での実行が比較的有効であり、費用効率の高く、且つターゲットコードとして実行される。
Claims (19)
- マルチサブジェクトスレッドを有しサブジェクトプロセッサによって実行可能なサブジェクトコードを、ターゲットプロセッサによって実行可能なターゲットコードに変換するプログラムコード内で使用するための、共有リソースへのアクセスを調整するための機構(以下、ターゲットアクセス調整機構という)を提供する方法であって、前記ターゲットアクセス調整機構は、マルチサブジェクトスレッドの一つに各々関連付けられたローカルデータ構造体と、前記マルチサブジェクトスレッドの各々に共通する数値カウンタ値とを有するものであり、
前記ターゲットプロセッサを備えているコンピュータが、
(a)前記マルチサブジェクトスレッドの一つに各々関連付けられた前記ローカルデータ構造体と、前記マルチサブジェクトスレッドの各々に共通する前記数値カウンタ値とを準備するステップであって、前記ローカルデータ構造体は、前記数値カウンタ値の現在値、ローカル値及びローカルメモリアドレスを格納するための構造体であり、前記ローカル値は、共有リソースから読み込まれるデータ値であり、前記ローカルメモリアドレスは、前記データ値の読み込み元のアドレスである、前記準備するステップと、
(b)前記サブジェクトコードをデコードし、前記サブジェクトプロセッサ内に設けられたアクセス調整機構(以下、サブジェクトアクセス調整機構という)を設定するために使用されるサブジェクト設定命令と、前記サブジェクトアクセス調整機構をチェックし且つ共有リソースに関連する潜在的なインターフェアレンスを検出するために使用されるサブジェクトチェッキング命令とを識別するステップであって、前記サブジェクトアクセス調整機構は前記共有リソースに関係し、前記マルチサブジェクトスレッドのうちの一つを超えるスレッドが前記共有リソースにアクセスすることによって生じる不一致または予期しない動作であるインターフェアレンスが共有リソースに関して発生しているかどうかを検出するために使用されるリザベーションを備えており、前記リザベーションは命令に関連付けられたメモリアドレスを書き込むためのリザベーションレジスタと、前記リザベーションレジスタが設定されているか又はクリアされているかを示す予約フラグとを備えており、前記サブジェクトアクセス調整機構におけるインターフェアレンスの検出は、前記予約フラグがなおも設定されていなければならないときにクリアされるか、又は前記リザベーションレジスタ内に保持されたアドレスが前記サブジェクトチェッキング命令内で特定されたアドレスと同じでないことのいずれかによって検出され、前記サブジェクトチェッキング命令が続行する場合、すなわち前記潜在的なインターフェアレンスが検出されない場合に、前記インターフェアレンスが発生していないと判断して前記予約フラグがクリアにされるものである、前記識別するステップと、
(c)前記識別されたサブジェクト設定命令に応答して、
(c−1)前記数値カウンタ値をインクリメント又はデクリメントのいずれか一方による数学的操作による調整をし、そして当該調整された数値カウンタ値、すなわち前記数値カウンタ値の現在値を、現スレッドのための前記ローカルデータ構造体内に記憶するステップと、
(c−2)前記サブジェクト設定命令で特定されたメモリロケーションからデータ値をロードするステップであって、前記データ値は前記サブジェクト設定命令によって提供された共有リソースに関連する設定アドレスに応答して共有リソースから読み込まれるデータ値である、前記ロードするステップと、当該ロードされたデータ値を前記ローカルデータ構造体内に記憶し、且つ前記設定アドレスのコピーを前記ローカルデータ構造体内のローカルメモリアドレスとして記憶するステップと、
(d)前記識別されたサブジェクトチェッキング命令に応答して、
(d−1)前記サブジェクトチェッキング命令内で特定されたアドレスから導出されたチェッキングアドレスと前記ローカルデータ構造体内に記憶されたローカルメモリアドレスと比較するステップであって、前記サブジェクトチェッキング命令内で特定されたアドレスから導出されたチェッキングアドレスと前記ローカルデータ構造体内に記憶されたローカルメモリアドレスとが等しくない場合には、別のサブジェクト設定命令が現行のマルチサブジェクトスレッドで実行されていることを示す、前記比較するステップと、
(d−2)前記共通する数値カウンタ値の現在値と前記ローカルデータ構造体内に記憶された前記数値カウンタ値とを比較するステップであって、前記共通する数値カウンタ値の現在値と前記ローカルデータ構造体内に記憶された前記数値カウンタ値とが等しくない場合には、前記共通する数値カウンタ値の現在値が、別のマルチサブジェクトスレッド内の潜在的なインターフェアリング命令によって調整される、前記比較するステップと、
(d−3)前記サブジェクトチェッキング命令内に特定付けられたメモリロケーションに現在ストアされている値と前記ローカルデータ構造体内に記憶された前記ローカル値とを比較するステップであって、前記サブジェクトチェッキング命令内に特定付けられたメモリロケーションに現在ストアされている値と前記ローカルデータ構造体内に記憶された前記ローカル値とが等しくない場合には、前記サブジェクト設定命令と前記サブジェクトチェッキング命令との間の介在命令がインターフェアレンスなしに実行されなかったことが検出される、前記比較するステップと、
を実行することを含み、前記(d−1)、(d−2)及び(d−3)の各比較において一致しなかった場合に失敗フラグを示すように設定され、前記(d−1)、(d−2)及び(d−3)の各比較が全て一致した場合に成功フラグを示すように設定される、前記方法。 - 前記コンピュータが、
前記共有リソースに関連する潜在的にインターフェアする事象に応答して前記数値カウンタ値を前記調整するステップであって、前記潜在的にインターフェアする事象が、割り込み、システムコール、又は前記レジスタに保持されたメモリアドレスへの記憶である、前記調整するステップと
をさらに実行することを含む、請求項1に記載の方法。 - 前記コンピュータが、
前記サブジェクトコードまたは前記サブジェクトコードに影響を与える割り込み又はシステムコールを検出するステップであって、当該検出は共有リソースに関連する潜在的なインターフェアレンスを表す、前記検出するステップと、
前記検出に応じて、前記数値カウンタ値を前記調整するステップ
をさらに実行することを含む、請求項1又は2に記載の方法。 - 前記コンピュータが、
第1サブジェクトスレッドに関して前記ステップ(c)を実行するステップと、
第2サブジェクトスレッドに関して前記数値カウンタ値を前記調整するステップと、
前記第1サブジェクトスレッドに関して前記ステップ(d)を実行し、前記第2サブジェクトスレッドに関して前記共有リソースに関連する前記潜在的なインターフェアレンスを決定するステップと
をさらに実行することを含む、請求項1〜3のいずれか一項に記載の方法。 - 前記ステップ(d)は、前記サブジェクトチェッキング命令に応答して共有リソースに新しいデータ値を記憶するステップをさらに含む、請求項1〜4のいずれか一項に記載の方法。
- 前記コンピュータが、
前記数値カウンタ値を前記ターゲットプロセッサ上で原子的に調整するステップ
をさらに実行することを含む、請求項1〜5のいずれか一項に記載の方法。 - 前記コンピュータが、
前記サブジェクトプロセッサによって実行可能なサブジェクトコードを、前記ターゲットプロセッサによって実行可能なターゲットコードに変換するステップ
をさらに実行することを含む、請求項1〜6のいずれか一項に記載の方法。 - 前記コンピュータが、
前記サブジェクトコードから前記ターゲットコードに動的にバイナリトランスレーションを実行するステップ
をさらに実行することを含む、請求項7に記載の方法。 - 前記コンピュータが、
前記サブジェクトチェッキング命令が失敗する場合に、前記サブジェクト設定命令にループバックするステップ
をさらに実行することを含む、請求項1に記載の方法。 - マルチサブジェクトスレッドを有しサブジェクトプロセッサによって実行可能なサブジェクトコードを、ターゲットプロセッサによって実行可能なターゲットコードに変換する装置であって、前記装置は前記ターゲットプロセッサを備えており、前記装置は前記変換するプログラムコード内で使用するための、共有リソースへのアクセスを調整するための機構(以下、ターゲットアクセス調整機構という)を提供し、前記ターゲットアクセス調整機構は、マルチサブジェクトスレッドの一つに各々関連付けられたローカルデータ構造体と、前記マルチサブジェクトスレッドの各々に共通する数値カウンタ値とを有するものであり、
前記装置は、
(a)前記マルチサブジェクトスレッドの一つに各々関連付けられた前記ローカルデータ構造体と、前記マルチサブジェクトスレッドの各々に共通する前記数値カウンタ値とを準備し、前記ローカルデータ構造体は、前記数値カウンタ値の現在値、ローカル値及びローカルメモリアドレスを格納するための構造体であり、前記ローカル値は、共有リソースから読み込まれるデータ値であり、前記ローカルメモリアドレスは、前記データ値の読み込み元のアドレスであり、
(b)前記サブジェクトコードをデコードし、前記サブジェクトプロセッサ内に設けられたアクセス調整機構(以下、サブジェクトアクセス調整機構という)を設定するために使用されるサブジェクト設定命令と、前記サブジェクトアクセス調整機構をチェックし且つ共有リソースに関連する潜在的なインターフェアレンスを検出するために使用されるサブジェクトチェッキング命令とを識別し、前記サブジェクトアクセス調整機構は前記共有リソースに関係し、前記マルチサブジェクトスレッドのうちの一つを超えるスレッドが前記共有リソースにアクセスすることによって生じる不一致または予期しない動作であるインターフェアレンスが共有リソースに関して発生しているかどうかを検出するために使用されるリザベーションを備えており、前記リザベーションは命令に関連付けられたメモリアドレスを書き込むためのリザベーションレジスタと、前記リザベーションレジスタが設定されているか又はクリアされているかを示す予約フラグとを備えており、前記サブジェクトアクセス調整機構におけるインターフェアレンスの検出は、前記予約フラグがなおも設定されていなければならないときにクリアされるか、又は前記リザベーションレジスタ内に保持されたアドレスが前記サブジェクトチェッキング命令内で特定されたアドレスと同じでないことのいずれかによって検出され、前記サブジェクトチェッキング命令が続行する場合、すなわち前記潜在的なインターフェアレンスが検出されない場合に、前記インターフェアレンスが発生していないと判断して前記予約フラグがクリアにされるものであり、
(c)前記識別されたサブジェクト設定命令に応答して、
(c−1)前記数値カウンタ値をインクリメント又はデクリメントのいずれか一方による数学的操作による調整をし、そして当該調整された数値カウンタ値、すなわち前記数値カウンタ値の現在値を、現スレッドのための前記ローカルデータ構造体内に記憶し、
(c−2)前記サブジェクト設定命令で特定されたメモリロケーションからデータ値をロードし、ここで、前記データ値は前記サブジェクト設定命令によって提供された共有リソースに関連する設定アドレスに応答して共有リソースから読み込まれるデータ値であり、当該ロードされたデータ値を前記ローカルデータ構造体内に記憶し、且つ前記設定アドレスのコピーを前記ローカルデータ構造体内のローカルメモリアドレスとして記憶し、
(d)前記識別されたサブジェクトチェッキング命令に応答して、
(d−1)前記サブジェクトチェッキング命令内で特定されたアドレスから導出されたチェッキングアドレスと前記ローカルデータ構造体内に記憶されたローカルメモリアドレスと比較し、前記サブジェクトチェッキング命令内で特定されたアドレスから導出されたチェッキングアドレスと前記ローカルデータ構造体内に記憶されたローカルメモリアドレスとが等しくない場合には、別のサブジェクト設定命令が現行のマルチサブジェクトスレッドで実行されていることを示し、
(d−2)前記共通する数値カウンタ値の現在値と前記ローカルデータ構造体内に記憶された前記数値カウンタ値とを比較し、前記共通する数値カウンタ値の現在値と前記ローカルデータ構造体内に記憶された前記数値カウンタ値とが等しくない場合には、前記共通する数値カウンタ値の現在値が、別のマルチサブジェクトスレッド内の潜在的なインターフェアリング命令によって調整され、
(d−3)前記サブジェクトチェッキング命令内に特定付けられたメモリロケーションに現在ストアされている値と前記ローカルデータ構造体内に記憶された前記ローカル値とを比較し、前記サブジェクトチェッキング命令内に特定付けられたメモリロケーションに現在ストアされている値と前記ローカルデータ構造体内に記憶された前記ローカル値とが等しくない場合には、前記サブジェクト設定命令と前記サブジェクトチェッキング命令との間の介在命令がインターフェアレンスなしに実行されなかったことが検出され、
前記(d−1)、(d−2)及び(d−3)の各比較において一致しなかった場合に失敗フラグを示すように設定され、前記(d−1)、(d−2)及び(d−3)の各比較が全て一致した場合に成功フラグを示すように設定される、前記装置。 - 前記装置は、
前記共有リソースに関連する潜在的にインターフェアする事象に応答して前記数値カウンタ値を前記調整し、
前記潜在的にインターフェアする事象が、割り込み、システムコール、又は前記レジスタに保持されたメモリアドレスへの記憶である、請求項10に記載の装置。 - 前記装置は、
前記サブジェクトコードまたは前記サブジェクトコードに影響を与える割り込み又はシステムコールを検出し、当該検出は共有リソースに関連する潜在的なインターフェアレンスを表し、
前記検出に応じて、前記数値カウンタ値を前記調整する、
請求項10又は11に記載の装置。 - 前記装置は、
第1サブジェクトスレッドに関して前記(c)を実行し、
第2サブジェクトスレッドに関して前記数値カウンタ値を前記調整し、
前記第1サブジェクトスレッドに関して前記(d)を実行し、前記第2サブジェクトスレッドに関して前記共有リソースに関連する前記潜在的なインターフェアレンスを決定する、
請求項10〜12のいずれか一項に記載の装置。 - 前記(d)において、さらに、
前記サブジェクトチェッキング命令に応答して共有リソースに新しいデータ値を記憶する、
請求項10〜13のいずれか一項に記載の装置。 - 前記装置は、
前記数値カウンタ値を前記ターゲットプロセッサ上で原子的に調整する、
請求項10〜14のいずれか一項に記載の装置。 - 前記装置は、
前記サブジェクトコードから前記ターゲットコードに動的にバイナリトランスレーションを実行する、
請求項10〜15のいずれか一項に記載の装置。 - 前記装置は、
前記サブジェクトチェッキング命令が失敗する場合に、前記サブジェクト設定命令にループバックする、
請求項10〜16のいずれか一項に記載の装置。 - 請求項1〜9のいずれか一項に記載の方法の複数のステップから成る方法をコンピュータが備えているターゲットプロセッサに実行させる命令を格納したコンピュータ読み取り可能な記憶媒体。
- ターゲットプロセッサを備えているコンピュータに、請求項1〜9のいずれか一項に記載の方法の各ステップを実行させるコンピュータ・プログラム。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0511462.4 | 2005-06-06 | ||
GB0511462A GB2427045B (en) | 2005-06-06 | 2005-06-06 | Method and apparatus for converting program code with access coordination for a shared resource |
US11/219,467 | 2005-09-02 | ||
US11/219,467 US7962900B2 (en) | 2005-06-06 | 2005-09-02 | Converting program code with access coordination for a shared memory |
PCT/GB2006/002031 WO2006131710A1 (en) | 2005-06-06 | 2006-06-05 | Method and apparatus for converting program code with access coordination for a shared resource |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008546086A JP2008546086A (ja) | 2008-12-18 |
JP5182816B2 true JP5182816B2 (ja) | 2013-04-17 |
Family
ID=34835186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008514198A Expired - Fee Related JP5182816B2 (ja) | 2005-06-06 | 2006-06-05 | 共有リソースのアクセス調整機構を提供する方法、およびその装置及びコンピュータ・プログラム |
Country Status (7)
Country | Link |
---|---|
US (1) | US7962900B2 (ja) |
EP (1) | EP1955153B1 (ja) |
JP (1) | JP5182816B2 (ja) |
CN (1) | CN101194230B (ja) |
GB (1) | GB2427045B (ja) |
HK (1) | HK1098218A1 (ja) |
WO (1) | WO2006131710A1 (ja) |
Families Citing this family (154)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070294675A1 (en) * | 2006-06-20 | 2007-12-20 | Transitive Limited | Method and apparatus for handling exceptions during binding to native code |
US8407675B1 (en) * | 2007-02-06 | 2013-03-26 | The United States Of America As Represented By The Secretary Of The Navy | Extraction of executable code and translation to alternate platform |
US20080250231A1 (en) * | 2007-04-03 | 2008-10-09 | Kabushiki Kaisha Toshiba | Program code conversion apparatus, program code conversion method and recording medium |
US8539485B2 (en) * | 2007-11-20 | 2013-09-17 | Freescale Semiconductor, Inc. | Polling using reservation mechanism |
US9329846B1 (en) * | 2009-11-25 | 2016-05-03 | Parakinetics Inc. | Cooperative program code transformation |
JP5059174B2 (ja) * | 2010-08-10 | 2012-10-24 | 株式会社東芝 | プログラム変換装置、およびそのプログラム |
JP5533538B2 (ja) * | 2010-10-12 | 2014-06-25 | 富士通株式会社 | 情報処理装置、エミュレーション処理プログラム及びエミュレーション処理方法 |
US8468507B2 (en) * | 2011-06-10 | 2013-06-18 | Microsoft Corporation | Binding executable code at runtime |
US8990515B2 (en) | 2011-06-14 | 2015-03-24 | Microsoft Technology Licensing, Llc | Aliasing buffers |
GB2499277B (en) * | 2012-08-30 | 2014-04-02 | Imagination Tech Ltd | Global register protection in a multi-threaded processor |
CN104063234B (zh) * | 2013-03-19 | 2017-06-27 | 华为技术有限公司 | 一种兼容方法及装置 |
US9471292B2 (en) * | 2014-04-18 | 2016-10-18 | Intel Corporation | Binary translation reuse in a system with address space layout randomization |
US9729583B1 (en) | 2016-06-10 | 2017-08-08 | OneTrust, LLC | Data processing systems and methods for performing privacy assessments and monitoring of new versions of computer code for privacy compliance |
US20170083331A1 (en) * | 2015-09-19 | 2017-03-23 | Microsoft Technology Licensing, Llc | Memory synchronization in block-based processors |
US9851957B2 (en) * | 2015-12-03 | 2017-12-26 | International Business Machines Corporation | Improving application code execution performance by consolidating accesses to shared resources |
CN105574407B (zh) * | 2015-12-28 | 2018-09-25 | 无锡天脉聚源传媒科技有限公司 | 一种共享的处理方法和装置 |
US11244367B2 (en) | 2016-04-01 | 2022-02-08 | OneTrust, LLC | Data processing systems and methods for integrating privacy information management systems with data loss prevention tools or other tools for privacy design |
US20220164840A1 (en) | 2016-04-01 | 2022-05-26 | OneTrust, LLC | Data processing systems and methods for integrating privacy information management systems with data loss prevention tools or other tools for privacy design |
US10706447B2 (en) | 2016-04-01 | 2020-07-07 | OneTrust, LLC | Data processing systems and communication systems and methods for the efficient generation of privacy risk assessments |
US11004125B2 (en) | 2016-04-01 | 2021-05-11 | OneTrust, LLC | Data processing systems and methods for integrating privacy information management systems with data loss prevention tools or other tools for privacy design |
US10997315B2 (en) | 2016-06-10 | 2021-05-04 | OneTrust, LLC | Data processing systems for fulfilling data subject access requests and related methods |
US10949170B2 (en) | 2016-06-10 | 2021-03-16 | OneTrust, LLC | Data processing systems for integration of consumer feedback with data subject access requests and related methods |
US10762236B2 (en) | 2016-06-10 | 2020-09-01 | OneTrust, LLC | Data processing user interface monitoring systems and related methods |
US10242228B2 (en) | 2016-06-10 | 2019-03-26 | OneTrust, LLC | Data processing systems for measuring privacy maturity within an organization |
US11481710B2 (en) | 2016-06-10 | 2022-10-25 | OneTrust, LLC | Privacy management systems and methods |
US11418492B2 (en) | 2016-06-10 | 2022-08-16 | OneTrust, LLC | Data processing systems and methods for using a data model to select a target data asset in a data migration |
US10796260B2 (en) | 2016-06-10 | 2020-10-06 | OneTrust, LLC | Privacy management systems and methods |
US11138299B2 (en) | 2016-06-10 | 2021-10-05 | OneTrust, LLC | Data processing and scanning systems for assessing vendor risk |
US11416589B2 (en) | 2016-06-10 | 2022-08-16 | OneTrust, LLC | Data processing and scanning systems for assessing vendor risk |
US11354435B2 (en) | 2016-06-10 | 2022-06-07 | OneTrust, LLC | Data processing systems for data testing to confirm data deletion and related methods |
US11336697B2 (en) | 2016-06-10 | 2022-05-17 | OneTrust, LLC | Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods |
US11038925B2 (en) | 2016-06-10 | 2021-06-15 | OneTrust, LLC | Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods |
US11057356B2 (en) | 2016-06-10 | 2021-07-06 | OneTrust, LLC | Automated data processing systems and methods for automatically processing data subject access requests using a chatbot |
US10853501B2 (en) | 2016-06-10 | 2020-12-01 | OneTrust, LLC | Data processing and scanning systems for assessing vendor risk |
US10685140B2 (en) | 2016-06-10 | 2020-06-16 | OneTrust, LLC | Consent receipt management systems and related methods |
US10708305B2 (en) | 2016-06-10 | 2020-07-07 | OneTrust, LLC | Automated data processing systems and methods for automatically processing requests for privacy-related information |
US10496846B1 (en) | 2016-06-10 | 2019-12-03 | OneTrust, LLC | Data processing and communications systems and methods for the efficient implementation of privacy by design |
US11222309B2 (en) | 2016-06-10 | 2022-01-11 | OneTrust, LLC | Data processing systems for generating and populating a data inventory |
US11438386B2 (en) | 2016-06-10 | 2022-09-06 | OneTrust, LLC | Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods |
US10726158B2 (en) | 2016-06-10 | 2020-07-28 | OneTrust, LLC | Consent receipt management and automated process blocking systems and related methods |
US10776514B2 (en) | 2016-06-10 | 2020-09-15 | OneTrust, LLC | Data processing systems for the identification and deletion of personal data in computer systems |
US11544667B2 (en) | 2016-06-10 | 2023-01-03 | OneTrust, LLC | Data processing systems for generating and populating a data inventory |
US11188862B2 (en) | 2016-06-10 | 2021-11-30 | OneTrust, LLC | Privacy management systems and methods |
US11343284B2 (en) | 2016-06-10 | 2022-05-24 | OneTrust, LLC | Data processing systems and methods for performing privacy assessments and monitoring of new versions of computer code for privacy compliance |
US11475136B2 (en) | 2016-06-10 | 2022-10-18 | OneTrust, LLC | Data processing systems for data transfer risk identification and related methods |
US10776518B2 (en) | 2016-06-10 | 2020-09-15 | OneTrust, LLC | Consent receipt management systems and related methods |
US10839102B2 (en) | 2016-06-10 | 2020-11-17 | OneTrust, LLC | Data processing systems for identifying and modifying processes that are subject to data subject access requests |
US10706176B2 (en) | 2016-06-10 | 2020-07-07 | OneTrust, LLC | Data-processing consent refresh, re-prompt, and recapture systems and related methods |
US10944725B2 (en) | 2016-06-10 | 2021-03-09 | OneTrust, LLC | Data processing systems and methods for using a data model to select a target data asset in a data migration |
US11328092B2 (en) | 2016-06-10 | 2022-05-10 | OneTrust, LLC | Data processing systems for processing and managing data subject access in a distributed environment |
US10885485B2 (en) | 2016-06-10 | 2021-01-05 | OneTrust, LLC | Privacy management systems and methods |
US10798133B2 (en) | 2016-06-10 | 2020-10-06 | OneTrust, LLC | Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods |
US11025675B2 (en) | 2016-06-10 | 2021-06-01 | OneTrust, LLC | Data processing systems and methods for performing privacy assessments and monitoring of new versions of computer code for privacy compliance |
US11100444B2 (en) | 2016-06-10 | 2021-08-24 | OneTrust, LLC | Data processing systems and methods for providing training in a vendor procurement process |
US11138242B2 (en) | 2016-06-10 | 2021-10-05 | OneTrust, LLC | Data processing systems and methods for automatically detecting and documenting privacy-related aspects of computer software |
US11277448B2 (en) | 2016-06-10 | 2022-03-15 | OneTrust, LLC | Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods |
US10713387B2 (en) | 2016-06-10 | 2020-07-14 | OneTrust, LLC | Consent conversion optimization systems and related methods |
US11636171B2 (en) | 2016-06-10 | 2023-04-25 | OneTrust, LLC | Data processing user interface monitoring systems and related methods |
US11403377B2 (en) | 2016-06-10 | 2022-08-02 | OneTrust, LLC | Privacy management systems and methods |
US11625502B2 (en) | 2016-06-10 | 2023-04-11 | OneTrust, LLC | Data processing systems for identifying and modifying processes that are subject to data subject access requests |
US11188615B2 (en) | 2016-06-10 | 2021-11-30 | OneTrust, LLC | Data processing consent capture systems and related methods |
US11227247B2 (en) | 2016-06-10 | 2022-01-18 | OneTrust, LLC | Data processing systems and methods for bundled privacy policies |
US10565236B1 (en) | 2016-06-10 | 2020-02-18 | OneTrust, LLC | Data processing systems for generating and populating a data inventory |
US10585968B2 (en) | 2016-06-10 | 2020-03-10 | OneTrust, LLC | Data processing systems for fulfilling data subject access requests and related methods |
US10706131B2 (en) | 2016-06-10 | 2020-07-07 | OneTrust, LLC | Data processing systems and methods for efficiently assessing the risk of privacy campaigns |
US11366909B2 (en) | 2016-06-10 | 2022-06-21 | OneTrust, LLC | Data processing and scanning systems for assessing vendor risk |
US10873606B2 (en) | 2016-06-10 | 2020-12-22 | OneTrust, LLC | Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods |
US10282559B2 (en) | 2016-06-10 | 2019-05-07 | OneTrust, LLC | Data processing systems for identifying, assessing, and remediating data processing risks using data modeling techniques |
US11416590B2 (en) | 2016-06-10 | 2022-08-16 | OneTrust, LLC | Data processing and scanning systems for assessing vendor risk |
US11366786B2 (en) | 2016-06-10 | 2022-06-21 | OneTrust, LLC | Data processing systems for processing data subject access requests |
US10678945B2 (en) | 2016-06-10 | 2020-06-09 | OneTrust, LLC | Consent receipt management systems and related methods |
US10282700B2 (en) | 2016-06-10 | 2019-05-07 | OneTrust, LLC | Data processing systems for generating and populating a data inventory |
US10878127B2 (en) | 2016-06-10 | 2020-12-29 | OneTrust, LLC | Data subject access request processing systems and related methods |
US10997318B2 (en) | 2016-06-10 | 2021-05-04 | OneTrust, LLC | Data processing systems for generating and populating a data inventory for processing data access requests |
US10706379B2 (en) | 2016-06-10 | 2020-07-07 | OneTrust, LLC | Data processing systems for automatic preparation for remediation and related methods |
US11354434B2 (en) | 2016-06-10 | 2022-06-07 | OneTrust, LLC | Data processing systems for verification of consent and notice processing and related methods |
US11416798B2 (en) | 2016-06-10 | 2022-08-16 | OneTrust, LLC | Data processing systems and methods for providing training in a vendor procurement process |
US11341447B2 (en) | 2016-06-10 | 2022-05-24 | OneTrust, LLC | Privacy management systems and methods |
US11392720B2 (en) | 2016-06-10 | 2022-07-19 | OneTrust, LLC | Data processing systems for verification of consent and notice processing and related methods |
US11651104B2 (en) | 2016-06-10 | 2023-05-16 | OneTrust, LLC | Consent receipt management systems and related methods |
US11651106B2 (en) | 2016-06-10 | 2023-05-16 | OneTrust, LLC | Data processing systems for fulfilling data subject access requests and related methods |
US11157600B2 (en) | 2016-06-10 | 2021-10-26 | OneTrust, LLC | Data processing and scanning systems for assessing vendor risk |
US11222142B2 (en) | 2016-06-10 | 2022-01-11 | OneTrust, LLC | Data processing systems for validating authorization for personal data collection, storage, and processing |
US10909488B2 (en) | 2016-06-10 | 2021-02-02 | OneTrust, LLC | Data processing systems for assessing readiness for responding to privacy-related incidents |
US10949565B2 (en) | 2016-06-10 | 2021-03-16 | OneTrust, LLC | Data processing systems for generating and populating a data inventory |
US10896394B2 (en) | 2016-06-10 | 2021-01-19 | OneTrust, LLC | Privacy management systems and methods |
US10614247B2 (en) | 2016-06-10 | 2020-04-07 | OneTrust, LLC | Data processing systems for automated classification of personal information from documents and related methods |
US10572686B2 (en) | 2016-06-10 | 2020-02-25 | OneTrust, LLC | Consent receipt management systems and related methods |
US11238390B2 (en) | 2016-06-10 | 2022-02-01 | OneTrust, LLC | Privacy management systems and methods |
US11144622B2 (en) | 2016-06-10 | 2021-10-12 | OneTrust, LLC | Privacy management systems and methods |
US11295316B2 (en) | 2016-06-10 | 2022-04-05 | OneTrust, LLC | Data processing systems for identity validation for consumer rights requests and related methods |
US11074367B2 (en) | 2016-06-10 | 2021-07-27 | OneTrust, LLC | Data processing systems for identity validation for consumer rights requests and related methods |
US10769301B2 (en) | 2016-06-10 | 2020-09-08 | OneTrust, LLC | Data processing systems for webform crawling to map processing activities and related methods |
US11023842B2 (en) | 2016-06-10 | 2021-06-01 | OneTrust, LLC | Data processing systems and methods for bundled privacy policies |
US11087260B2 (en) | 2016-06-10 | 2021-08-10 | OneTrust, LLC | Data processing systems and methods for customizing privacy training |
US10803200B2 (en) | 2016-06-10 | 2020-10-13 | OneTrust, LLC | Data processing systems for processing and managing data subject access in a distributed environment |
US11416109B2 (en) | 2016-06-10 | 2022-08-16 | OneTrust, LLC | Automated data processing systems and methods for automatically processing data subject access requests using a chatbot |
US10606916B2 (en) | 2016-06-10 | 2020-03-31 | OneTrust, LLC | Data processing user interface monitoring systems and related methods |
US11210420B2 (en) | 2016-06-10 | 2021-12-28 | OneTrust, LLC | Data subject access request processing systems and related methods |
US10565161B2 (en) | 2016-06-10 | 2020-02-18 | OneTrust, LLC | Data processing systems for processing data subject access requests |
US10169609B1 (en) | 2016-06-10 | 2019-01-01 | OneTrust, LLC | Data processing systems for fulfilling data subject access requests and related methods |
US11151233B2 (en) | 2016-06-10 | 2021-10-19 | OneTrust, LLC | Data processing and scanning systems for assessing vendor risk |
US10592648B2 (en) | 2016-06-10 | 2020-03-17 | OneTrust, LLC | Consent receipt management systems and related methods |
US11146566B2 (en) | 2016-06-10 | 2021-10-12 | OneTrust, LLC | Data processing systems for fulfilling data subject access requests and related methods |
US10503926B2 (en) | 2016-06-10 | 2019-12-10 | OneTrust, LLC | Consent receipt management systems and related methods |
US11562097B2 (en) | 2016-06-10 | 2023-01-24 | OneTrust, LLC | Data processing systems for central consent repository and related methods |
US11675929B2 (en) | 2016-06-10 | 2023-06-13 | OneTrust, LLC | Data processing consent sharing systems and related methods |
US11301796B2 (en) | 2016-06-10 | 2022-04-12 | OneTrust, LLC | Data processing systems and methods for customizing privacy training |
US10642870B2 (en) | 2016-06-10 | 2020-05-05 | OneTrust, LLC | Data processing systems and methods for automatically detecting and documenting privacy-related aspects of computer software |
US10783256B2 (en) | 2016-06-10 | 2020-09-22 | OneTrust, LLC | Data processing systems for data transfer risk identification and related methods |
US11727141B2 (en) | 2016-06-10 | 2023-08-15 | OneTrust, LLC | Data processing systems and methods for synching privacy-related user consent across multiple computing devices |
US11200341B2 (en) | 2016-06-10 | 2021-12-14 | OneTrust, LLC | Consent receipt management systems and related methods |
US11294939B2 (en) | 2016-06-10 | 2022-04-05 | OneTrust, LLC | Data processing systems and methods for automatically detecting and documenting privacy-related aspects of computer software |
US10416966B2 (en) | 2016-06-10 | 2019-09-17 | OneTrust, LLC | Data processing systems for identity validation of data subject access requests and related methods |
US10706174B2 (en) | 2016-06-10 | 2020-07-07 | OneTrust, LLC | Data processing systems for prioritizing data subject access requests for fulfillment and related methods |
US11520928B2 (en) | 2016-06-10 | 2022-12-06 | OneTrust, LLC | Data processing systems for generating personal data receipts and related methods |
US11222139B2 (en) | 2016-06-10 | 2022-01-11 | OneTrust, LLC | Data processing systems and methods for automatic discovery and assessment of mobile software development kits |
US10565397B1 (en) | 2016-06-10 | 2020-02-18 | OneTrust, LLC | Data processing systems for fulfilling data subject access requests and related methods |
US10284604B2 (en) | 2016-06-10 | 2019-05-07 | OneTrust, LLC | Data processing and scanning systems for generating and populating a data inventory |
US10846433B2 (en) | 2016-06-10 | 2020-11-24 | OneTrust, LLC | Data processing consent management systems and related methods |
US10592692B2 (en) | 2016-06-10 | 2020-03-17 | OneTrust, LLC | Data processing systems for central consent repository and related methods |
US10776517B2 (en) | 2016-06-10 | 2020-09-15 | OneTrust, LLC | Data processing systems for calculating and communicating cost of fulfilling data subject access requests and related methods |
US11134086B2 (en) | 2016-06-10 | 2021-09-28 | OneTrust, LLC | Consent conversion optimization systems and related methods |
US11461500B2 (en) | 2016-06-10 | 2022-10-04 | OneTrust, LLC | Data processing systems for cookie compliance testing with website scanning and related methods |
US11586700B2 (en) | 2016-06-10 | 2023-02-21 | OneTrust, LLC | Data processing systems and methods for automatically blocking the use of tracking tools |
US10510031B2 (en) | 2016-06-10 | 2019-12-17 | OneTrust, LLC | Data processing systems for identifying, assessing, and remediating data processing risks using data modeling techniques |
US10607028B2 (en) | 2016-06-10 | 2020-03-31 | OneTrust, LLC | Data processing systems for data testing to confirm data deletion and related methods |
US11228620B2 (en) | 2016-06-10 | 2022-01-18 | OneTrust, LLC | Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods |
US10848523B2 (en) | 2016-06-10 | 2020-11-24 | OneTrust, LLC | Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods |
US10318761B2 (en) | 2016-06-10 | 2019-06-11 | OneTrust, LLC | Data processing systems and methods for auditing data request compliance |
US10909265B2 (en) | 2016-06-10 | 2021-02-02 | OneTrust, LLC | Application privacy scanning systems and related methods |
US10740487B2 (en) | 2016-06-10 | 2020-08-11 | OneTrust, LLC | Data processing systems and methods for populating and maintaining a centralized database of personal data |
US10467432B2 (en) | 2016-06-10 | 2019-11-05 | OneTrust, LLC | Data processing systems for use in automatically generating, populating, and submitting data subject access requests |
US10282182B2 (en) * | 2016-09-23 | 2019-05-07 | Intel Corporation | Technologies for translation cache management in binary translation systems |
US10013577B1 (en) | 2017-06-16 | 2018-07-03 | OneTrust, LLC | Data processing systems for identifying whether cookies contain personally identifying information |
CN109143983B (zh) * | 2018-08-15 | 2019-12-24 | 杭州电子科技大学 | 嵌入式可编程控制器的运动控制方法及装置 |
US11144675B2 (en) | 2018-09-07 | 2021-10-12 | OneTrust, LLC | Data processing systems and methods for automatically protecting sensitive data within privacy management systems |
US11544409B2 (en) | 2018-09-07 | 2023-01-03 | OneTrust, LLC | Data processing systems and methods for automatically protecting sensitive data within privacy management systems |
US10803202B2 (en) | 2018-09-07 | 2020-10-13 | OneTrust, LLC | Data processing systems for orphaned data identification and deletion and related methods |
WO2022011142A1 (en) | 2020-07-08 | 2022-01-13 | OneTrust, LLC | Systems and methods for targeted data discovery |
EP4189569A1 (en) | 2020-07-28 | 2023-06-07 | OneTrust LLC | Systems and methods for automatically blocking the use of tracking tools |
US11475165B2 (en) | 2020-08-06 | 2022-10-18 | OneTrust, LLC | Data processing systems and methods for automatically redacting unstructured data from a data subject access request |
US11436373B2 (en) | 2020-09-15 | 2022-09-06 | OneTrust, LLC | Data processing systems and methods for detecting tools for the automatic blocking of consent requests |
WO2022061270A1 (en) | 2020-09-21 | 2022-03-24 | OneTrust, LLC | Data processing systems and methods for automatically detecting target data transfers and target data processing |
WO2022099023A1 (en) | 2020-11-06 | 2022-05-12 | OneTrust, LLC | Systems and methods for identifying data processing activities based on data discovery results |
US11687528B2 (en) | 2021-01-25 | 2023-06-27 | OneTrust, LLC | Systems and methods for discovery, classification, and indexing of data in a native computing system |
WO2022170047A1 (en) | 2021-02-04 | 2022-08-11 | OneTrust, LLC | Managing custom attributes for domain objects defined within microservices |
US20240111899A1 (en) | 2021-02-08 | 2024-04-04 | OneTrust, LLC | Data processing systems and methods for anonymizing data samples in classification analysis |
WO2022173912A1 (en) | 2021-02-10 | 2022-08-18 | OneTrust, LLC | Systems and methods for mitigating risks of third-party computing system functionality integration into a first-party computing system |
WO2022178089A1 (en) | 2021-02-17 | 2022-08-25 | OneTrust, LLC | Managing custom workflows for domain objects defined within microservices |
US11546661B2 (en) | 2021-02-18 | 2023-01-03 | OneTrust, LLC | Selective redaction of media content |
WO2022192269A1 (en) | 2021-03-08 | 2022-09-15 | OneTrust, LLC | Data transfer discovery and analysis systems and related methods |
US11562078B2 (en) | 2021-04-16 | 2023-01-24 | OneTrust, LLC | Assessing and managing computational risk involved with integrating third party computing functionality within a computing system |
US11620142B1 (en) | 2022-06-03 | 2023-04-04 | OneTrust, LLC | Generating and customizing user interfaces for demonstrating functions of interactive user environments |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4196414B2 (ja) * | 1997-01-23 | 2008-12-17 | サン・マイクロシステムズ・インコーポレーテッド | コンピュータリソースのロック処理 |
US6101524A (en) * | 1997-10-23 | 2000-08-08 | International Business Machines Corporation | Deterministic replay of multithreaded applications |
US6237019B1 (en) | 1998-03-18 | 2001-05-22 | International Business Machines Corporation | Method and apparatus for performing a semaphore operation |
US6360194B1 (en) | 1998-09-08 | 2002-03-19 | Bull Hn Information Systems Inc. | Different word size multiprocessor emulation |
EP1385090B1 (en) | 1998-10-10 | 2012-06-13 | International Business Machines Corporation | Program code conversion for variably sized registers |
US7516453B1 (en) * | 1998-10-26 | 2009-04-07 | Vmware, Inc. | Binary translator with precise exception synchronization mechanism |
US6223335B1 (en) | 1998-12-09 | 2001-04-24 | Sun Microsystems, Inc. | Platform independent double compare and swap operation |
US7856633B1 (en) * | 2000-03-24 | 2010-12-21 | Intel Corporation | LRU cache replacement for a partitioned set associative cache |
EP1202172A1 (en) * | 2000-10-31 | 2002-05-02 | Universiteit Gent | Topological, on-the-fly classification of objects into a global set and local sets |
US8473922B2 (en) * | 2001-09-19 | 2013-06-25 | Hewlett-Packard Development Company, L.P. | Runtime monitoring in component-based systems |
US20030066056A1 (en) * | 2001-09-28 | 2003-04-03 | Petersen Paul M. | Method and apparatus for accessing thread-privatized global storage objects |
US7496494B2 (en) * | 2002-09-17 | 2009-02-24 | International Business Machines Corporation | Method and system for multiprocessor emulation on a multiprocessor host system |
US7103528B2 (en) | 2002-09-19 | 2006-09-05 | Lsi Logic Corporation | Emulated atomic instruction sequences in a multiprocessor system |
JP4436036B2 (ja) * | 2002-12-18 | 2010-03-24 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 情報処理装置、トレース処理方法、プログラム及び記録媒体 |
US20040128542A1 (en) * | 2002-12-31 | 2004-07-01 | International Business Machines Corporation | Method and system for native authentication protocols in a heterogeneous federated environment |
US7178062B1 (en) * | 2003-03-12 | 2007-02-13 | Sun Microsystems, Inc. | Methods and apparatus for executing code while avoiding interference |
US7594089B2 (en) * | 2003-08-28 | 2009-09-22 | Mips Technologies, Inc. | Smart memory based synchronization controller for a multi-threaded multiprocessor SoC |
US7366956B2 (en) * | 2004-06-16 | 2008-04-29 | Hewlett-Packard Development Company, L.P. | Detecting data races in multithreaded computer programs |
US20060161919A1 (en) * | 2004-12-23 | 2006-07-20 | Onufryk Peter Z | Implementation of load linked and store conditional operations |
US8327336B2 (en) * | 2009-03-18 | 2012-12-04 | International Business Machines Corporation | Enhanced thread stepping |
-
2005
- 2005-06-06 GB GB0511462A patent/GB2427045B/en not_active Expired - Fee Related
- 2005-09-02 US US11/219,467 patent/US7962900B2/en not_active Expired - Fee Related
-
2006
- 2006-06-05 JP JP2008514198A patent/JP5182816B2/ja not_active Expired - Fee Related
- 2006-06-05 CN CN2006800200054A patent/CN101194230B/zh not_active Expired - Fee Related
- 2006-06-05 WO PCT/GB2006/002031 patent/WO2006131710A1/en active Application Filing
- 2006-06-05 EP EP06744085.9A patent/EP1955153B1/en not_active Not-in-force
-
2007
- 2007-05-04 HK HK07104788A patent/HK1098218A1/xx unknown
Also Published As
Publication number | Publication date |
---|---|
GB0511462D0 (en) | 2005-07-13 |
JP2008546086A (ja) | 2008-12-18 |
HK1098218A1 (en) | 2007-07-13 |
WO2006131710A1 (en) | 2006-12-14 |
CN101194230B (zh) | 2010-05-19 |
GB2427045B (en) | 2007-11-21 |
US20060277532A1 (en) | 2006-12-07 |
GB2427045A (en) | 2006-12-13 |
EP1955153B1 (en) | 2013-11-20 |
EP1955153A1 (en) | 2008-08-13 |
US7962900B2 (en) | 2011-06-14 |
CN101194230A (zh) | 2008-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5182816B2 (ja) | 共有リソースのアクセス調整機構を提供する方法、およびその装置及びコンピュータ・プログラム | |
KR950006616B1 (ko) | 변환된 프로그램 코드에서 소스 명령 분자를 보전하기 위한 시스템 및 방법 | |
US7543284B2 (en) | Partial dead code elimination optimizations for program code conversion | |
US20020199179A1 (en) | Method and apparatus for compiler-generated triggering of auxiliary codes | |
US7856618B2 (en) | Adaptively generating code for a computer program | |
JP4844971B2 (ja) | インタープリタの最適化をプログラム・コード変換の間に実行する方法及び装置 | |
EP2176763B1 (en) | Memory transaction grouping | |
US7243333B2 (en) | Method and apparatus for creating and executing integrated executables in a heterogeneous architecture | |
JP5182815B2 (ja) | プログラム・コード変換において例外を正確に処理するための方法、並びにその装置及びコンピュータ・プログラム | |
US8990786B2 (en) | Program optimizing apparatus, program optimizing method, and program optimizing article of manufacture | |
US20040221278A1 (en) | Method and apparatus for performing interpreter optimizations during program code conversion | |
US20070294675A1 (en) | Method and apparatus for handling exceptions during binding to native code | |
US20060206880A1 (en) | Execution control during program code conversion | |
US7168076B2 (en) | Facilitating efficient join operations between a head thread and a speculative thread | |
US20040221279A1 (en) | Method and apparatus for performing lazy byteswapping optimizations during program code conversion | |
US20030188141A1 (en) | Time-multiplexed speculative multi-threading to support single-threaded applications | |
KR101244069B1 (ko) | 프로그램 코드 변환시 정밀한 예외 핸들링을 위한 방법 및장치 | |
Elmas et al. | Goldilocks: a race-aware Java runtime | |
US20090328019A1 (en) | Detecting race conditions with a software transactional memory system | |
JPH08161169A (ja) | Vliw方式の計算機システム及びvliwの解釈・実行方法 | |
WO2006095155A1 (en) | Execution control during program code conversion | |
JP6011329B2 (ja) | プログラム生成装置、プログラム生成方法、および、コンピュータ・プログラム | |
JP2002182926A (ja) | コンパイル方法及びコンピュータ読み取り可能な記録媒体 | |
Bebenita | Trace-Based Compilation and Optimization in Meta-Circular Virtual Execution Environments | |
GB2400938A (en) | Lazy byteswapping optimizations during program code conversion |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090522 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20090731 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20090824 |
|
RD12 | Notification of acceptance of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7432 Effective date: 20090824 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120111 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120322 Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20120322 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120830 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121105 Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20121105 |
|
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: 20121220 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20121220 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20121220 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130109 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5182816 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160125 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |