JPH06332720A - シグナル制御方法 - Google Patents

シグナル制御方法

Info

Publication number
JPH06332720A
JPH06332720A JP11826893A JP11826893A JPH06332720A JP H06332720 A JPH06332720 A JP H06332720A JP 11826893 A JP11826893 A JP 11826893A JP 11826893 A JP11826893 A JP 11826893A JP H06332720 A JPH06332720 A JP H06332720A
Authority
JP
Japan
Prior art keywords
processing
dangerous area
signal
flag
management table
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
JP11826893A
Other languages
English (en)
Inventor
Masahiro Kudo
正裕 工藤
Hiromichi Ogata
博通 緒方
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP11826893A priority Critical patent/JPH06332720A/ja
Publication of JPH06332720A publication Critical patent/JPH06332720A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 プロセスが危険領域での処理を実行中にシグ
ナルが到来しても、割り込み処理に制御を渡さずに危険
領域での処理を続行させる。 【構成】 プロセスの処理が危険領域に処理に移るに際
し、そのことを示すフラグをセットし、このフラグによ
ってプロセスを割込み処理に移行させるシグナルをブロ
ックし、危険領域での処理が終了した後に前記フラグを
リセットし、前記シグナルに対するブロックを解除す
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、オンラインシステムに
おけるシグナル(ソフトウェア割り込み)の制御方法に
関するものである。
【0002】
【従来の技術】オンラインシステム用のオペレーティン
グシステムとして、米国AT&Tベル研究所によって開
発されたTSS用のオペレーティングシステムであるU
NIXが知られている。
【0003】このUNIXでは、1つのトランザクショ
ン内の複数のデータベースの操作間で一貫性を保つ必要
があるので、UNIX上のトランザクション処理システ
ムが重要である。
【0004】このUNIX上のトランザクション処理シ
ステムについは、日経コンピュータ1991年10月7
日号(日経BP社)91ページから106ページに記載
されている。
【0005】ところで、このトランザクション処理シス
テムでは、何等かのイベントが起こっていることをプロ
セスに知らせるための各種のシグナル(ソフトウェア割
込み)が用意されている。
【0006】
【発明が解決しようとする課題】しかし、プロセスが例
えば管理情報のチェーンの張替えを行っている最中など
のような危険領域での処理実行中にシグナルが発生した
場合のシグナルの制御方法については、規定されていな
い。
【0007】このため、プロセスが危険領域で処理を実
行しているときに、そのプロセスにシグナルが到来して
割り込み処理に制御が渡ってしまうと、そのシグナルの
デフォルト動作で処理が終了し、データの一貫性が保て
なくなり、システムダウンになるという問題がある。
【0008】なお、シグナル、危険領域については、U
NIXネットワークプログラミング(W.リチャード.
スティーヴンス著、トッパン発行)の54ページから6
5ページに記載されている。
【0009】本発明の目的は、シグナルが到来しても危
険領域での処理を続行し、システムダウンを防止するこ
とができるシグナル制御方法を提供することにある。
【0010】
【発明が解決するための手段】上記の目的は、プロセス
の処理が危険領域に処理に移るに際し、そのことを示す
フラグをセットし、このフラグによってプロセスを割込
み処理に移行させるシグナルをブロックし、危険領域で
の処理が終了した後に前記フラグをリセットし、前記シ
グナルに対するブロックを解除することによって達成さ
れる。
【0011】
【作用】上記手段によれば、プロセスが危険領域での処
理を開始する前に予めシグナルをブロックするためのフ
ラグをセットする。これによって、危険領域での処理実
行中にシグナルが発生しても、そのシグナルに対する割
り込み処理に制御が渡らなくなるので、危険領域での処
理を継続することができる。
【0012】
【実施例】以下、本発明の一実施例について図面で説明
する。
【0013】図1は本発明を適用したオンラインシステ
ムの一実施例を示すブロック構成図であり、電子計算機
10には端末システム(図示せず)からの要求に従って
トランザクション制御を行うオンライン制御プログラム
11と、トランザクション処理を行う複数の業務プログ
ラム(プロセス)12A〜12Cと、各プロセスごとの
情報が格納されているプロセス管理テーブル13とが設
けられている。
【0014】図2はプロセス管理テーブル13の格納情
報の例を示すもので、ここではプロセスが危険領域で処
理を実行するときに必要なフィールドのみ示した。
【0015】プロセスID21…プロセスが自分に割当
てられているプロセス管理テーブルを見つけるときに使
用する。
【0016】クリティカルフラグ22…プロセスが危険
領域で処理を実行中かどうかを示すフラグ。
【0017】シグナルマスク23…ブロックしているシ
グナルを示すもので、ブロック対象のシグナル数分のビ
ット列からなり、ブロックしているシグナルに対応する
ビットは“ON”にセットされる。
【0018】図3は、例えばプロセス12Aが危険領域
で処理を実行する時の流れを示すフローチャートあり、
プロセス12Aは危険領域で処理を実行するに際して
は、事前に、危険領域で処理を開始することを宣言する
(ステップ31,32)。
【0019】この後に、危険領域での処理を実行し(ス
テップ33)、その危険領域での処理を終了したなら
ば、危険領域での処理が終了したことを宣言して終了す
る(ステップ34,35)。
【0020】図4は、危険領域での処理開始宣言に対し
ての処理の内容を示したフローチャートであり、まず、
自プロセス12Aに割当てられているプロセス管理テー
ブル13のクリティカルフラグ22(初期値OFF)を
ONにセットする(ステップ41,42)。
【0021】このフラグ22がONである場合、プロセ
ス12Aが危険領域での処理を実行中であることを示し
ている。
【0022】次にブロックしたいシグナルの集合を引数
に指定して「sigsetmask」システムコールを
発行する(ステップ43)。このシステムコールを発行
することによってプロセス12Aに対するシグナルはブ
ロックされ、処理を続行することが可能になる。
【0023】次に、「sigsetmask」システム
コールのリターン値をプロセス管理テーブル13のシグ
ナルマスク23に設定しておく(ステップ44)。
【0024】図5は、危険領域での処理終了宣言に対す
る処理の内容を示したフローチャートであり、既に危険
領域での処理が終了しているので、自プロセス12Aに
割当てられているプロセス管理テーブル13のクリティ
カルフラグ22をOFFにする(ステップ51,5
2)。
【0025】次に、プロセス管理テーブル13のシグナ
ルマスク23の値を引数にして「sigsetmask
システムコール」を発行し、シグナルのブロックを解除
する。
【0026】なお、「sigsetmask」システム
コールについては、マニュアル「HI−UX/WE2リ
ファレンス2(HITACH)の226ページに記載さ
れている。
【0027】
【発明の効果】以上の説明から明らかなように本発明に
よれば、プロセスの処理が危険領域に処理に移るに際
し、そのことを示すフラグをセットし、このフラグによ
ってプロセスを割込み処理に移行させるシグナルをブロ
ックし、危険領域での処理が終了した後に前記フラグを
リセットし、前記シグナルに対するブロックを解除する
ようにしたので、プロセスが危険領域で処理を実行中に
シグナルが到来しても、その危険領域での処理を続行
し、システムダウンを防止することができる。
【図面の簡単な説明】
【図1】本発明を適用したオンラインシステムの一実施
例を示すブロック構成図である。
【図2】プロセス管理テーブルの内容の一例を示す説明
図である。
【図3】プロセスが危険領域で処理を行う時の流れを示
すフローチャートである。
【図4】危険領域での処理開始宣言に対する処理を示す
フローチャートである。
【図5】危険領域での処理終了宣言に対する処理を示す
フローチャートである。
【符号の説明】
10…電子計算機、11…オンライン制御プログラム、
12A〜12C…業務プログラム、13…プロセス管理
テーブル、22…クリティカルフラグ。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 プロセスの処理が危険領域に処理に移る
    に際し、そのことを示すフラグをセットし、このフラグ
    によってプロセスを割込み処理に移行させるシグナルを
    ブロックし、危険領域での処理が終了した後に前記フラ
    グをリセットし、前記シグナルに対するブロックを解除
    することを特徴とするシグナル制御方法。
JP11826893A 1993-05-20 1993-05-20 シグナル制御方法 Pending JPH06332720A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11826893A JPH06332720A (ja) 1993-05-20 1993-05-20 シグナル制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11826893A JPH06332720A (ja) 1993-05-20 1993-05-20 シグナル制御方法

Publications (1)

Publication Number Publication Date
JPH06332720A true JPH06332720A (ja) 1994-12-02

Family

ID=14732435

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11826893A Pending JPH06332720A (ja) 1993-05-20 1993-05-20 シグナル制御方法

Country Status (1)

Country Link
JP (1) JPH06332720A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013534346A (ja) * 2010-08-20 2013-09-02 ファスドットコム カンパニー リミテッド フック再進入防止装置及びその方法をコンピュータで実行させるためのプログラムを記録した記録媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013534346A (ja) * 2010-08-20 2013-09-02 ファスドットコム カンパニー リミテッド フック再進入防止装置及びその方法をコンピュータで実行させるためのプログラムを記録した記録媒体

Similar Documents

Publication Publication Date Title
US5369770A (en) Standardized protected-mode interrupt manager
JPH08297581A (ja) リアルタイム・オペレーティングシステムにおける割り込み管理方式
JPS586971B2 (ja) 演算処理装置
JPH0588933A (ja) デバツグ機能を有する並列処理システム
JP2985299B2 (ja) 排他制御装置
JPH09146782A (ja) ジョブ間データ引き継ぎにおける異常発生時の対応方法
JP3107433B2 (ja) 電子計算機システムにおけるタスク状態管理方式
JPS5998256A (ja) 割込制御装置
JP3079238B2 (ja) デバッグ装置
JPH03240831A (ja) 割り込み処理方式
JPH04205144A (ja) マイクロプロセッサ
JPS6148741B2 (ja)
JPH02201654A (ja) タイムシェアリングシステムのブレーク割り込み制御方式
JPH07287660A (ja) プログラマブルコントローラの割り込み処理方法
JPH0341520A (ja) 割り込み制御方式
JPH0319574B2 (ja)
JPH0417530B2 (ja)
JPH04364545A (ja) メモリダンプ方法
JPS62233844A (ja) 割込み制御方式
JPS6398040A (ja) ソフトウエアトラツプ制御方式
JPH05210559A (ja) デッドロック回避処理方式
JPH01214934A (ja) プログラムの間接再帰呼出し検出方式
JPS59146341A (ja) Osのマイクロプログラム制御方式
JPH04134534A (ja) タイマランアウト出口呼び出し方法およびその機構
JPH031268A (ja) 計算機制御方法