JP2778798B2 - 制御データのキュー構造管理処理方式 - Google Patents

制御データのキュー構造管理処理方式

Info

Publication number
JP2778798B2
JP2778798B2 JP2095370A JP9537090A JP2778798B2 JP 2778798 B2 JP2778798 B2 JP 2778798B2 JP 2095370 A JP2095370 A JP 2095370A JP 9537090 A JP9537090 A JP 9537090A JP 2778798 B2 JP2778798 B2 JP 2778798B2
Authority
JP
Japan
Prior art keywords
control data
queue
identifier
pointer
processing
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
Application number
JP2095370A
Other languages
English (en)
Other versions
JPH03292537A (ja
Inventor
豪一 松浦
幸好 大村
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2095370A priority Critical patent/JP2778798B2/ja
Priority to EP91303102A priority patent/EP0452080B1/en
Priority to DE69112107T priority patent/DE69112107T2/de
Priority to US07/683,041 priority patent/US5291589A/en
Publication of JPH03292537A publication Critical patent/JPH03292537A/ja
Application granted granted Critical
Publication of JP2778798B2 publication Critical patent/JP2778798B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1405Saving, restoring, recovering or retrying at machine instruction level
    • G06F11/141Saving, restoring, recovering or retrying at machine instruction level for bus or memory accesses

Description

【発明の詳細な説明】 〔概要〕 ポインタによってつながれるキュー構造の制御データ
群を管理する計算機システムにおいて,障害時にキュー
の回復処理を行う制御データのキュー構造管理処理方式
に関し, 障害により一部の制御データが破壊された場合に,でき
るだけ多くの制御データを回復できるようにすることを
目的とし, 各制御データの内容を示す識別子およびその制御デー
タに対する個別的なポインタを持つ識別子テーブルと,
障害による制御データの内容破壊時に,キューポインタ
をもとに,制御データのキューを回復可能な範囲で修復
するキュー修復処理部と,前記識別子テーブルをもと
に,正しい制御データと異常が発生した制御データとを
切り分ける制御データ正常性判定部と,正常な制御デー
タで,キューにつながれていないものを,キューにつな
ぎ直す制御データ回復処理部とを備えるように構成す
る。
〔産業上の利用分野〕
本発明は,ポインタによってつながれるキュー構造の
制御データ群を管理する計算機システムにおいて,障害
時にキューの回復処理を行う制御データのキュー構造管
理処理方式に関する。
近年のコンピュータに対する信頼性向上の要求に伴
い,ソフトウェアに信頼性向上が要求されている。特
に,ソフトウェア内部の制御データを保証することは重
要な課題になっている。このため,信頼性の高い制御デ
ータのキュー構造を実現することが必要とされている。
〔従来の技術〕
従来のキュー構造による制御データの管理では,制御
データ内に識別子を持ち,前後のポインタで制御データ
をチェインし,主制御表から最初の制御データと最後の
制御データとをポイントしている。
従来,このようなキュー構造中の制御データについて
障害が発生し,キュー構造が破壊された場合,前からの
キューポインタで制御データを調べるとともに,後ろか
らのキューポインタで制御データを調べ,前からのキュ
ーポインタと後ろからのキューポインタで,制御データ
をつなぐことにより,キュー構造を回復するようにして
いた。
ところが,キューポインタの検索処理は,障害の制御
データを発見した時点で中断するため,障害の制御デー
タと他の障害の制御データとの間に挟まれた正しい制御
データは,キュー構造から取り外されてしまい,情報を
失ってしまうことになる。また,制御データの識別子
を,制御データ内に持っているため,識別子自体が破壊
されると,異常が発生した制御データを特定することが
できなくなる。
〔発明が解決しようとする課題〕
したがって,従来の制御データのキュー構造では,障
害の制御データを特定できなかったり,正しい制御デー
タを失うことにより,ソフトウェア自体の動作を保証で
きないケースが多くなるという問題が生じていた。
本発明は上記問題点の解決を図り,障害により一部の
制御データが破壊された場合でも,できるだけ多くの制
御データを回復できるようにすることを目的としてい
る。
〔課題を解決するための手段〕
第1図は本発明の原理説明図である。
第1図において,10はCPUおよびメモリなどからなる計
算機システム,11はキュー修復処理部,12は制御データ正
常性判定部,13は制御データ回復処理部,14は制御データ
をポインタでつないだキュー,15はキューターミナルを
持つ主制御表,16は制御データ,17は各制御データ16の識
別子と制御データへのポインタを管理する識別子テーブ
ルを表す。
各制御データ16は,前後のキューポインタで連鎖的に
つながっれて管理される。主制御表15は,最初の制御デ
ータ16と最後の制御データ16に対するポインタを持つ。
本発明では,さらに各制御データ16の内容を示す識別
子およびその制御データ16に対する個別的なポインタを
持つ識別子テーブル17が設けられる。
キュー修復処理部11は,障害が発生して制御データ16
の内容が破壊したときに,前後のキューポインタをもと
に,制御データ16のキュー14を回復可能な範囲で修復す
る処理を行う。
制御データ正常性判定部12は,識別子テーブル17をも
とに,これから検索される各制御データ16が所定の値を
保持しているかどうかを判定し,正しい制御データ16と
異常が発生した制御データとを切り分ける処理を行う。
制御データ回復処理部13は,制御データ正常性判定部
12の判定結果により,正常な制御データ16で,キュー14
につながれていないものを,キュー14につなぎ直す処理
を行う。
例えば,第1図(ロ)に示すように,各々識別子A,B,
C,…に対応する制御データ16が,主制御表15のキュータ
ーミナルから接続されているとすると,識別子テーブル
17は,それらの識別子と,対応する各制御データ16への
ポインタとを持つ。
第1図(ロ)に示す級の状態で,識別子Bの制御デー
タ16と識別子Dの制御データ16の内容が,ハードウェア
障害またはソフトウェア障害によって破壊されたとす
る。破壊により,識別子AとBの制御データ16間および
識別子DとEの制御データ16間でキューの連鎖が切れる
ことになる。
キュー修復処理部11は,主制御表15の先頭ポインタTO
Pと最終ポインタLASTから,キューをたどることによ
り,識別子Aの制御データ16と識別子Eの制御データ16
についてのキューを修復する。
制御データ正常性判定部12は,識別子テーブル17から
各制御データ16を探し,それぞれ内容が正しいかどうか
を判定する。異常であれば,その制御データ16に関連す
る処理を異常終了させる。
制御データ回復処理部13は,制御データ正常性判定部
12の判定結果合により,識別子Cの制御データ16の内容
が正常で,それがキューにつながれていないことを知る
と,その識別子Cの制御データ16をキューにつないで戻
す。
以上の処理により,実際に内容が破壊されている識別
子B,Dの制御データ16だけがキューから外されて,内容
の正しい制御データ16は,第1図(ハ)に示すキューの
ように,回復されることになる。
〔作用〕 本発明では,識別子テーブル17によって各制御データ
16の識別子とポインタとを対応させて保持するようにす
る。処理中に制御データ16の破壊があると、まず前後の
キューポインタからキュー構造の修復処理を行う。さら
にキューから外れているが内容の正しい制御データ16を
識別子テーブル17から検索し,それをキューにつなぎ込
んで,キュー構造を回復する。
したがって,ハードウェア障害やプログラム障害が発
生した場合には,異常な制御データ16を特定し,正しい
制御データ16を回復することができる。
〔実施例〕
第2図は本発明の実施例に係るキューの障害回復処理
の例,第3図は本発明の一実施例処理フローを示す。
第2図(イ)に示すように,各々識別子A,B,C,…に対
応する制御データ16が,主制御表15のキューターミナル
から接続されているとする。本実施例の制御データ16
は,プロセスの管理のためにプロセスごとに設けられる
プロセスコントロールブロック(PCB)であって,各々
プロセスを識別するプロセスID(識別子)に関連づけら
れている。キューには,実行可能な状態にあるプロセス
の制御データ16が接続されるレディ・キューや,事象の
待ち状態にあるプロセスの制御データ16が接続されるウ
ェイト・キュー等がある。
識別子テーブル17は,プロセスIDの識別子と,対応す
る各制御データ16へのポインタとを持つ。
第2図(イ)に示すキューの状態で,識別子Cの制御
データ16と識別子Eの制御データ16の内容が,ハードウ
ェア障害またはソフトウェア障害によって破壊されたと
する。破壊により,識別子BとCの制御データ16間およ
び識別子EとFの制御データ16間でキューの連鎖が切れ
ることになる。
この場合,キューの修復のため,主制御表15の先頭ポ
インタTOPと最終ポインタLASTから,キューをたどるこ
とにより,第2図(ロ)に示すように,識別子A,B,Fの
制御データ16についてのキューを修復する。従来技術で
は,この愛2図(ロ)に示すキューの修復を行っていた
が,それ以上のキュー構造の修復はできなかった。本発
明では,さらに次のように修復を行う。
識別子テーブル17が持っている制御データ16へのポイ
ンタから,制御データ16を検索し,それぞれ内容が正し
いかどうかを判定する。この判定は,制御データ16に事
前に設定している特有の設定情報が変化していないかど
うかを調べることなどにより行うことができる。
この例では,識別子Dの制御データ16の内容が正しい
ことがわかり,識別子CとEの制御データ16が異常であ
ることがわかる。そこで,その制御データ16に関連する
プロセスIDがCとEのプロセスを異常終了させ,制御デ
ータ16の領域を返却する。これにより,キューは,第2
図(ハ)に示す状態になる。
識別子Dの制御データ16が正常であることがわかった
ので,その制御データ16をキューに戻す。これにより,
最終的に第2図(ニ)に示すように,キュー構造が回復
されることになる。
従来技術との違いは,プロセスIDがCとEのプロセス
に対する異常終了処理を,それらのプロセスを起動する
前に,確実に行うことができることと,キューから外れ
ている識別子Dの正しい制御データ16を元に戻すことが
できることである。
本発明に関連する部分の処理の流れは,例えば第3図
に示すとおりである。以下,第3図に示す〜に従っ
て説明する。
マシンチェックやプログラム例外等により,障害発
生が通知されたならば,まず,従来技術と同様に前後の
キューポインタをもとにキューを修復する。
次に,識別子テーブルに登録されている制御データ
の処理がすべて終了したかどうかを判定する。未終了の
場合,以下の処理〜を行い,すべての制御データに
ついての処理が終了したならば,回復後の処理に移る。
識別子テーブルから順番に制御データを検索する。
制御データの内容が正しいかどうかを判定し,正し
ければ処理を実行し,正しくなければ,処理を実行
する。
正しい制御データをキューにつなぎ直して回復す
る。その後,処理へ戻り,同様に次の制御データにつ
いての処理を繰り返す。
異常の制御データに関連する処理を異常終了させ
る。その後,処理へ戻り,同様に次の制御データにつ
いての処理を繰り返す。
〔発明の効果〕
以上説明したように,本発明によれば,内容の正しい
制御データをすべて回復することができる。また,識別
子が制御データとは別に管理されるため,異常が発生し
てキューから外れた制御データを発見することができ,
関連する処理に対する異常終了処理を確実に行うことが
できる。したがって,重要な制御データの耐破壊性に優
れたキュー構造を実現することができ,システムの信頼
性を向上させることができる。
【図面の簡単な説明】
第1図は本発明の原理説明図, 第2図は本発明の実施例に係るキューの障害回復処理の
例, 第3図は本発明の一実施例処理フローを示す。 図中,10は計算機システム,11はキュー修復処理部,12は
制御データ正常性判定部,13は制御データ回復処理部,14
はキュー,15は主制御表,16は制御データ,17は識別子テ
ーブルを表す。
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06F 11/00 - 11/00 350 G06F 9/46 - 9/46 360

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】ポインタによってつながれるキュー構造の
    制御データ群を管理する計算機システムにおいて, 各制御データ(16)の内容を示す識別子およびその制御
    データに対する個別的なポインタを持つ識別子テーブル
    (17)と, 障害による制御データの内容破壊時に,キューポインタ
    をもとに,制御データのキューを回復可能な範囲で修復
    するキュー修復処理部(11)と, 前記識別子テーブルをもとに,正しい制御データと異常
    が発生した制御データとを切り分ける制御データ正常性
    判定部(12)と, 正常な制御データで,キューにつながれていないもの
    を,キューにつなぎ直す制御データ回復処理部(13)と
    を備えたことを特徴とする制御データのキュー構造管理
    処理方式。
JP2095370A 1990-04-11 1990-04-11 制御データのキュー構造管理処理方式 Expired - Fee Related JP2778798B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2095370A JP2778798B2 (ja) 1990-04-11 1990-04-11 制御データのキュー構造管理処理方式
EP91303102A EP0452080B1 (en) 1990-04-11 1991-04-09 System for controlling restoration from failure in a queue structure of control data
DE69112107T DE69112107T2 (de) 1990-04-11 1991-04-09 System zur Steuerung der Wiederherstellung aus einem Fehler in einer Warteschlangestruktur von Steuerungsdaten.
US07/683,041 US5291589A (en) 1990-04-11 1991-04-10 System for controlling restoration from failure in queue structure of control data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2095370A JP2778798B2 (ja) 1990-04-11 1990-04-11 制御データのキュー構造管理処理方式

Publications (2)

Publication Number Publication Date
JPH03292537A JPH03292537A (ja) 1991-12-24
JP2778798B2 true JP2778798B2 (ja) 1998-07-23

Family

ID=14135745

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2095370A Expired - Fee Related JP2778798B2 (ja) 1990-04-11 1990-04-11 制御データのキュー構造管理処理方式

Country Status (4)

Country Link
US (1) US5291589A (ja)
EP (1) EP0452080B1 (ja)
JP (1) JP2778798B2 (ja)
DE (1) DE69112107T2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5398330A (en) * 1992-03-05 1995-03-14 Seiko Epson Corporation Register file backup queue
US5386549A (en) * 1992-11-19 1995-01-31 Amdahl Corporation Error recovery system for recovering errors that occur in control store in a computer system employing pipeline architecture
US5649092A (en) * 1994-04-21 1997-07-15 Unisys Corporation Fault tolerant apparatus and method for maintaining one or more queues that are shared by multiple processors
KR980013092A (ko) 1996-07-29 1998-04-30 김광호 교환시스템의 화일관리장치 및 방법
KR100260028B1 (ko) * 1996-08-13 2000-06-15 윤종용 화일시스템의 정보 복구방법
US20070168872A1 (en) * 2006-01-19 2007-07-19 Raytheon Company Multi-monitor, multi-JVM java GUI infrastructure with layout via XML
JP4903078B2 (ja) * 2007-04-02 2012-03-21 株式会社リコー 電子装置、Webページ生成方法、及びWebページ生成プログラム
US20100332319A1 (en) * 2009-06-24 2010-12-30 Craig Stephen Etchegoyen Methods and Systems for Dynamic Serving of Advertisements in a Game or Virtual Reality Environment

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4314329A (en) * 1980-02-04 1982-02-02 Cincinnati Milacron Inc. Method and apparatus for using a computer numerical control to control a machine cycle of operation
US4459658A (en) * 1982-02-26 1984-07-10 Bell Telephone Laboratories Incorporated Technique for enabling operation of a computer system with a consistent state of a linked list data structure after a main memory failure
US4615001A (en) * 1984-03-29 1986-09-30 At&T Bell Laboratories Queuing arrangement for initiating execution of multistage transactions
US4821228A (en) * 1986-12-24 1989-04-11 Hewlett-Packard Company Method and apparatus for computation stack recovery in a calculator

Also Published As

Publication number Publication date
EP0452080A3 (en) 1992-09-16
EP0452080B1 (en) 1995-08-16
DE69112107T2 (de) 1996-01-11
US5291589A (en) 1994-03-01
EP0452080A2 (en) 1991-10-16
JPH03292537A (ja) 1991-12-24
DE69112107D1 (de) 1995-09-21

Similar Documents

Publication Publication Date Title
EP0319034B1 (en) Method of recovering failure of online control program
CN111858468B (zh) 分布式文件系统元数据校验方法、系统、终端及存储介质
JP2785998B2 (ja) 計算機システム
US7734956B2 (en) Process management system
CN111309524A (zh) 分布式存储系统故障恢复方法、装置、终端及存储介质
CN112597153A (zh) 一种基于区块链的数据存储方法、装置及存储介质
CN112035472A (zh) 数据处理方法、装置、计算机设备和存储介质
JP2778798B2 (ja) 制御データのキュー構造管理処理方式
CN108121774B (zh) 一种数据表备份方法及终端设备
JPS6375963A (ja) システム回復方式
CN111813753A (zh) 保存文件的方法、恢复文件的方法、装置及终端设备
CN114020527A (zh) 快照恢复方法、装置、计算机设备及存储介质
CN111198920B (zh) 一种基于数据库同步确定对比表快照的方法及装置
WO2023206926A1 (zh) 一种恢复用户配置数据的方法、装置及介质
CN114490543A (zh) 内存多维数据库的事务日志实现方法、装置、设备及介质
CN111090491B (zh) 虚拟机任务状态的恢复方法、装置及电子设备
CN110806917A (zh) 一种防脑裂的虚拟机高可用的管理装置及方法
JP2853527B2 (ja) ファイル障害自動復旧システム
CN113656208B (zh) 分布式存储系统数据处理方法、装置、设备及存储介质
JPH06175901A (ja) ファイルを管理する処理装置
CN117290158A (zh) 数据恢复方法、装置、电子设备及存储介质
JP2902769B2 (ja) ロボットのシーケンス制御方式
CN117971975A (zh) 分布式数据库的跨表事务支持方法、装置及可读存储介质
KR0123399B1 (ko) 고유용성 시스템에서의 데이타 일관성 유지방법
CN114625568A (zh) 一种区块链备份处理方法、装置、设备及可读存储介质

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees