JP4738548B2 - エミュレートされた処理環境でメモリ・アクセスを管理する方法、システム、およびそのためのコンピュータ・プログラム - Google Patents
エミュレートされた処理環境でメモリ・アクセスを管理する方法、システム、およびそのためのコンピュータ・プログラム Download PDFInfo
- Publication number
- JP4738548B2 JP4738548B2 JP2010500189A JP2010500189A JP4738548B2 JP 4738548 B2 JP4738548 B2 JP 4738548B2 JP 2010500189 A JP2010500189 A JP 2010500189A JP 2010500189 A JP2010500189 A JP 2010500189A JP 4738548 B2 JP4738548 B2 JP 4738548B2
- Authority
- JP
- Japan
- Prior art keywords
- memory unit
- access
- memory
- emulated
- cpu process
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 106
- 238000012545 processing Methods 0.000 title claims description 44
- 238000004590 computer program Methods 0.000 title description 5
- 230000008569 process Effects 0.000 claims description 98
- 238000012360 testing method Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 11
- 230000006870 function Effects 0.000 description 14
- 230000007246 mechanism Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000005923 long-lasting effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 230000007704 transition Effects 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
-
- 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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
- G06F12/1466—Key-lock mechanism
- G06F12/1475—Key-lock mechanism in a virtual system, e.g. with translation means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
-
- 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/45533—Hypervisors; Virtual machine monitors
- G06F9/45537—Provision of facilities of other operating environments, e.g. WINE
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Storage Device Security (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Debugging And Monitoring (AREA)
Description
2007年3月1日に出願され、整理番号POU920060207US1で、「EmployingA Data Structure Of Readily Accessible Units Of Memory To Facilitate MemoryAccess」という名称の米国特許出願第11/680,703号に記載されている。
a)Zアクセス・インジケータ602: これらは、メモリ単位へのアクセスを制御するz/Architecture(R)の一部として提供されるインジケータである。例として、以下のものを含む。
1)アクセス制御インジケータ(ACC): 参照がキー制御保護を条件とする場合、アクセス制御インジケータは、情報が保管されるときまたは取り出しに対して保護されている位置から情報が取り出されるときのアクセス・キーと突き合わされる。
2)取り出し保護インジケータ(F): 参照がキー制御保護を条件とする場合、取り出し保護インジケータは、キー制御保護が取り出しタイプ参照に適用されるかどうかを制御する。たとえば、1つの値は、保管タイプ参照のみがモニターされ、任意のアクセス・キーによる取り出しが許可されることを示し、もう1つの値は、キー制御保護が取り出しと保管の両方に適用されることを示す。
3)参照インジケータ(R): 対応するメモリ単位内の位置が情報の保管または取り出しのいずれかのための参照されるたびに、参照インジケータは、通常、特定の値(たとえば、1)に設定される。
4)変更インジケータ(C): 対応するメモリ単位内の位置に情報が保管されるたびに、変更インジケータは特定の値(たとえば、1)に設定される。
b)ロック・インジケータ604: これらのインジケータは、既存の制御ブロックによって表されるメモリ単位が1つまたは複数の他のプロセッサによってロックされているかどうかの判断を容易にするために、本発明の一態様により、この制御ブロックに含まれる。一例として、ロック・インジケータ604は以下のものを含む。
1)読み取りインジケータ(R): 本発明の一態様により、この環境のプロセッサごとに1つずつ、複数の読み取りインジケータが提供される。このインジケータは、特定のプロセッサが特定のメモリ単位に関する読み取りロックを有するかどうかを示す。
2)書き込みインジケータ(W): 本発明の一態様により、この環境のプロセッサごとに1つずつ、複数の書き込みインジケータが提供される。このインジケータは、そのプロセッサがそのメモリ単位に関する書き込みロックを有するかどうかを示す。
Claims (19)
- エミュレートされた処理環境でメモリ・アクセスを管理するためのプログラムであって、コンピュータが、
弱いメモリ整合性アーキテクチャを有するプロセッサ上で実行されるエミュレートされた中央演算処理装置(CPU)プロセスにより、操作単位の一部としてメモリ単位へのアクセスを要求するステップと、
前記エミュレートされたCPUプロセスにより、前記メモリ単位へのアクセスを管理するステップであって、堅固なメモリ整合性を要求することにより、前記メモリ単位が変更されている場合にエミュレートされた他のCPUプロセスが前記メモリ単位を観測できないようにロック管理を行う管理ステップであって、
1つまたは複数のメモリ・アクセス・テストを使用して、前記メモリ単位がアクセス可能であるかどうかを判断するステップであって、前記1つまたは複数のメモリ・アクセス・テストが、エミュレートされたCPUプロセスがある場合に、どのプロセスが前記メモリ単位に対して読み取りアクセスまたは書き込みアクセスを行えるかを示す表示を含む既存の構築されたアクセス制御ブロックに追加された、すでにアドレス変換され、アクセス可能なメモリ単位か否かのテストを含み、前記メモリ単位が利用できる場合に、前記要求されたメモリ単位にアクセスするステップと、
前記メモリ単位が他のエミュレートされたCPUプロセスによって保持されていて、この時点で前記エミュレートされたCPUプロセスにとってアクセス不能であると判断し、割り込みハンドラを呼び出して、前記エミュレートされたCPUプロセスが前記メモリ単位にアクセスできるようにするために前記メモリ単位について保持されている1つまたは複数の権利を前記他のエミュレートされたCPUプロセスが放棄することを要求するステップと、
要求側のエミュレートされたCPUプロセスによって保持されているメモリ単位へのアクセスを他のエミュレートされたCPUプロセスが要求しているかどうかを判断し、前記他のエミュレートされたCPUプロセスがアクセスを要求していることを示していると判断したことに応答して、前記操作単位を無効にするステップであって、前記無効化によってデッドロックを回避するステップと、
のうちの少なくとも1つを含む管理ステップと、
を実行する、前記プログラム。 - 前記要求されたメモリ単位にアクセスする前記ステップが、前記メモリ単位に関するロックを入手するステップを含む、請求項1記載のプログラム。
- 前記ロックを入手する前記ステップが、前記メモリ単位に関連する前記アクセス制御ブロック内に1つまたは複数のインジケータを設定するステップを含み、前記設定が、前記要求されたアクセスが書き込みアクセスであるか読み取りアクセスであるかによって決まる、請求項2記載のプログラム。
- 前記アクセス制御ブロックが、エミュレートされたCPUプロセスがある場合に、どのプロセスが前記メモリ単位への読み取りアクセスを行えるかを示す複数の読み取りインジケータと、エミュレートされたCPUプロセスがある場合に、どのプロセスが前記メモリ単位への書き込みアクセスを行えるかを指定する複数の書き込みインジケータと、前記メモリ単位へのアクセスを制御するための1つまたは複数の構築されたアクセス許可とを含む、請求項3記載のプログラム。
- 前記メモリ単位が他のエミュレートされたCPUプロセスによって保持されていることの判断が、前記アクセス制御ブロック内の1つまたは複数のインジケータをチェックするステップを含む、請求項1記載のプログラム。
- 前記要求されたアクセスが書き込みアクセスであるか読み取りアクセスであるかに応じて、1つまたは複数の権利を放棄するための前記要求が、前記他のエミュレートされたCPUプロセスによって保持されている前記メモリ単位に関するロックを解放するか、または前記メモリ単位に関する前記ロックを降格するための要求を含む、請求項1記載のプログラム。
- 前記他のエミュレートされたCPUプロセスに前記1つまたは複数の権利を放棄させるために、前記割り込みハンドラが、前記他のエミュレートされたCPUプロセスへの非同期割り込みを提供する、請求項1記載のプログラム。
- 放棄するための前記要求を受信したことに応答して、前記他のエミュレートされたCPUプロセスが前記1つまたは複数の権利を放棄し、放棄したことに応答して、前記エミュレートされたCPUプロセスが前記メモリ単位に関するロックを入手する、請求項1記載のプログラム。
- 無効にする前記ステップが、前記エミュレートされたCPUプロセスによって保持されている任意のロックを解放するステップを含む、請求項1記載のプログラム。
- 無効にしたことに応答して、前記操作単位を再始動するステップをさらに含む、請求項1記載のプログラム。
- 前記メモリ単位がメモリ・ページを含む、請求項1記載のプログラム。
- コンピュータがエミュレートされた処理環境でメモリ・アクセスを管理する方法であって、前記コンピュータが、
弱いメモリ整合性アーキテクチャを有するプロセッサ上で実行されるエミュレートされた中央演算処理装置(CPU)プロセスにより、操作単位の一部としてメモリ単位へのアクセスを要求するステップと、
前記エミュレートされたCPUプロセスにより、前記メモリ単位へのアクセスを管理するステップであって、堅固なメモリ整合性を要求することにより、前記メモリ単位が変更されている場合にエミュレートされた他のCPUプロセスが前記メモリ単位を観測できないようにロック管理を行う管理ステップであって、
1つまたは複数のメモリ・アクセス・テストを使用して、前記メモリ単位がアクセス可能であるかどうかを判断するステップであって、前記1つまたは複数のメモリ・アクセス・テストが、エミュレートされたCPUプロセスがある場合に、どのプロセスが前記メモリ単位に対して読み取りアクセスまたは書き込みアクセスを行えるかを示す表示を含む既存の構築されたアクセス制御ブロックに追加された、すでにアドレス変換され、アクセス可能なメモリ単位か否かのテストを含み、前記メモリ単位が利用できる場合に、前記要求されたメモリ単位にアクセスするステップと、
前記メモリ単位が他のエミュレートされたCPUプロセスによって保持されていて、この時点で前記エミュレートされたCPUプロセスにとってアクセス不能であると判断し、割り込みハンドラを呼び出して、前記エミュレートされたCPUプロセスが前記メモリ単位にアクセスできるようにするために前記メモリ単位について保持されている1つまたは複数の権利を前記他のエミュレートされたCPUプロセスが放棄することを要求するステップと、
要求側のエミュレートされたCPUプロセスによって保持されているメモリ単位へのアクセスを他のエミュレートされたCPUプロセスが要求しているかどうかを判断し、前記他のエミュレートされたCPUプロセスがアクセスを要求していることを示していると判断したことに応答して、前記操作単位を無効にするステップであって、前記無効化によってデッドロックを回避するステップと、
のうちの少なくとも1つを含む管理ステップと、
を含む、前記方法。 - 前記アクセス制御ブロックが、エミュレートされたCPUプロセスがある場合に、どのプロセスが前記メモリ単位への読み取りアクセスを行えるかを示す複数の読み取りインジケータと、エミュレートされたCPUプロセスがある場合に、どのプロセスが前記メモリ単位への書き込みアクセスを行えるかを指定する複数の書き込みインジケータと、前記メモリ単位へのアクセスを制御するための1つまたは複数の構築されたアクセス許可とを含む、請求項12記載の方法。
- 前記要求されたアクセスが書き込みアクセスであるか読み取りアクセスであるかに応じて、1つまたは複数の権利を放棄するための前記要求が、前記他のエミュレートされたCPUプロセスによって保持されている前記メモリ単位に関するロックを解放するか、または前記メモリ単位に関する前記ロックを降格するための要求を含む、請求項12記載の方法。
- 前記他のエミュレートされたCPUプロセスに前記1つまたは複数の権利を放棄させるために、前記割り込みハンドラが、前記他のエミュレートされたCPUプロセスへの非同期割り込みを提供する、請求項12記載の方法。
- エミュレートされた処理環境でメモリ・アクセスを管理するシステムであって、
メモリと、
操作単位の一部としてメモリ単位へのアクセスを要求するエミュレートされた中央演算処理装置(CPU)プロセスを実行する弱いメモリ整合性アーキテクチャを有するプロセッサと、
を含み、前記プロセッサが、
前記メモリ単位へのアクセスを管理するためのエミュレートされたCPUプロセスであって、堅固なメモリ整合性を要求することにより、前記メモリ単位が変更されている場合にエミュレートされた他のCPUプロセスが前記メモリ単位を観測できないようにロックし、
1つまたは複数のメモリ・アクセス・テストを使用して、前記メモリ単位がアクセス可能であるかどうかを判断するステップであって、前記1つまたは複数のメモリ・アクセス・テストが、エミュレートされたCPUプロセスがある場合に、どのプロセスが前記メモリ単位に対して読み取りアクセスまたは書き込みアクセスを行えるかを示す表示を含む既存の構築されたアクセス制御ブロックに追加された、すでにアドレス変換され、アクセス可能なメモリ単位か否かのテストを含み、前記メモリ単位が利用できる場合に、前記要求されたメモリ単位にアクセスするステップと、
前記メモリ単位が他のエミュレートされたCPUプロセスによって保持されていて、この時点で前記エミュレートされたCPUプロセスにとってアクセス不能であると判断し、割り込みハンドラを呼び出して、前記エミュレートされたCPUプロセスが前記メモリ単位にアクセスできるようにするために前記メモリ単位について保持されている1つまたは複数の権利を前記他のエミュレートされたCPUプロセスが放棄することを要求するステップと、
要求側のエミュレートされたCPUプロセスによって保持されているメモリ単位へのアクセスを他のエミュレートされたCPUプロセスが要求しているかどうかを判断し、前記他のエミュレートされたCPUプロセスがアクセスを要求していることを示していると判断したことに応答して、前記操作単位を無効にするステップであって、前記無効化によってデッドロックを回避するステップと、
のうちの少なくとも1つを含む、前記エミュレートされたCPUプロセスを実行する、
前記システム。 - 前記アクセス制御ブロックが、エミュレートされたCPUプロセスがある場合に、どのプロセスが前記メモリ単位への読み取りアクセスを行えるかを示す複数の読み取りインジケータと、エミュレートされたCPUプロセスがある場合に、どのプロセスが前記メモリ単位への書き込みアクセスを行えるかを指定する複数の書き込みインジケータと、前記メモリ単位へのアクセスを制御するための1つまたは複数の構築されたアクセス許可とを含む、請求項16記載のシステム。
- 前記要求されたアクセスが書き込みアクセスであるか読み取りアクセスであるかに応じて、1つまたは複数の権利を放棄するための前記要求が、前記他のエミュレートされたCPUプロセスによって保持されている前記メモリ単位に関するロックを解放するか、または前記メモリ単位に関する前記ロックを降格するための要求を含む、請求項16記載のシステム。
- 前記他のエミュレートされたCPUプロセスに前記1つまたは複数の権利を放棄させるために、前記割り込みハンドラが、前記他のエミュレートされたCPUプロセスへの非同期割り込みを提供する、請求項16記載のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/694,082 | 2007-03-30 | ||
US11/694,082 US7899663B2 (en) | 2007-03-30 | 2007-03-30 | Providing memory consistency in an emulated processing environment |
PCT/EP2008/053039 WO2008119642A2 (en) | 2007-03-30 | 2008-03-13 | Providing memory consistency in an emulated processing environment |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010524054A JP2010524054A (ja) | 2010-07-15 |
JP4738548B2 true JP4738548B2 (ja) | 2011-08-03 |
Family
ID=39735169
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010500189A Active JP4738548B2 (ja) | 2007-03-30 | 2008-03-13 | エミュレートされた処理環境でメモリ・アクセスを管理する方法、システム、およびそのためのコンピュータ・プログラム |
Country Status (6)
Country | Link |
---|---|
US (1) | US7899663B2 (ja) |
EP (1) | EP2142993B1 (ja) |
JP (1) | JP4738548B2 (ja) |
KR (1) | KR101107469B1 (ja) |
CN (1) | CN101647003B (ja) |
WO (1) | WO2008119642A2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9436617B2 (en) * | 2013-12-13 | 2016-09-06 | Texas Instruments Incorporated | Dynamic processor-memory revectoring architecture |
US9690709B2 (en) * | 2014-07-14 | 2017-06-27 | Oracle International Corporation | Variable handles |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001256065A (ja) * | 2000-03-14 | 2001-09-21 | Hitachi Ltd | 排他制御方法及び計算機システム |
WO2003040948A1 (fr) * | 2001-11-08 | 2003-05-15 | Fujitsu Limited | Ordinateur et procede de commande |
JP2004110811A (ja) * | 2002-09-17 | 2004-04-08 | Internatl Business Mach Corp <Ibm> | マルチプロセッサ・メモリ整合性の効率のよいエミュレーションのための方法およびシステム |
JP2006099182A (ja) * | 2004-09-28 | 2006-04-13 | Toshiba Corp | 計算機システム、プロセッサ割り当て方法及びプログラム |
JP2007520769A (ja) * | 2003-06-27 | 2007-07-26 | インテル コーポレイション | モニタメモリ待機を用いたキューされたロック |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5987566A (ja) | 1982-11-12 | 1984-05-21 | Hitachi Ltd | メモリアクセス検出方式 |
JPS63193243A (ja) * | 1987-02-06 | 1988-08-10 | Nec Corp | デ−タベ−ス処理方式 |
JPH03260734A (ja) * | 1990-03-09 | 1991-11-20 | Meidensha Corp | コンピュータシステムの資源管理方式 |
US5918248A (en) | 1996-12-30 | 1999-06-29 | Northern Telecom Limited | Shared memory control algorithm for mutual exclusion and rollback |
US5778221A (en) * | 1997-03-17 | 1998-07-07 | International Business Machines Corporation | System for executing asynchronous branch and link in parallel processor |
US5790851A (en) * | 1997-04-15 | 1998-08-04 | Oracle Corporation | Method of sequencing lock call requests to an O/S to avoid spinlock contention within a multi-processor environment |
US6075938A (en) * | 1997-06-10 | 2000-06-13 | The Board Of Trustees Of The Leland Stanford Junior University | Virtual machine monitors for scalable multiprocessors |
US6314501B1 (en) * | 1998-07-23 | 2001-11-06 | Unisys Corporation | Computer system and method for operating multiple operating systems in different partitions of the computer system and for allowing the different partitions to communicate with one another through shared memory |
US6282637B1 (en) * | 1998-12-02 | 2001-08-28 | Sun Microsystems, Inc. | Partially executing a pending atomic instruction to unlock resources when cancellation of the instruction occurs |
US6304924B1 (en) * | 1999-02-02 | 2001-10-16 | International Business Machines Corporation | Two lock-free, constant-space, multiple-(impure)-reader, single-writer structures |
AU7112100A (en) | 1999-08-31 | 2001-03-26 | Times N Systems, Inc. | Shared memory disk |
US6615340B1 (en) * | 2000-03-22 | 2003-09-02 | Wilmot, Ii Richard Byron | Extended operand management indicator structure and method |
US6615281B1 (en) * | 2000-05-05 | 2003-09-02 | International Business Machines Corporation | Multi-node synchronization using global timing source and interrupts following anticipatory wait state |
US6738871B2 (en) * | 2000-12-22 | 2004-05-18 | International Business Machines Corporation | Method for deadlock avoidance in a cluster environment |
US6463511B2 (en) * | 2000-12-29 | 2002-10-08 | Intel Corporation | System and method for high performance execution of locked memory instructions in a system with distributed memory and a restrictive memory model |
US6996812B2 (en) * | 2001-06-18 | 2006-02-07 | International Business Machines Corporation | Software implementation of synchronous memory barriers |
US6857036B2 (en) * | 2001-07-17 | 2005-02-15 | Hewlett Packard Development Company, L.P. | Hardware method for implementing atomic semaphore operations using code macros |
US20030115476A1 (en) * | 2001-10-31 | 2003-06-19 | Mckee Bret | Hardware-enforced control of access to memory within a computer using hardware-enforced semaphores and other similar, hardware-enforced serialization and sequencing mechanisms |
US20030093649A1 (en) * | 2001-11-14 | 2003-05-15 | Ronald Hilton | Flexible caching of translated code under emulation |
US7197585B2 (en) * | 2002-09-30 | 2007-03-27 | International Business Machines Corporation | Method and apparatus for managing the execution of a broadcast instruction on a guest processor |
US7213248B2 (en) * | 2002-10-10 | 2007-05-01 | International Business Machines Corporation | High speed promotion mechanism suitable for lock acquisition in a multiprocessor data processing system |
US6965905B2 (en) * | 2002-12-20 | 2005-11-15 | Sun Microsystems, Inc. | Lock-free, parallel remembered sets |
US6938130B2 (en) * | 2003-02-13 | 2005-08-30 | Sun Microsystems Inc. | Method and apparatus for delaying interfering accesses from other threads during transactional program execution |
JP4398425B2 (ja) | 2003-03-04 | 2010-01-13 | 興和株式会社 | 損傷皮膚修復用軟膏状製剤 |
US7529914B2 (en) * | 2004-06-30 | 2009-05-05 | Intel Corporation | Method and apparatus for speculative execution of uncontended lock instructions |
US8032658B2 (en) * | 2004-07-06 | 2011-10-04 | Oracle America, Inc. | Computer architecture and process for implementing a virtual vertical perimeter framework for an overloaded CPU having multiple network interfaces |
US8954751B2 (en) * | 2004-10-08 | 2015-02-10 | International Business Machines Corporation | Secure memory control parameters in table look aside buffer data fields and support memory array |
US20060265704A1 (en) * | 2005-04-21 | 2006-11-23 | Holt John M | Computer architecture and method of operation for multi-computer distributed processing with synchronization |
US20060248284A1 (en) * | 2005-04-29 | 2006-11-02 | Petev Petio G | Cache coherence implementation using shared locks and message server |
US7747996B1 (en) * | 2006-05-25 | 2010-06-29 | Oracle America, Inc. | Method of mixed lock-free and locking synchronization |
US8166194B2 (en) * | 2006-12-13 | 2012-04-24 | Microsoft Corporation | Lock-free shared audio buffer |
US7685381B2 (en) * | 2007-03-01 | 2010-03-23 | International Business Machines Corporation | Employing a data structure of readily accessible units of memory to facilitate memory access |
-
2007
- 2007-03-30 US US11/694,082 patent/US7899663B2/en active Active
-
2008
- 2008-03-13 WO PCT/EP2008/053039 patent/WO2008119642A2/en active Application Filing
- 2008-03-13 JP JP2010500189A patent/JP4738548B2/ja active Active
- 2008-03-13 KR KR1020097013094A patent/KR101107469B1/ko active IP Right Grant
- 2008-03-13 CN CN200880010407.5A patent/CN101647003B/zh active Active
- 2008-03-13 EP EP08717783A patent/EP2142993B1/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001256065A (ja) * | 2000-03-14 | 2001-09-21 | Hitachi Ltd | 排他制御方法及び計算機システム |
WO2003040948A1 (fr) * | 2001-11-08 | 2003-05-15 | Fujitsu Limited | Ordinateur et procede de commande |
JP2004110811A (ja) * | 2002-09-17 | 2004-04-08 | Internatl Business Mach Corp <Ibm> | マルチプロセッサ・メモリ整合性の効率のよいエミュレーションのための方法およびシステム |
JP2007520769A (ja) * | 2003-06-27 | 2007-07-26 | インテル コーポレイション | モニタメモリ待機を用いたキューされたロック |
JP2006099182A (ja) * | 2004-09-28 | 2006-04-13 | Toshiba Corp | 計算機システム、プロセッサ割り当て方法及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
US20080243468A1 (en) | 2008-10-02 |
US7899663B2 (en) | 2011-03-01 |
KR20090110297A (ko) | 2009-10-21 |
EP2142993A2 (en) | 2010-01-13 |
EP2142993B1 (en) | 2012-12-19 |
CN101647003A (zh) | 2010-02-10 |
JP2010524054A (ja) | 2010-07-15 |
KR101107469B1 (ko) | 2012-01-19 |
CN101647003B (zh) | 2014-04-16 |
WO2008119642A3 (en) | 2009-01-22 |
WO2008119642A2 (en) | 2008-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | Design and verification of the arm confidential compute architecture | |
JP3914541B2 (ja) | アドレスに基づいた処理制約のブロッキング | |
JP6176637B2 (ja) | トランザクション環境内でのプログラム・イベント記録 | |
TWI559225B (zh) | 於異動處理中儲存/恢復選擇之暫存器之電腦程式產品、電腦系統及方法 | |
JP6091608B2 (ja) | Nontransactional store命令 | |
EP2997477B1 (en) | Page table data management | |
JP6168537B2 (ja) | トランザクション実行内でのランダム化されたテスト | |
BR112012033821B1 (pt) | método de gerenciamento de requisições de interrupção em um ambiente computacional | |
BR112014031437B1 (pt) | Indicações de ramificação de execução transacional | |
JP2015525405A (ja) | Transactionabort命令 | |
JP2015526788A (ja) | トランザクション診断ブロック | |
BR112014031353B1 (pt) | Facilidade de assistência de processador | |
US20110320638A1 (en) | Enable/disable adapters of a computing environment | |
WO2009102006A1 (ja) | アクセス制御装置、その方法及び情報記録媒体 | |
JP2019508797A (ja) | トランザクションの優先順位付け | |
CN114661380B (zh) | 面向可信执行环境的系统调用处理方法及装置 | |
US20170249458A1 (en) | Application memory protection using a host page table switching virtual machine function | |
Chakrabarti et al. | Intel® software guard extensions (Intel® SGX) architecture for oversubscription of secure memory in a virtualized environment | |
US20070150630A1 (en) | File-based access control for shared hardware devices | |
JP4738548B2 (ja) | エミュレートされた処理環境でメモリ・アクセスを管理する方法、システム、およびそのためのコンピュータ・プログラム | |
US7743234B2 (en) | Facilitating communication within an emulated processing environment | |
JP2018531462A6 (ja) | 例外処理 | |
JP2018531462A (ja) | 例外処理 | |
JP2022521148A (ja) | メモリを保護するために使用されるストレージ・キーの変更の検出 | |
Soriano‐Salvador et al. | Optimistic semaphores with non‐deterministic choice operation for heterogeneous manycore systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100702 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20100702 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20100730 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100810 |
|
RD12 | Notification of acceptance of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7432 Effective date: 20100824 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20100824 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101022 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20101130 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110323 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20110328 |
|
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: 20110412 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20110412 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110426 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4738548 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: 20140513 Year of fee payment: 3 |