JP5349072B2 - 資源排他制御方法および資源排他制御装置 - Google Patents
資源排他制御方法および資源排他制御装置 Download PDFInfo
- Publication number
- JP5349072B2 JP5349072B2 JP2009033698A JP2009033698A JP5349072B2 JP 5349072 B2 JP5349072 B2 JP 5349072B2 JP 2009033698 A JP2009033698 A JP 2009033698A JP 2009033698 A JP2009033698 A JP 2009033698A JP 5349072 B2 JP5349072 B2 JP 5349072B2
- Authority
- JP
- Japan
- Prior art keywords
- lock
- time
- determination threshold
- resource
- threshold time
- 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
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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Hardware Redundancy (AREA)
Description
共有資源ごとに対応し、各共有資源がどの情報処理手段によってロックされているかを管理する複数のロックオブジェクトと、
前記ロックオブジェクトのロック獲得を要求する情報処理手段がロック獲得に失敗したときに、先行するロック獲得情報処理手段のロック継続時間を取得するロック継続時間取得手段と、
前記ロック継続時間取得手段による前記ロック継続時間を判定閾値時間と比較し、その比較結果に応じてロック待ち動作を選択するロック待ち動作選択手段と、
前記ロック待ち動作選択手段によって選択される複数種類のロック待ち動作機構とを備えたものである。
図1は本発明の実施の形態1における資源排他制御装置を用いたマルチプロセッサシステムのシステム構成を示すブロック図である。このマルチプロセッサシステムは、複数の情報処理手段としての複数のプロセッサP1,P2,P3と、複数の共有資源R1,R2と、資源排他制御装置Aとから構成されている。資源排他制御装置Aは、資源ロック制御機構10とロックオブジェクト管理テーブル20とから構成されている。30はプロセッサP1,P2,P3と共有資源R1,R2と資源排他制御装置Aを相互に接続するバスである。以下、資源排他制御装置Aの構成要素について説明する。
図4は本発明の実施の形態2における資源排他制御装置を用いたマルチプロセッサシステムのシステム構成を示すブロック図である。図4において、実施の形態1の図1におけるのと同じ符号は同一構成要素を指しているので、詳しい説明は省略する。本実施の形態に特有の構成は、資源ロック制御機構10において、実際に消費されたロック時間に応じて判定閾値時間Thを動的(ダイナミック)に変更する判定閾値時間変更部15が追加されている点にある。本実施の形態の資源排他制御装置の基本的な動作は、実施の形態1の場合の図3(a)のフローチャートに従う。
図6は本発明の実施の形態3における資源排他制御装置を用いたマルチプロセッサシステムのシステム構成を示すブロック図である。図6において、実施の形態1の図1におけるのと同じ符号は同一構成要素を指しているので、詳しい説明は省略する。本実施の形態に特有の構成は、ロックオブジェクト管理テーブル20のロックオブジェクトL1において、複数のプロセッサP1,P2,P3のそれぞれに応じた固有の判定閾値時間Th1 ,Th2 ,Th3 を保有しているとともに、ロック情報21において、ロックオブジェクトのロックを獲得したプロセッサを示すロック獲得プロセッサPL をさらに保有している点である。ロックオブジェクトL2についても同様の構成となっている。なお、本構成は実施の形態2の構成に適用することもできる。
11…ロック継続時間取得部
12…ロック待ち動作選択部
13…スピンロック機構
14…サスペンドロック機構
15…判定閾値時間変更部
20…ロックオブジェクト管理テーブル
21…ロック情報
A…資源排他制御装置
L1,L2…ロックオブジェクト
P1,P2,P3…プロセッサ(情報処理手段)
PL …ロック獲得プロセッサ(ロック獲得情報処理手段)
R1,R2…共有資源
T ロック継続時間
Th,Th1 ,Th2 ,Th3 …判定閾値時間
ts …ロック開始時刻
Claims (16)
- 並列処理の実行が可能な複数の情報処理手段間で排他制御を行う資源排他制御方法であって、ロックオブジェクトのロック獲得を要求する情報処理手段がロック獲得に失敗したときに、先行するロック獲得情報処理手段のロック継続時間を判定閾値時間と比較し、その比較結果に応じてロック待ち動作を選択するように制御し、
前記ロック待ち動作の選択については、前記ロック継続時間が前記判定閾値時間を超えるときはスピンロックを選択し、前記ロック継続時間が前記判定閾値時間以下のときはサスペンドロックを選択することを特徴とする資源排他制御方法。 - 前記ロック継続時間については、ロック獲得成功時のシステム時刻をロック開始時刻として保持し、その保持したロック開始時刻から現在のシステム時刻までの経過時間をロック継続時間とする請求項1に記載の資源排他制御方法。
- 前記ロック継続時間については、ロック獲得成功時にタイマを起動させ、そのタイマのカウントを読み取ってロック継続時間とする請求項1に記載の資源排他制御方法。
- 前記判定閾値時間については、実際に消費されたロック時間に応じて動的に変更する請求項1から請求項3までのいずれかに記載の資源排他制御方法。
- 前記判定閾値時間の動的な変更については、実際に消費されたロック時間が現在の判定閾値時間より短いときに限定して変更する請求項4に記載の資源排他制御方法。
- 前記判定閾値時間の動的な変更については、現在までの実際に消費されたロック時間の平均値に変更する請求項4に記載の資源排他制御方法。
- 前記判定閾値時間については、情報処理手段ごとに固有の判定閾値時間を保有する請求項1から請求項6までのいずれかに記載の資源排他制御方法。
- 前記情報処理手段がマルチプロセッサシステムにおけるプロセッサであり、前記ロックオブジェクトが前記マルチプロセッサシステムにおけるプロセッサ間排他制御のロックオブジェクトである請求項1から請求項7までのいずれかに記載の資源排他制御方法。
- 並列処理の実行が可能な複数の情報処理手段間で排他制御を行う資源排他制御装置であって、
共有資源ごとに対応し、各共有資源がどの情報処理手段によってロックされているかを管理する複数のロックオブジェクトと、
前記ロックオブジェクトのロック獲得を要求する情報処理手段がロック獲得に失敗したときに、先行するロック獲得情報処理手段のロック継続時間を取得するロック継続時間取得手段と、
前記ロック継続時間取得手段による前記ロック継続時間を判定閾値時間と比較し、その比較結果に応じてロック待ち動作を選択するロック待ち動作選択手段と、
前記ロック待ち動作選択手段によって選択される複数種類のロック待ち動作機構とを備え、
前記ロック待ち動作機構は、スピンロック機構とサスペンドロック機構とを保有し、
前記ロック待ち動作選択手段は、前記ロック継続時間が前記判定閾値時間を超えるときは前記スピンロック機構を選択し、前記ロック継続時間が前記判定閾値時間以下のときは前記サスペンドロック機構を選択する資源排他制御装置。 - 前記ロック継続時間については、ロック獲得成功時のシステム時刻をロック開始時刻として保持し、その保持したロック開始時刻から現在のシステム時刻までの経過時間をロック継続時間とする請求項9に記載の資源排他制御装置。
- 前記ロック継続時間については、ロック獲得成功時にタイマを起動させ、そのタイマのカウントを読み取ってロック継続時間とする請求項9に記載の資源排他制御装置。
- さらに、実際に消費されたロック時間に応じて前記判定閾値時間を動的に変更する判定閾値時間変更手段を備えている請求項9から請求項11までのいずれかに記載の資源排他制御装置。
- 前記判定閾値時間変更手段は、実際に消費されたロック時間が現在の判定閾値時間より短いときに限定して前記判定閾値時間の動的な変更を行う請求項12に記載の資源排他制御装置。
- 前記判定閾値時間変更手段は、前記判定閾値時間の動的な変更において現在までの実際に消費されたロック時間の平均値に変更する請求項12に記載の資源排他制御装置。
- 前記判定閾値時間については、情報処理手段ごとに固有の判定閾値時間を保有する請求項9から請求項14までのいずれかに記載の資源排他制御装置。
- 前記情報処理手段がマルチプロセッサシステムにおけるプロセッサであり、前記ロックオブジェクトが前記マルチプロセッサシステムにおけるプロセッサ間排他制御のロックオブジェクトである請求項9から請求項15までのいずれかに記載の資源排他制御装置。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009033698A JP5349072B2 (ja) | 2009-02-17 | 2009-02-17 | 資源排他制御方法および資源排他制御装置 |
PCT/JP2009/006492 WO2010095198A1 (ja) | 2009-02-17 | 2009-12-01 | 資源排他制御方法および資源排他制御装置 |
CN200980156912.5A CN102317918A (zh) | 2009-02-17 | 2009-12-01 | 资源排他控制方法以及资源排他控制装置 |
US13/197,544 US8463911B2 (en) | 2009-02-17 | 2011-08-03 | Exclusive control method of resource and exclusive controller of resource |
US13/829,923 US9135085B2 (en) | 2009-02-17 | 2013-03-14 | Exclusive control method of resource and exclusive controller of resource |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009033698A JP5349072B2 (ja) | 2009-02-17 | 2009-02-17 | 資源排他制御方法および資源排他制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010191575A JP2010191575A (ja) | 2010-09-02 |
JP5349072B2 true JP5349072B2 (ja) | 2013-11-20 |
Family
ID=42633501
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009033698A Expired - Fee Related JP5349072B2 (ja) | 2009-02-17 | 2009-02-17 | 資源排他制御方法および資源排他制御装置 |
Country Status (4)
Country | Link |
---|---|
US (2) | US8463911B2 (ja) |
JP (1) | JP5349072B2 (ja) |
CN (1) | CN102317918A (ja) |
WO (1) | WO2010095198A1 (ja) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8595567B2 (en) * | 2010-12-16 | 2013-11-26 | Wind River Systems, Inc. | Method and system for spinlock fault recovery |
CN102298539A (zh) * | 2011-06-07 | 2011-12-28 | 华东师范大学 | 一种用于分布式并行处理的共享资源调度方法及系统 |
JP5863021B2 (ja) * | 2011-10-31 | 2016-02-16 | Necプラットフォームズ株式会社 | マルチプロセッサシステム、及びマルチプロセッサシステムの制御方法 |
US9733664B1 (en) * | 2013-03-14 | 2017-08-15 | Gamesys Ltd. | Method for expiring fault-tolerant timers using distributed locks |
PL2976696T3 (pl) * | 2013-03-22 | 2020-05-18 | Nokia Technologies Oy | Wybieranie widoku interfejsu użytkownika |
CN104243359B (zh) * | 2013-06-20 | 2018-12-18 | 中兴通讯股份有限公司 | 一种获取共享资源的协同仲裁方法及装置 |
JP5621896B2 (ja) * | 2013-10-24 | 2014-11-12 | 富士通株式会社 | マルチプロセッサシステム、制御プログラム、および制御方法 |
WO2015061554A1 (en) * | 2013-10-25 | 2015-04-30 | Advanced Micro Devices, Inc. | Method and apparatus for performing a bus lock and translation lookaside buffer invalidation |
CN104932933B (zh) * | 2014-03-21 | 2018-11-13 | 华为技术有限公司 | 一种获取自旋锁的方法及装置 |
GB2525215B (en) | 2014-04-16 | 2019-05-08 | Ibm | A busy lock and a passive lock featuring embedded load management capabilities |
JP6295990B2 (ja) * | 2015-03-31 | 2018-03-20 | 京セラドキュメントソリューションズ株式会社 | 電子機器および情報処理プログラム |
CN104808766A (zh) * | 2015-03-31 | 2015-07-29 | 深圳市金立通信设备有限公司 | 一种终端 |
CN104808767A (zh) * | 2015-03-31 | 2015-07-29 | 深圳市金立通信设备有限公司 | 一种终端控制方法 |
CN105224062A (zh) * | 2015-09-28 | 2016-01-06 | 深圳市金立通信设备有限公司 | 一种终端控制方法及终端 |
US10459909B2 (en) * | 2016-01-13 | 2019-10-29 | Walmart Apollo, Llc | System for providing a time-limited mutual exclusivity lock and method therefor |
US10083068B2 (en) | 2016-03-29 | 2018-09-25 | Microsoft Technology Licensing, Llc | Fast transfer of workload between multiple processors |
CN106200880A (zh) * | 2016-07-27 | 2016-12-07 | 宇龙计算机通信科技(深圳)有限公司 | 终端控制方法、终端控制装置和终端 |
CN107885488B (zh) | 2016-09-29 | 2021-06-01 | 微软技术许可有限责任公司 | 意图和具有意图的锁 |
US9842010B1 (en) * | 2016-10-24 | 2017-12-12 | International Business Machines Corporation | Adjustment of a sleep duration for a process based on an expected time for securing a spinlock |
CN107066324A (zh) | 2017-03-08 | 2017-08-18 | 广东欧珀移动通信有限公司 | 一种指纹处理资源的控制方法及设备 |
CN106851123B (zh) | 2017-03-09 | 2020-12-22 | Oppo广东移动通信有限公司 | 曝光控制方法、曝光控制装置及电子装置 |
US10331498B1 (en) * | 2017-04-26 | 2019-06-25 | EMC IP Holding Company LLC | ColoredLock synchronization object, allowing flow specific policy of lock canceling |
JP2019067289A (ja) * | 2017-10-04 | 2019-04-25 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
JP6992471B2 (ja) * | 2017-12-13 | 2022-01-13 | 株式会社デンソー | 情報処理装置 |
JP6529699B1 (ja) * | 2018-06-15 | 2019-06-12 | 三菱電機株式会社 | 制御装置及び信号制御方法 |
US20200151010A1 (en) * | 2018-11-10 | 2020-05-14 | Nutanix, Inc. | Scheduling of fixed number of non-sharable resources |
US20220027464A1 (en) * | 2020-07-23 | 2022-01-27 | Nxp Usa, Inc. | Systems and methods for constraining access to one time programmable storage elements |
CN112947677B (zh) * | 2021-02-05 | 2024-02-27 | 北京深之度科技有限公司 | 一种计时器读取方法、计算设备及可读存储介质 |
CN113535415B (zh) * | 2021-06-21 | 2023-08-04 | 福建天泉教育科技有限公司 | 一种资源获取方法及终端 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6079460A (ja) * | 1983-10-07 | 1985-05-07 | Nec Corp | 密結合多重演算装置における制御方式 |
JPS61250765A (ja) * | 1985-04-30 | 1986-11-07 | Toshiba Corp | マルチプロセツサシステムの排他制御方式 |
US5274809A (en) * | 1988-05-26 | 1993-12-28 | Hitachi, Ltd. | Task execution control method for a multiprocessor system with enhanced post/wait procedure |
JPH0381859A (ja) * | 1989-08-25 | 1991-04-08 | Nec Corp | マルチプロセッサシステム |
JPH05225149A (ja) * | 1992-02-13 | 1993-09-03 | Toshiba Corp | ロック方式 |
JPH07319716A (ja) * | 1994-05-23 | 1995-12-08 | Hitachi Ltd | 計算機システムの資源の排他制御方式 |
JP2001084235A (ja) * | 1999-09-10 | 2001-03-30 | Nec Corp | ロック粒度統計情報を利用した排他制御方法及びプログラムを記録した機械読み取り可能な記録媒体 |
US20060048160A1 (en) * | 2004-09-02 | 2006-03-02 | International Business Machines Corporation | Method, apparatus, and computer program product for providing a self-tunable parameter used for dynamically yielding an idle processor |
-
2009
- 2009-02-17 JP JP2009033698A patent/JP5349072B2/ja not_active Expired - Fee Related
- 2009-12-01 WO PCT/JP2009/006492 patent/WO2010095198A1/ja active Application Filing
- 2009-12-01 CN CN200980156912.5A patent/CN102317918A/zh active Pending
-
2011
- 2011-08-03 US US13/197,544 patent/US8463911B2/en not_active Expired - Fee Related
-
2013
- 2013-03-14 US US13/829,923 patent/US9135085B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US9135085B2 (en) | 2015-09-15 |
CN102317918A (zh) | 2012-01-11 |
JP2010191575A (ja) | 2010-09-02 |
US20130205057A1 (en) | 2013-08-08 |
US8463911B2 (en) | 2013-06-11 |
US20110296028A1 (en) | 2011-12-01 |
WO2010095198A1 (ja) | 2010-08-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5349072B2 (ja) | 資源排他制御方法および資源排他制御装置 | |
JP4603583B2 (ja) | プロセッサ、装置、及び方法 | |
CN108920267B (zh) | 任务处理装置 | |
EP2232370B1 (en) | Multithreaded processor with lock indicator | |
US8108696B2 (en) | Optimizing non-preemptible read-copy update for low-power usage by avoiding unnecessary wakeups | |
KR101529018B1 (ko) | 멀티코어 컴퓨팅 디바이스들에 대한 다이나믹 슬립 | |
US6226717B1 (en) | System and method for exclusive access to shared storage | |
JP5546529B2 (ja) | 待機状態にあるプロセッサ実行リソースの共有 | |
US20110161540A1 (en) | Hardware supported high performance lock schema | |
TW200844749A (en) | Direct memory access controller | |
JP2005531860A (ja) | マルチプロセッサコンピュータシステム | |
JP2006031691A (ja) | スリープ‐起動機構を用いた比較および交換動作 | |
JP2007323192A (ja) | キャッシュメモリ装置および処理方法 | |
JP5347451B2 (ja) | マルチプロセッサシステム、競合回避プログラム及び競合回避方法 | |
US10621128B2 (en) | Controlling transitions of devices between normal state and quiescent state | |
JPWO2011096163A1 (ja) | 情報処理システム、排他制御方法および排他制御用プログラム | |
Zhang et al. | Scalable adaptive NUMA-aware lock | |
JP2001084235A (ja) | ロック粒度統計情報を利用した排他制御方法及びプログラムを記録した機械読み取り可能な記録媒体 | |
JP2011175378A (ja) | マルチプロセッサシステム、及びマルチプロセッサシステムの動作方法 | |
JP5300005B2 (ja) | スレッド実行制御方法、およびシステム | |
US8868845B1 (en) | Dynamic single/multi-reader, single-writer spinlocks | |
JP2010113574A (ja) | マルチプロセッサにおける資源の排他制御方法、排他制御システムおよびその関連技術 | |
JP2010044699A (ja) | 情報処理装置 | |
CN113703939B (zh) | 任务调度方法、系统及电子设备 | |
US20130290584A1 (en) | Sequence-based process locking |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110603 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121218 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130528 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130627 |
|
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: 20130806 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130820 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5349072 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |