JPS62200449A - セマフオ制御方式 - Google Patents

セマフオ制御方式

Info

Publication number
JPS62200449A
JPS62200449A JP4160286A JP4160286A JPS62200449A JP S62200449 A JPS62200449 A JP S62200449A JP 4160286 A JP4160286 A JP 4160286A JP 4160286 A JP4160286 A JP 4160286A JP S62200449 A JPS62200449 A JP S62200449A
Authority
JP
Japan
Prior art keywords
processor
semaphore
task
shared data
value
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.)
Pending
Application number
JP4160286A
Other languages
English (en)
Inventor
Hiroshi Yoshihara
博 吉原
Toshiharu Tsunoda
角田 俊晴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP4160286A priority Critical patent/JPS62200449A/ja
Publication of JPS62200449A publication Critical patent/JPS62200449A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores

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)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、情報処理装置の制御に関するもので、特に複
数のプロセッサあるいはタスクが共有するデータの更新
に際しての競合による矛盾の発生を防止するためのセマ
フォ制御方式に係る。
〔従来の技術〕
従来上りプロセッサまたはタスク等により共有データの
更新が開始されると、それが終了するまでは他のプロセ
ッサまたはタスクからの参照や更新を排除するための方
法としてセマフォ制御が用いられている。
セマフォ制御とはセマフォを用いて、ソフトウェア的に
排他的制御を行なう方法である。
第1図は従来のセマフォによる制御を説明する図であっ
て、D0〜D、は各ビットを示しており、Xは不定値を
表わしている。データの更新に際して該当する共有デー
タに対応するセマフォメモリの内容(a)をプロセッサ
が読み出して、(b)→(e)に示すようにビットD、
を1”に変更してこれを (d)に示すようにセマフォ
メモリに書と込む。
すなわち、ビットD、を“1″にすることによって対応
する共有データが更新中であることを表示して他のアク
セスを退は矛盾の発生を防いでいる。
プロセッサまたはタスクは排他的制御を行なわれなけれ
ばならない共有データの更新に際しては、それを実行す
るプログラムの領域(以下、危険領域という、)に入る
まえに、その共有データに対応するセマフォ・メモリの
内容を読み出し、セマフォの値を調べる。その値が′0
″、即ち、いずれのプロセッサまたはタスクも危険領域
に入っていない場合はプロセッサまたはタスクはその値
を1″に更新し、凛セマフォ・メモリ上に書き込み、危
険li域に入っている旨の表示を設定しP−後、危険I
I域の命令の実行を開始する。、そして、危険II域の
全命令の実行を終了するとセマフォ・メモリの値を“O
″′に戻す。
一方、危険領域に入る際に既にセマフォ・メモリの値が
1″′であった場合には、新たにこの七77オ・メモリ
を“1″′にしようと試みたプロセッサまたはタスクは
危険領域の命令の実行を見合わせ、該当するプロセッサ
またはタスクの危険i域の命令の実行が終わるのを待つ
〔発明が解決しようとする問題点〕
上述した従来のセマフォ制御方式において、あるプロセ
ッサあるいはタスクが危険m域の実行権を獲得(セマフ
ォを “1”)した後で該プロセッサが故障したり、ま
たは該タスクのバグが発生した場合には、危険領域の実
行権を占有したままの状態を保持する。この状態におい
て、障害あるいはバグのない他のプロセッサまたはタス
クからは、どのプロセッサまたはタスクが該セマフォを
獲得しているのかを知る手段がなかった。
セマ7tを獲得しているプロセッサまたはタスクを知る
手段としては、セマフォ獲得のための命令(例えばTE
ST and SET等)の直後に、(セマフォ獲得に
成功した場合)セマフォに対応するメモリにプロセッサ
番号またはタスク番号を書き込む命令を実行する方法も
あるが、この場合においても、セマフォ獲得のための命
令からプロセッサ番号またはタスク番号を書き込むまで
の闇でプロセッサに障害を生ずると、上述のごとく七7
7オを獲得しているプロセッサまたはタスクを知ること
はできない。
本発明は、共有データ(危険領域の実行権)を占有した
ままの状態で、プロセッサが故障またはタスクのバグが
発生した場合に、そのプロセッサまたはタスクが危険領
域の命令を実行していたか否かを判断することが可能で
、実行していたならば、該プロセッサもしくは該タスク
を特定することによって、対応するデータを検索して、
矛盾の有無を調べ、矛盾があれば解消することを実現す
ることのできるセマフォ制御方式を提供することを目的
としている。
〔問題点を解決するための手段〕
本発明によれば、上記目的は前記特許請求の範囲に記載
した手段により達成される。すなわち、本発明はセマフ
ォ獲得時にセマフォ・メモリの構成単位の中の変更され
ない複数ビットに予め指定されたプロセッサあるいはタ
スクを識別する値をセマフォと同時に書き込むことによ
り、占有しているプロセッサあるいはタスクを判別する
ことが可能であることを最も主要な特徴とするもので、
従来の技術とは、セマフォに加えて前記プロセッサある
いはタスクを識別する値を付加した点において、相異す
るものである。
〔実施例〕
以下本発明に関し実施例の図面に基づいて詳細に説明す
る。
第2図は、本発明によるセマフォ制御を説明する図であ
って、データの更新に際して該当する共有データに対応
するセマフォメモリの内容(a)をプロセッサが読み出
して、これを(b)→(e)に示すように更新する。す
なわち、ビットD、を′1”とし、とットD0〜Dg(
図中斜線を施した部分)にプロセッサまたはタスクを識
別するための値を書き入れる。そして、これを(d)に
示すようにセマフォメモリに書き込む。
第3図は複数のプロセッサが共有データを有する場合の
本発明によるセマフォ制御についての制御の流れの例を
説明する図で、II〜In。
はそれぞれプロセッサを、2はメモリ、31〜3nはセ
マフォ、 4.〜4nは共有データ、5はメモリパスを
表わしており、A−Eはそれぞれ以下の説明に対応する
制御の流れを示している。
第3図において、プロセッサ12がある共有データを更
新しようとする時は、 A1プロセッサ1□がセマフォの値を調べるためにセマ
フォを読み出してくる。 (図中読み出したセマフォの
内容を6として表示している) B1該プロセッサ1□はセマフォの値が“0”であると
セマフォの値を1″に更新し、セマフォにプロセッサ1
2に対応するプロセッサ番号を付加してセマフォ・メモ
リに書き込む、(図中書き込むセマフォの内容を7とし
て表示している) C、プロセッサ12は危険領域の命令を実行する。即ち
、共有データの更新を行なう。
D1プロセッサ12の障害が発生すると、プロセッサ1
□は他の正常なプロセッサ(プロセッサ12以外の正常
な全てのプロセッサ)に割り込みをかける。
E%割り込みを受は付けたプロセッサは障害を発生して
いるプロセッサが獲得しているセマフォを検索すること
により、障害を発生しているプロセッサを判別すること
ができる。
〔発明の効果〕
以上説明したように本発明の方式によれば、セマ7t・
〆そす上にセマフォと同時にプロセッサ番号またはタス
ク番号を書き込むことにより、危険領域の実行権を占有
した*まの状態で、あるプロセッサが故障またはあるタ
スクのバグが発生した場合、そのプロセッサまたはタス
クが危険領域の命令を実行していたか否かを容易に識別
することが可能であり、実行していたならば、該プロセ
ッサもしくは該タスクを特定し、そして、対応するデー
タを検索して、矛盾の有無を調べ、矛盾があれば解消す
るという一連の処理を迅速に行なうことができる利点が
ある。
【図面の簡単な説明】
第1図は従来のセマフォによる制御を説明する図、第2
図は本発明によるセマフォ制御を説明する図、第3図は
複数のプロセッサが共有データを有する場合の本発明に
よるセマフォ制御についての制御の流れの例を説明する
図である。 1、〜1n・・・・・・プロセッサ、  2 ・・・・
・・ メモリ、3.〜3n・・・・・・ セマフォ、 
41〜4n・・・・・・共有データ、 5 ・・・・・
・ メモリバス、 6 ・・・・・・読み出したセマフ
ォの内容、7 ・・・・・・セマフォに書き込む内容 代理人 弁理士  本  間     崇苓     
                    4壷   
                    番(d) 
 G=び口)ヨΣ]】]Σコと〕下コ        
(d)  [どC=r=T=r=■:1=1=コ悴I図
     第2図 第、3図

Claims (1)

    【特許請求の範囲】
  1. メモリ・バスを共有する複数のプロセッサ間で共有デー
    タを有するマルチ・プロセッサ構成、または複数のタス
    ク間で共有データを有するマルチ・タスク構成、あるい
    は両構成の複合構成で、複数のプロセッサもしくはタス
    クが同時に同一の共有データを更新することによる矛盾
    の発生を防止するため、該当するデータが更新中である
    ことを表示するための手段を設け、該当データを更新す
    るに先立ち、読み出し−更新−書き替えを一体不可分に
    実行する命令を用いて、自プロセッサもしくは自タスク
    が該当データを更新する権利を排他的に獲得するセマフ
    ォ制御方式において、セマフォ獲得プロセッサ、または
    セマフォ獲得タスクを識別し得る情報をセマフォを獲得
    した表示とともに書き込むことを特徴とするセマフォ制
    御方式。
JP4160286A 1986-02-28 1986-02-28 セマフオ制御方式 Pending JPS62200449A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4160286A JPS62200449A (ja) 1986-02-28 1986-02-28 セマフオ制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4160286A JPS62200449A (ja) 1986-02-28 1986-02-28 セマフオ制御方式

Publications (1)

Publication Number Publication Date
JPS62200449A true JPS62200449A (ja) 1987-09-04

Family

ID=12612926

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4160286A Pending JPS62200449A (ja) 1986-02-28 1986-02-28 セマフオ制御方式

Country Status (1)

Country Link
JP (1) JPS62200449A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06301657A (ja) * 1993-02-22 1994-10-28 Internatl Business Mach Corp <Ibm> 並行管理方法
JP2001154872A (ja) * 1999-11-25 2001-06-08 Nec Ic Microcomput Syst Ltd ソフトウェア開発支援装置、ソフトウェア開発支援方法、および、そのプログラムを記録した記録媒体
US20120089760A1 (en) * 2006-03-29 2012-04-12 Bratin Saha Increasing Functionality Of A Reader-Writer Lock
US9860315B2 (en) 1998-09-10 2018-01-02 International Business Machines Corporation Controlling the state of duplexing of coupling facility structures

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06301657A (ja) * 1993-02-22 1994-10-28 Internatl Business Mach Corp <Ibm> 並行管理方法
US9860315B2 (en) 1998-09-10 2018-01-02 International Business Machines Corporation Controlling the state of duplexing of coupling facility structures
JP2001154872A (ja) * 1999-11-25 2001-06-08 Nec Ic Microcomput Syst Ltd ソフトウェア開発支援装置、ソフトウェア開発支援方法、および、そのプログラムを記録した記録媒体
US10491675B2 (en) 2001-10-01 2019-11-26 International Business Machines Corporation Controlling the state of duplexing of coupling facility structures
US20120089760A1 (en) * 2006-03-29 2012-04-12 Bratin Saha Increasing Functionality Of A Reader-Writer Lock
US8407386B2 (en) * 2006-03-29 2013-03-26 Intel Corporation Increasing functionality of a reader-writer lock
US8775708B2 (en) 2006-03-29 2014-07-08 Intel Corporation Increasing functionality of a reader-writer lock

Similar Documents

Publication Publication Date Title
US7178062B1 (en) Methods and apparatus for executing code while avoiding interference
JPS62200449A (ja) セマフオ制御方式
WO2018042935A1 (ja) 電子制御装置、解析システム
US5404499A (en) Semi-automatic program execution error detection
JPH01300366A (ja) 共有データ競合制御方式
JPH01125633A (ja) マルチプロセッサシステムのデバッグ法
JPS5932821B2 (ja) 情報処理装置
JP2507789B2 (ja) 仮想計算機の論理シミュレ―ション処理方式
JP3299361B2 (ja) 共有メモリを持つマルチプロセッサシステム
JPH0282344A (ja) マルチプロセッサシステムにおけるプログラムのデバッギングの方法
JPH03158936A (ja) プログラムのテスト方法
JPH07104834B2 (ja) 処理装置間ロック制御システム
JPS60252959A (ja) オンライン・トレ−ス制御方式
JPS6132701B2 (ja)
JPH02210515A (ja) システムのリセット方式
JPS59100966A (ja) マルチプロセツサシステムの共有バス制御方式
JPH0341528A (ja) 計算機における診断装置
JPH0256663A (ja) ロツクデータ設定装置
JPS63217424A (ja) パイプライン制御の情報処理装置
JP2000122882A (ja) マルチスレッドプロセッサおよびデバッグ装置
JPS63231629A (ja) コンピユ−タシステムにおけるスタツクチエツク方式
JPH04134535A (ja) マルチタスクプログラムの例外情報採取機構
JPH01166145A (ja) Cpu監視装置
JPS60100230A (ja) 実時間主記憶部検査装置
JPS6231386B2 (ja)