(57)【特許請求の範囲】
【請求項１】
オンライン処理部と、オフライン処理部と、共通ファイルとを有するオンライン排他ウェイト回避装置であって、
前記共通ファイルは、
共通ファイルが使用されるときは占有中が表示されるロックファイルを有し、
前記オンライン処理部は、
オペレーティング・システムより通知された処理要求電文が共通ファイルを使用する処理要求電文またはタイムアウト電文のとき前記ロックファイルが占有されているかをチェックする第１の占有チェック手段と、
前記ロックファイルが占有中であった場合にタイマーのセットを行いタイマー起動する第１のタイマーセット手段と、
前記ロックファイルが占有されていない場合は前記ロックファイルに占有中を表示し前記共通ファイルを使用して前記処理要求電文を処理し処理終了時に前記ロックファイルの占有中を解除する第１の業務処理手段と、
オペレーティング・システムより通知された前記処理要求電文が共通ファイルを使用しない処理要求電文のときは直ちに前記処理要求電文を処理する第２の業務処理手段とを有し、
前記オフライン処理部は、
オペレーティング・システムからオフライン処理のタイマー割り込み信号が通知されたとき、タイマー割り込みの時間でオフライン処理可能時間帯テーブルを参照し処理可能時間帯の範囲内であれば前記ロックファイルが占有されているかをチェックする第２の占有チェック手段と、
前記ロックファイルが占有中であった場合にオフライン処理可能時間帯テーブルを参照し処理可能時間帯をタイマーにセットしタイマー起動する第２のタイマーセット手段と、
前記タイマー割り込み時間がオフライン処理可能時間帯テーブルの処理可能時間帯の範囲内で前記ロックファイルが占有されていない場合に前記共通ファイルを使用して業務処理を行う第３の業務処理手段とを有することを特徴とするオンライン排他ウェイト回避装置。
【請求項２】
前記ロックファイルは、オンライン処理部またはオフライン処理部から設定され、共通ファイルを使用するとき占有中が表示され、共通ファイルの使用を終了するとき占有中の表示が解除されることを特徴とする請求項１記載のオンライン排他ウェイト回避方法。
【請求項３】
前記第１のタイマー手段は、オンライン処理部で共通ファイルを使用する処理要求電文のとき、共通ファイルが占有中であれば、タイマーを起動し、オンライン処理側での排他ウェイトを回避することを特徴とする請求項１記載のオンライン排他ウェイト回避装置。
【請求項４】
前記オフライン処理可能時間帯テーブルは、オフライン処理可能な開始時刻と終了時刻からなる時間帯を予め設定されていることを特徴とする請求項１記載のオンライン排他ウェイト回避装置。
【請求項５】
前記第２のタイマーセットステップは、共通ファイルが占有されているとき、またはオフライン処理可能時間帯の範囲以外のときにオフライン処理可能時間帯テーブルを参照しタイマー割り込みの時間に最早のオフライン処理可能時間帯の開始時刻をタイマー値にセットしタイマー起動することを特徴とする請求項１または４記載のオンライン排他ウェイト回避方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は排他ウェイト回避装置に関し、特にオンライン処理とオフライン処理競合時のオンライン排他ウェイト回避装置に関する。
【０００２】
【従来の技術】
従来の排他ウェイト回避装置は、例えば、特開昭６１−１９４５４８「ファイルアクセス排他制御方式」では、複数のプログラムが共通ファイルにアクセスするシステムにおいて、各プログラムが共通ファイルにアクセスする直前にリードし、アクセス終了直後にリライトするロックファイルを設け、前記ロックファイルの使用が許可されるときのみ前記共通ファイルのアクセスを許可する排他制御方式である。
【０００３】
図５を参照すると、プログラムＡ１００がロックファイルＲ１０２を使用状態にセットしファイル１１０３〜ファイルｎ１０４のリード／リライトを行っている間にプログラムＢ１０１がファイル１１０３〜ファイルｎ１０４に対してリード要求を発生してもリード要求待ちとなり、プログラムＢ１０１はプログラムＡ１００がロックファイルＲ１０２をリライトし使用解除するまで処理が行えない方式である。
【０００４】
【発明が解決しようとする課題】
上述した従来のファイルアクセス排他制御方式は、１つのプログラムが共通ファイルを占有すると、他のプログラムはリード要求待ち状態となり処理待ちの状態となってしまうことである。特にリード要求待ち状態のプログラムがオンライン処理の場合はオンライン業務が行えないことになる。
【０００５】
その理由は、リード要求待ちを検知した場合に処理待ち状態から一旦制御を逃がす手段を持っていないという欠点を有している。
【０００６】
本発明の目的は、オフライン処理の実行時間帯を設定し、またオフライン処理実行中でも共通ファイルを使用しない処理要求電文はオンライン処理を出来るように処理要求を区分けし業務停止等の影響を最小限にするオンライン排他ウェイト回避装置を提供することにある。
【０００７】
【課題を解決するための手段】
第１の発明のオンライン排他ウェイト回避装置は、
オンライン処理部と、オフライン処理部と、共通ファイルとを有し、オンライン処理とオフライン処理が混在し共通ファイルの使用時にオンライン処理の排他ウェイトを考慮したオンライン排他ウェイト回避装置であって、
前記共通ファイルは、
共通ファイルが使用されるときは占有中が表示されるロックファイルを有し、前記オンライン処理部は、
通信回線からオンライン処理の処理要求電文をオペレーティング・システムより通知された前記処理要求電文を取得し電文の振り分けを行う電文振り分け手段と、
振り分けられた前記処理要求電文が共通ファイルを使用する処理要求電文またはオペレーティング・システムより通知されたタイムアウト電文のとき前記ロックファイルが占有されているかをチェックする第１の占有チェック手段と、
前記ロックファイルが占有中であった場合にタイマーのセットを行いタイマー起動する第１のタイマーセット手段と、
前記ロックファイルが占有されていない場合は前記ロックファイルに占有中を表示し前記共通ファイルを使用して前記処理要求電文を処理し処理終了時に前記ロックファイルの占有中を解除する第１の業務処理手段と、
振り分けられた前記処理要求電文が共通ファイルを使用しない処理要求電文のときは直ちに前記処理要求電文を処理する第２の業務処理手段とを有し、
前記オフライン処理部は、
オペレーティング・システムからオフライン処理のタイマー割り込み信号が通知されたとき、タイマー割り込みの時間でオフライン処理可能時間帯テーブルを参照し処理可能時間帯の範囲内であれば前記ロックファイルが占有されているかをチェックする第２の占有チェック手段と、
前記ロックファイルが占有中であった場合にオフライン処理可能時間帯テーブルを参照し処理可能時間帯をタイマーにセットしタイマー起動する第２のタイマーセット手段と、
前記タイマー割り込み時間がオフライン処理可能時間帯テーブルの処理可能時間帯の範囲内で前記ロックファイルが占有されていない場合に前記共通ファイルを使用して業務処理を行う第３の業務処理手段とを有する
ことを特徴とする
【０００８】
また、第２の発明のオンライン排他ウェイト回避装置は、
第１の発明において前記ロックファイルは、オンライン処理部またはオフライン処理部から設定され、共通ファイルを使用するとき占有中が表示され、共通ファイルの使用を終了するとき占有中の表示が解除されることにより構成されている。
【０００９】
さらに、第３の発明のオンライン排他ウェイト回避装置は、
第１の発明において前記第１のタイマー手段は、オンライン処理部で共通ファイルを使用する処理要求電文のとき、共通ファイルが占有中でオンライン処理側での排他ウェイトを回避するためにタイマーを起動し制御を一端逃がすことにより構成されている。
【００１０】
さらに、第４の発明のオンライン排他ウェイト回避装置は、
第１の発明において前記オフライン処理可能時間帯テーブルは、オンライン処理に影響を少なくするためにオフライン処理可能な開始時刻と終了時刻からなる時間帯を予め設定されていることにより構成されている。
【００１１】
さらに、第５の発明のオンライン排他ウェイト回避装置は、
第１または４の発明において前記第２のタイマーセット手段は、共通ファイルが占有されているとき、またはオフライン処理可能時間帯の範囲以外のときにオフライン処理可能時間帯テーブルを参照しタイマー割り込みの時間に最早のオフライン処理可能時間帯の開始時刻をタイマー値にセットしタイマー起動することにより構成されている。
【００１２】
【発明の実施の形態】
次に、本発明の一つの実施の形態について図面を参照して説明する。
【００１３】
図１は、本発明の実施の形態を示すブロック図である。図１（ａ）は、全体のブロック図を示す。図１（ｂ）は、オンライン処理部のブロック図を示す。図１（ｃ）は、オフライン処理部のブロック図を示す。
【００１４】
図２は、本実施の形態におけるオンライン処理部の動作の一例を示す流れ図である。
【００１５】
図３は、本実施の形態におけるオフライン処理部の動作の一例を示す流れ図である。
【００１６】
図４は、本実施の形態におけるオフライン処理部が参照するオフライン処理可能時間帯テーブルを示す図で、オンライン処理の繁忙時間帯を回避した開始時刻と終了時刻からなる時間帯である。
【００１７】
図１において、電子計算機１は通信回線２および共通ファイル６に接続されている。電子計算機１は、オペレーティング・システム３（以降、ＯＳと称す）、オンライン処理部４、オフライン処理部５から構成される。
【００１８】
オンライン処理部４は、電文振り分け部４１、占有チェック部４２、タイマーセット部４３および業務部４４から構成される。
【００１９】
オフライン処理部５は、タイマーセット部５１、占有チェック部５２、業務部５３およびオフライン処理可能時間帯テーブル５４から構成される。
【００２０】
共通ファイル６は、業務ファイル１６１〜業務ファイルｎ６２および排他占有ファイルのロックファイル６３とを有す。
【００２１】
オンライン業務は、通信回線２からの処理要求電文がＯＳ３からオンライン処理部４に渡されて処理が行われる。オンライン処理部４は、受信電文の振り分けを行う電文振り分け部４１、ロックファイル６３が占有されているかチェックを行う占有チェック部４２、ロックファイル６３が占有中であった場合にタイマーのセットを行うタイマーセット部４３および業務処理を行う業務部４４とを有する。
【００２２】
オフライン業務は、ＯＳ３からタイマー割り込み信号が渡され、オフライン処理部５の処理が行われる。オフライン処理部５は、業務処理を行う業務部５３、ロックファイル６３が占有されているかチェックを行う占有チェック部５２およびロックファイル６３が占有中であった場合にタイマーのセットを行うタイマーセット部５１とを有する。
【００２３】
次に、本実施の形態のオンライン処理部４の動作を図１と図２とを用いて説明する。
【００２４】
ＯＳ３から通知される処理要求電文の電文種別は、タイムアウト電文と、共通ファイル６を使用する業務１電文と、共通ファイル６を不要な業務２電文との種類を有する。
【００２５】
ステップ１は、ＯＳ３から通知を受けると処理要求電文またはタイムアウト電文を取得しステップ２の処理をする。
【００２６】
ステップ２は、取得した処理要求電文の電文種別をチェックし、タイムアウト電文のときはステップ３の処理をし、業務１電文のときはステップ４の処理をし、業務２電文のときはステップ１１の処理をする。
【００２７】
ステップ３は、タイムアウト電文を受信した場合で、ロックファイル６３が他業務で占有中であったため再度ロックファイル６３の占有チェックをするためステップ５の処理をする。
【００２８】
ステップ４は、通知された処理要求電文が業務１電文の場合で共通ファイル６を使用するため、ロックファイル６３の占有チェックをするためステップ５の処理をする。
【００２９】
ステップ５は、ロックファイル６３が占有中かをチェックし、占有されていないときはステップ６の処理をし、占有中のときはタイマーをセットするためステップ９の処理をする。
【００３０】
ステップ６は、他業務で占有されていない場合で、ロックファイル６３の占有中の表示を行いステップ７の処理をする。
【００３１】
ステップ７は、共通ファイル６を使用して通知された業務１電文の処理を行いステップ８の処理をする。
【００３２】
ステップ８は、共通ファイル６の使用を終了したのでロックファイル６３の占有中を解除し次の処理要求電文を取得するためステップ１の処理をする。
【００３３】
ステップ９は、ロックファイル６３が占有中のため所定のタイマー値をセットしステップ１０の処理をする。
【００３４】
ステップ１０は、セットされたタイマー値でオペレーティング・システムに対しタイマー起動し、次の処理要求電文を取得するためステップ１の処理に進む。
【００３５】
ステップ１１は、共通ファイル６を使用しない業務２電文をステップ１２に通知する。
【００３６】
ステップ１２は、業務２電文を処理し次の処理要求電文を取得するためステップ１の処理をする。
【００３７】
即ち、共通ファイル６を使用しないオンライン処理要求は処理のウェイトが発生せずに連続処理される。
【００３８】
次に、本実施の形態のオフライン処理部５の動作を図１と図３と図４とを用いて説明する。
【００３９】
オフライン処理部５は、オンライン処理で使用する共通ファイル６を更新処理するシステムの場合、予めオフライン処理可能時間帯テーブル５４を設定しておく。
【００４０】
ステップ２０は、オフライン処理部５は起動されたとき初期値の起動時間をタイマー値にセットしステップ２１の処理をする。
【００４１】
ステップ２１は、初期値のタイマーでタイマー起動しオフライン処理をウェイトする。
【００４２】
ステップ２２は、ＯＳ３よりタイマー割り込み信号を通知されると割り込み時間を取得しステップ２３の処理をする。
【００４３】
ステップ２３は、タイマー割り込み時間がオフライン処理可能時間帯テーブル５４の時間帯の範囲内かをチェックし、範囲内であればステップ２４の処理をし、タイマー割り込み時間が時間帯の範囲外であればタイマーをセットするためステップ２８の処理をする。
【００４４】
ステップ２４は、ロックファイル６３が占有中かをチェックし、占有されていないときはステップ２５の処理をし、占有中のときはタイマーをセットするためステップ２８の処理をする。
【００４５】
ステップ２５は、ロックファイル６３の占有中を表示しオフライン処理をするためステップ２６の処理をする。
【００４６】
ステップ２６は、共通ファイル６を使用してオフライン処理をし終了したときステップ２７の処理をする。
【００４７】
ステップ２７は、共通ファイル６の使用が終了したのでロックファイル６３の占有中の表示を解除しオフライン処理を終了する。
【００４８】
ステップ２８は、オフライン処理可能時間帯テーブル５４を参照しタイマー割り込み時間に最早のオフライン処理可能時間帯の開始時刻をタイマー値にセットしステップ２９の処理をする。
【００４９】
ステップ２９は、設定されたタイマー値でオペレーティング・システムに対しタイマー起動し、オフライン処理をウェイトし割り込み信号が通知されるとステップ２２の処理に進む。
【００５０】
以上説明したように、１つのオンライン処理部と１つのオフライン処理部との組合せを説明したが、さらに複数のオンライン処理部と複数のオフライン処理部とを組み合わせた実施の形態も適用できオンライン処理の排他ウェイトの影響を最小限にしたオンライン排他ウェイト回避装置を提供する。
【００５１】
【発明の効果】
以上説明したように、本発明の第１の効果は、共通ファイルを占有するための待ち状態を回避できるということである。これにより共通ファイルを使用しないオンライン業務は排他ウェイトを回避し実行できるという効果を有している。
【００５２】
その理由は、占有処理のための待ち状態から制御を逃がすためにタイマーのセットを行っているからである。
【００５３】
本発明の第２の効果は、誤ってオフライン処理を起動しても起動する時間を制限しているのでオンライン処理への影響が少ないという効果を有している。
【００５４】
その理由は、オフライン処理可能時間帯テーブルを設けたことによりオフライン処理の時間帯を選択出来るからである。
【図面の簡単な説明】
【図１】本発明の実施の形態を示すブロック図で、（ａ）は全体のブロック図を示す。（ｂ）はオンライン処理部のブロック図を示す。（ｃ）はオフライン処理部のブロック図を示す。
【図２】本実施の形態におけるオンライン処理部の動作の一例を示す流れ図である。
【図３】本実施の形態におけるオフライン処理部の動作の一例を示す流れ図である。
【図４】本実施の形態におけるオフライン処理部が参照するオフライン処理可能時間帯テーブルを示す図である。
【図５】従来の実施の形態を示すブロック図である。
【符号の説明】
１    電子計算機
２    通信回線
３    ＯＳ
４    オンライン処理部
４１    電文振り分け部
４２    占有チェック部
４３    タイマーセット部
４４    業務部
５    オフライン処理部
５１    タイマーセット部
５２    占有チェック部
５３    業務部
５４    オフライン処理可能時間帯テーブル
６    共通ファイル
６１    業務ファイル１
６２    業務ファイルｎ
６３    ロックファイル
１００    プログラムＡ
１０１    プログラムＢ
１０２    ロックファイルＲ
１０３    ファイル１
１０４    ファイルｎ
【図１】
0003641341.tif 000002
【図２】
0003641341.tif 000003
【図３】
0003641341.tif 000004
【図４】
0003641341.tif 000005
【図５】
0003641341.tif 000006