JP2008546086A - 共有リソースのためのアクセス協調を伴うプログラムコードを変換する方法および装置 - Google Patents
共有リソースのためのアクセス協調を伴うプログラムコードを変換する方法および装置 Download PDFInfo
- Publication number
- JP2008546086A JP2008546086A JP2008514198A JP2008514198A JP2008546086A JP 2008546086 A JP2008546086 A JP 2008546086A JP 2008514198 A JP2008514198 A JP 2008514198A JP 2008514198 A JP2008514198 A JP 2008514198A JP 2008546086 A JP2008546086 A JP 2008546086A
- Authority
- JP
- Japan
- Prior art keywords
- subject
- local
- code
- token
- shared resource
- 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
- 238000000034 method Methods 0.000 title claims description 46
- 238000006243 chemical reaction Methods 0.000 claims description 57
- 230000007246 mechanism Effects 0.000 claims description 45
- 230000004044 response Effects 0.000 claims description 16
- 238000013519 translation Methods 0.000 claims description 7
- 230000002452 interceptive effect Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 12
- 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
- 238000013461 design Methods 0.000 description 2
- 238000001514 detection method 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)
Abstract
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はメモリアドレスを記憶するのに使用される。
再試行:
ロード−リンク[MEMLL]
...ロード−データに対して操作を実行、
ストア−コンディショナル[MEMSC]
ストア−コンディショナルが失敗であれば分岐:再試行
...
(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 (35)
- マルチサブジェクトスレッド(171,172)を有するサブジェクトコード(17)をターゲットプロセッサ(13)によって実行可能なターゲット(21)コードに変換するプログラムコード内で使用するための、共有リソースのアクセス調整機構体を提供する方法であって、
(a)マルチサブジェクトスレッド(171,172)の一つに各々関係する複数のローカルデータストラクチャと、サブジェクトスレッド(171,172)の各々に共通するグローバルトークン(501)とを準備するステップと、
(b)サブジェクトコード(17)をデコードし、共有リソース(401)に関係するサブジェクトアクセス調整機構体と、サブジェクトアクセス調整機構体をチェックするサブジェクトチェッキング命令を設定するサブジェクト設定命令を識別するステップと、
(c)サブジェクト設定命令に応答して、グローバルトークン(501)を調整するために、および現スレッドのためのローカルデータストラクチャ(502)内に少なくともローカルトークン(521)を記憶するためにターゲートコード(21)を発生するステップであって、ローカルトークン(521)が被調整グローバルトークン(501)から導出されるステップと、
(d)サブジェクトチェッキング命令に応答して、グローバルトークン(501)に対して少なくとも記憶されたローカルトークン(521)を比較するためにターゲットコードを発生し、共有リソース(401)による潜在的インターフェアレンスを決定するステップとを備えることを特徴とする方法。 - 共有リソース(401)により潜在的にインターフェアする事象に応答してグローバルトークン(501)を調整するステップをさらに備えている請求項1に記載の方法。
- サブジェクトコードまたはサブジェクトコード(17)に影響を与える割り込みからシステムコールを検出し、グローバルトークン(501)の調整に応答して共有リソース(401による潜在的インターフェアレンスを表わすステップをさらに備えている請求項2に記載の方法。
- 第1サブジェクトスレッド(171)に関してステップ(c)を実行するステップと、
第2サブジェクトスレッド(172)に関してグローバルトークン(501)を調整するステップと、
第1サブジェクトスレッド(171)に関してステップ(d)を実行し、これによって第2サブジェクトスレッド(172)により共有リソース(401)による潜在的インターフェアレンスを決定するステップとをさらに備えている請求項1に記載の方法。 - ステップ(c)は、サブジェクト設定命令からローカルデータストラクチャ(502)に導出されたデータを記憶するステップをさらに備え、
ステップ(d)は、ローカルデータストラクチャ(502)から導出されたデータ(523,522)に対してサブジェクトチェッキング命令から導出されたデータを比較するステップをさらに備えている請求項1に記載の方法。 - ステップ(c)は、ローカルデータストラクチャ(502)内に、共有リソースから読み込まれるためにサブジェクト設定命令内に特定付けられた設定アドレスから導出されるローカルアドレスを記憶するステップをさらに備え、
ステップ(d)は、ローカルアドレス(523)をサブジェクトチェッキング命令から導出されたチェッキングアドレスと比較するステップをさらに備えている請求項1に記載の方法。 - ステップ(c)は、ローカルデータ構造体(502)内に、サブジェクト設定命令内に特定付けられた設定アドレスに関する共有リソース(401)から読み込まれるデータ値を記憶するローカル値(522)を記憶するステップをさらに備えており、
ステップ(d)は、ローカル値(522)をサブジェクトチェッキング命令内に特定付けられたチェッキングアドレスに関する共有リソース(401)から読み込まれたデータ値と比較するステップをさらに備えている請求項1に記載の方法。 - ステップ(c)は、ローカルデータ構造体(502)内に、共有リソース(401)から読み込まれるためのサブジェクト設定命令内に特定付けられた設定アドレスから導出されたローカルアドレス(523)と、設定アドレスに関する共有リソース(401)から読み込まれたデータ値を記憶するローカル値(522)とを記憶するステップをさらに備えており、
ステップ(d)は、
ローカルアドレス(523)をサブジェクトチェッキング命令から導出されたチェッキングアドレスと比較するステップと、
ローカル値(522)をチェッキングアドレスに関する共有リソースから読み込まれたデータ値と比較するステップとをさらに備えている請求項1に記載の方法。 - ステップ(d)は、サブジェクトチェッキング命令に応答して共有リソース(401)に新しいデータ値を記憶するステップをさらに備えている請求項1に記載の方法。
- ステップ(d)は、グローバルトークン(501)を調整するステップをさらに備えている請求項1に記載の方法。
- グローバルトークン(501)は数値カウンタ値である請求項1に記載の方法。
- ローカルトークン(521)を記憶するステップは、グローバルトークン(501)の現在値をコピーするステップを備えている請求項11に記載の方法。
- グローバルトークン(501)を調整するステップはカウンタの増分ステップを備えている請求項11に記載の方法。
- グローバルトークン(501)をターゲットプロセッサ(13)上で原子的に調整するステップを備えている請求項1に記載の方法。
- サブジェクトプロセッサ(400)によって実行可能なサブジェクトコード(17)を、ターゲットプロセッサ(13)によって実行可能なターゲットコード(21)に変換するステップを備えている請求項1に記載の方法。
- サブジェクトコード(17)からターゲットコード(21)に動的にバイナリトランスレーションを実行するステップを備えている請求項15に記載の方法。
- ターゲットプロセッサ(13)が異なるタイプのプロセッサをサブジェクトプロセッサ(400)に備えている請求項15に記載の方法。
- サブジェクトプロセッサ(400)によって実行可能なサブジェクトコード(17)からターゲットプロセッサ(13)によって実行可能なターゲットコード(21)にプログラムコード変換を実行する変換装置であって、該装置は、サブジェクトコード(17)を、ターゲットプロセッサ(13)上で実行するために被変換ターゲットコード(21)に変換する変換ユニット(19)を備え、サブジェクトコード(17)はマルチサブジェクトスレッドを含み、変換ユニット(19)は、
(a)マルチサブジェクトスレッドの一つに各々関係する複数のローカルデータストラクチャと、マルチサブジェクトスレッドの各々に共通するグローバルトークンとを準備し、
(b)サブジェクトコードをデコードし、共有リソースに関係するサブジェクトアクセス調整機構体と、サブジェクトアクセス調整機構体をチェックするサブジェクトチェッキング命令を設定するサブジェクト設定命令を識別し、
(c)サブジェクト設定命令に応答して、グローバルトークンを調整するために、および現スレッドのためのローカルデータストラクチャ内に少なくともローカルトークンを記憶するためにターゲートコードであって、ローカルトークンが被調整グローバルトークンから導出されるターゲットコードを発生し、
(d)サブジェクトチェッキングストラクチャに応答して、グローバルトークンに対して少なくとも記憶されたローカルトークンを比較するためにターゲットコードを発生し、共有リソースによる潜在的インターフェアレンスを決定することを特徴とする変換装置。 - 変換ユニット(19)は、共有リソース(401)により潜在的にインターフェアする事象に応答してグローバルトークン(501)を調整するように構成されている請求項18に記載の変換装置。
- 変換ユニット(19)は、サブジェクトコードまたはサブジェクトコード(17)に影響を与える割り込みからシステムコールを検出し、グローバルトークン(501)の調整に応答して共有リソース(401)による潜在的インターフェアレンスを表わすように構成されている請求項19に記載の変換装置。
- 変換ユニット(19)は、第1サブジェクトスレッド(171)に関してステップ(c)を実行し、第2サブジェクトスレッド(172)に関してグローバルトークン(501)を調整し、第1サブジェクトスレッド(171)に関してステップ(d)を実行し、これによって第2サブジェクトスレッド(172)により共有リソース(401)による潜在的インターフェアレンスを決定するように構成されている請求項18に記載の変換装置。
- 変換ユニット(19)は、サブジェクト設定命令からローカルデータストラクチャ(502)に導出されたデータを記憶し、ローカルデータストラクチャ(502)から導出されたデータ(523,522)に対してサブジェクトチェッキング命令から導出されたデータを比較するように構成されている請求項18に記載の変換装置。
- 変換ユニット(19)は、ローカルデータストラクチャ(502)内に、共有リソースから読み込まれるためにサブジェクト設定命令内に特定付けられた設定アドレスから導出されるローカルアドレスを記憶し、ローカルアドレス(523)をサブジェクトチェッキング命令から導出されたチェッキングアドレスと比較するように構成されている請求項18に記載の変換装置。
- 変換ユニット(19)は、ローカルデータ構造体(502)内に、サブジェクト設定命令内に特定付けられた設定アドレスに関する共有リソース(401)から読み込まれるデータ値(522)を記憶するローカル値(522)を記憶し、ローカル値(522)をサブジェクトチェッキング命令内に特定付けられたチェッキングアドレスに関する共有リソース(401)から読み込まれたデータ値と比較するように構成されている請求項18に記載の変換装置。
- 変換ユニット(19)は、ローカルデータ構造体(502)内に、共有リソース(401)から読み込まれるためのサブジェクト設定命令内に特定付けられた設定アドレスから導出されたローカルアドレス(523)と、設定アドレスに関する共有リソース(401)から読み取りされるデータ値を記憶するローカル値(522)とを記憶し、ローカルアドレス(523)をサブジェクトチェッキング命令から導出されたチェッキングアドレスと比較し、ローカル値(522)をチェッキングアドレスに関する共有リソースから読み込まれたデータ値と比較するように構成されている請求項18に記載の変換装置。
- 変換ユニット(19)は、サブジェクトチェッキング命令トランスレータ装置に応答して共有リソース(401)に新しいデータ値を記憶するように構成されている請求項18に記載の変化装置。
- 変換ユニット(19)は、グローバルトークン(501)を調整する工程(d)で構成されている請求項18に記載の変換装置。
- グローバルトークン(501)は数値カウンタ値である請求項18に記載の変換装置。
- 変換ユニット(19)は、グローバルトークン(501)の現在値をコピーすることによってローカルトークン(521)を記憶するように構成されている請求項28に記載の変換装置。
- 変換ユニット(19)は、カウンタを増分することによってグローバルトークン(501)を調整するように構成されている請求項28に記載の変換装置。
- 変換ユニット(19)は、グローバルトークン(501)をターゲットプロセッサ(13)上で原子的に調整するように構成されている請求項18に記載の変換装置。
- トランスレーションユニット(19)は、サブジェクトコード(17)からターゲットコード(21)に動的にバイナリトランスレーションを実行するように構成されている請求項18に記載の変換装置。
- ターゲットプロセッサ(13)が異なるタイプのプロセッサをサブジェクトプロセッサ(400)に備えている請求項18に記載の変換装置。
- マルチサブジェクトスレッド(171,172)を有するサブジェクトコード(17)から、ターゲットプロセッサ(13)によって実行可能なターゲット(21)コードへのプログラムコード変換に使用するために共有リソースのアクセス調整機構体を提供する方法を実行するコンピュータによって実行可能な命令が記録されているコンピュータ読み取り可能媒体であって、前記方法は、
(a)マルチサブジェクトスレッド(171,172)の一つに各々関係する複数のローカルデータ構造体(502a,502b)と、サブジェクトスレッド(171,172)の各々に共通するグローバルトークン(501)とを準備するステップと、
(b)サブジェクトコード(17)をデコードし、共有リソース(401)に関係するサブジェクトアクセス調整機構と、サブジェクトアクセス調整機構をチェックするサブジェクトチェッキング命令を設定するサブジェクト設定命令を識別するステップと、
(c)サブジェクト設定命令に応答して、グローバルトークン(501)を調整するために、および現スレッドのためのローカルデータ構造体(502)内に少なくともローカルトークン(521)を記憶するためにターゲートコード(21)を発生するステップであって、ローカルトークン(521)が被調整グローバルトークン(501)から導出されるステップと、
(d)サブジェクトチェッキング命令に応答して、少なくとも記憶されたローカルトークン(521)をグローバルトークン(501)と比較して共有リソース(401)による潜在的インターフェアレンスを決定するステップとを備えていることを特徴とするコンピュータ読み取り可能媒体。 - ローカルトークン、ローカルアドレスおよびローカル値の一つまたはそれ以上を備えているローカルデータストラクチャ。
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 true JP2008546086A (ja) | 2008-12-18 |
JP5182816B2 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 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001519937A (ja) * | 1997-01-23 | 2001-10-23 | サン・マイクロシステムズ・インコーポレイテッド | コンピュータリソースのロック処理 |
WO2004059415A2 (en) * | 2002-12-31 | 2004-07-15 | International Business Machines Corporation | Method and system for authentification in a heterogeneous federated environment, i.e. single sign on in federated domains |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 情報処理装置、トレース処理方法、プログラム及び記録媒体 |
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
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001519937A (ja) * | 1997-01-23 | 2001-10-23 | サン・マイクロシステムズ・インコーポレイテッド | コンピュータリソースのロック処理 |
WO2004059415A2 (en) * | 2002-12-31 | 2004-07-15 | International Business Machines Corporation | Method and system for authentification in a heterogeneous federated environment, i.e. single sign on in federated domains |
Non-Patent Citations (16)
Title |
---|
CSNA200003187001; 「MPC500ファミリ RCPUリファレンス・マニュアル RCPURMJ/AD」 第1版, 19960715, 第4-66〜4-69,9-98,9-165,D-1〜D-5頁, 日本モトローラ株式会社 * |
CSNA200200090001; 「UXソフトウェア 64ビットアセンブラプログラミングの手引 WTJ39-1」 初版, 199706, 第29〜38頁, 日本電気株式会社 * |
CSND199900700006; Ashis Khan: '「64ビット・アーキテクチャのR4000を開発」' 日経エレクトロニクス 1991年10月14日号(No.538), 19911014, 第171〜185頁, 日経BP社 * |
CSND200200673007; Joshua Fox著,村井進訳: '「協調型アプリケーションとJSDT JSDTにできること、できないこと」' TransTECH 2000年4月号(第9巻,第8号), 20000401, 第105〜113頁, 株式会社翔泳社 * |
CSND200501296011; 青柳龍也: '「J2SE5解体新書 第8回 新たな同期メカニズム」' 月刊ジャバワールド(Java WORLD) 2005年4月号(第9巻,第4号), 20050401, 第118〜129頁, (株)IDGジャパン * |
CSNG200401699007; 薄井弘之(外3名): '「Responsive Multithreaded Processorの同期機構の設計と実装」' 情報処理学会研究報告 Vol.2003, No.40(2003-ARC-153), 20030508, 第37〜42頁, 社団法人情報処理学会 * |
JPN6012064832; 薄井弘之(外3名): '「Responsive Multithreaded Processorの同期機構の設計と実装」' 情報処理学会研究報告 Vol.2003, No.40(2003-ARC-153), 20030508, 第37〜42頁, 社団法人情報処理学会 * |
JPN6012064834; Ashis Khan: '「64ビット・アーキテクチャのR4000を開発」' 日経エレクトロニクス 1991年10月14日号(No.538), 19911014, 第171〜185頁, 日経BP社 * |
JPN6012064837; 「MPC500ファミリ RCPUリファレンス・マニュアル RCPURMJ/AD」 第1版, 19960715, 第4-66〜4-69,9-98,9-165,D-1〜D-5頁, 日本モトローラ株式会社 * |
JPN6012064840; 「UXソフトウェア 64ビットアセンブラプログラミングの手引 WTJ39-1」 初版, 199706, 第29〜38頁, 日本電気株式会社 * |
JPN6012064843; Steve Kleiman(外2名)著、岩本信一訳: 「実践マルチスレッドプログラミング」 初版, 19980331, 第257〜269頁, 株式会社アスキー * |
JPN6012064847; 中森章: 「Interface増刊 マイクロプロセッサ・アーキテクチャ入門」 , 20040401, 第231〜253頁, CQ出版株式会社 * |
JPN6012064848; David R. Butenhof著,油井尊訳: 「POSIXスレッドプログラミング」 初版, 19981025, 第402頁, アジソン・ウィスレイ・パブリッシャーズ・ジャパン株 * |
JPN6012064850; Joshua Fox著,村井進訳: '「協調型アプリケーションとJSDT JSDTにできること、できないこと」' TransTECH 2000年4月号(第9巻,第8号), 20000401, 第105〜113頁, 株式会社翔泳社 * |
JPN6012064853; 青柳龍也: '「J2SE5解体新書 第8回 新たな同期メカニズム」' 月刊ジャバワールド(Java WORLD) 2005年4月号(第9巻,第4号), 20050401, 第118〜129頁, (株)IDGジャパン * |
JPN6012064855; Uresh Vahalia著,徳田英幸(外3名)訳: 「最前線UNIXのカーネル」 初版, 20000515, 第220〜224頁, 株式会社ピアソン・エデュケーション * |
Also Published As
Publication number | Publication date |
---|---|
JP5182816B2 (ja) | 2013-04-17 |
GB0511462D0 (en) | 2005-07-13 |
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) | 共有リソースのアクセス調整機構を提供する方法、およびその装置及びコンピュータ・プログラム | |
EP2176763B1 (en) | Memory transaction grouping | |
US20020199179A1 (en) | Method and apparatus for compiler-generated triggering of auxiliary codes | |
US7856618B2 (en) | Adaptively generating code for a computer program | |
US8924922B2 (en) | Pre-compiling hosted managed code | |
US6721944B2 (en) | Marking memory elements based upon usage of accessed information during speculative execution | |
KR950006616B1 (ko) | 변환된 프로그램 코드에서 소스 명령 분자를 보전하기 위한 시스템 및 방법 | |
US8990786B2 (en) | Program optimizing apparatus, program optimizing method, and program optimizing article of manufacture | |
JP5182815B2 (ja) | プログラム・コード変換において例外を正確に処理するための方法、並びにその装置及びコンピュータ・プログラム | |
US9378008B2 (en) | Method and system for creating, applying, and removing a software fix | |
US20080320282A1 (en) | Method And Systems For Providing Transaction Support For Executable Program Components | |
US20070294675A1 (en) | Method and apparatus for handling exceptions during binding to native code | |
US20130086348A1 (en) | Lock-Clustering Compilation for Software Transactional Memory | |
JP2015084251A (ja) | ソフトウェア・アプリケーションの性能向上 | |
US8843920B2 (en) | Systems and methods for deferring software implementation decisions until load time | |
US20080148246A1 (en) | System and method for redundant array copy removal in a pointer-free language | |
US7168076B2 (en) | Facilitating efficient join operations between a head thread and a speculative thread | |
JPH06324881A (ja) | メモリデータの重なり判定機能を備えたコンパイラ装置 | |
US20040015925A1 (en) | Method, article of manufacture and apparatus for performing automatic intemodule call linkage optimization | |
JP2005529383A (ja) | シングルスレッドアプリケーションを支援する時間多重化推論的マルチスレッディング | |
KR101244069B1 (ko) | 프로그램 코드 변환시 정밀한 예외 핸들링을 위한 방법 및장치 | |
US8769514B2 (en) | Detecting race conditions with a software transactional memory system | |
US7395530B2 (en) | Method for implementing single threaded optimizations in a potentially multi-threaded environment | |
JP6011329B2 (ja) | プログラム生成装置、プログラム生成方法、および、コンピュータ・プログラム | |
Oni et al. | Fine-Grained Overhead Analysis Utilizing Atomic Instructions for Cross-ISA Dynamic Binary Translation on Multicore Processor |
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 |