JP2639370B2 - プログラムの動的置換方式 - Google Patents

プログラムの動的置換方式

Info

Publication number
JP2639370B2
JP2639370B2 JP6339143A JP33914394A JP2639370B2 JP 2639370 B2 JP2639370 B2 JP 2639370B2 JP 6339143 A JP6339143 A JP 6339143A JP 33914394 A JP33914394 A JP 33914394A JP 2639370 B2 JP2639370 B2 JP 2639370B2
Authority
JP
Japan
Prior art keywords
application program
replacement
name
replacement instruction
replaced
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
JP6339143A
Other languages
English (en)
Other versions
JPH08185318A (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.)
NEC Corp
Original Assignee
Nippon Electric Co 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP6339143A priority Critical patent/JP2639370B2/ja
Publication of JPH08185318A publication Critical patent/JPH08185318A/ja
Application granted granted Critical
Publication of JP2639370B2 publication Critical patent/JP2639370B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はプログラムの動的置換方
式に関し、特にトランザクション処理システムを停止さ
せずにアプリケーションプログラムの置換を可能とする
プログラムの動的置換方式に関する。
【0002】
【従来の技術】従来のプログラムの置換方式では、プロ
セスまたはシステム全体を一旦停止させた上で、プログ
ラムの入替えを行う必要があった。しかし、このような
プログラムの置換方式は、保守のために停止が許されな
い終日稼働のシステムには適用できない他、置換保守の
運用性に欠けていた。
【0003】そこで、オンラインサービス中であって
も、オンライン常駐のアプリケーションプログラムを入
れ替えることができるように、入れ替え対象である主記
憶装置のアプリケーションプログラムを抑止し、そのア
プリケーションプログラムを補助記憶装置に退避させ、
補助記憶装置で新しいアプリケーションプログラムと入
れ替え、入れ替えた新しいアプリケーションプログラム
を主記憶装置に格納し、主記憶装置に格納されたアプリ
ケーションプログラムのすり抜け処理が実行できるかど
うかを判定し、すり抜け処理が実行可能な場合にはアプ
リケーションプログラムの抑止を解除して、アプリケー
ションプログラムを起動させるようにしたオンラインサ
ービス中のプログラム入れ替え方式が提案されている
(特開平4−282728号公報参照)。
【0004】
【発明が解決しようとする課題】上述した従来のオンラ
インサービス中のプログラム入れ替え方式では、ダイナ
ミックリンクを用いていなかったので、入れ替え対象で
ある主記憶装置のアプリケーションプログラムを抑止す
る必要があるとともに、アプリケーションプログラムの
抑止をすり抜けることができる電文が入れ替え中のアプ
リケーションプログラムを起動してしまうおそれがあ
り、絶対的な信頼性に欠けるという問題点があった。
【0005】本発明の目的は、上述の点に鑑み、ダイナ
ミックリンクを用いてトランザクション処理システムを
停止させずにアプリケーションプログラムを置換できる
ようにしたプログラムの動的置換方式を提供することに
ある。
【0006】
【課題を解決するための手段】本発明のプログラムの動
的置換方式は、トランザクション処理システムにおい
て、動的置換の対象であるすべてのダイナミックリンク
可能なアプリケーションプログラムを格納するアプリケ
ーションプログラム格納ファイルと、動的置換の対象で
あるすべてのアプリケーションプログラムのアプリケー
ションプログラム名,ファイルロードディレクトリ,置
換指示番号,関数名および置換指示コマンド発行総数を
格納する置換情報テーブルと、プロセス固有のアプリケ
ーションプログラム名,関数名,関数アドレスおよび置
換済番号を格納するアプリケーションプログラム管理テ
ーブルと、置換指示コマンドを受け付け前記置換情報テ
ーブルの置換指示コマンド発行総数を1つ加算し、この
置換指示コマンド発行総数を前記置換指示コマンドに含
まれるアプリケーションプログラム名に対応する置換指
示番号に設定し、前記置換指示コマンドに含まれるファ
イルロードディレクトリを前記アプリケーションプログ
ラム名に対応するファイルロードディレクトリに設定す
る置換指示コマンド処理手段と、プロセスの立上り時に
前記置換情報テーブルを参照して動的置換の対象である
すべてのアプリケーションプログラムのロードをオペレ
ーティングシステムに要求し、アプリケーションプログ
ラムのロード後に前記アプリケーションプログラム管理
テーブルにアプリケーションプログラム名,関数名およ
び関数アドレスを設定して初期化するアプリケーション
プログラム管理テーブル初期化手段と、業務電文を受信
する電文受信手段と、この電文受信手段により業務電文
が受信されるたびに呼び出され、前記置換情報テーブル
中のアプリケーションプログラム名と対応する置換指示
番号と前記アプリケーションプログラム管理テーブルの
置換済番号とを比較し、前記置換指示番号が前記置換済
番号より大きければ前記アプリケーションプログラム名
の新しいアプリケーションプログラムのロードと古いア
プリケーションプログラムのキャンセルとをオペレーテ
ィングシステムに要求し、オペレーティングシステムか
ら返された関数アドレスおよび前記置換情報テーブルの
置換指示コマンド発行総数を用いて前記アプリケーショ
ンプログラム管理テーブルの関数アドレスおよび置換済
番号を更新するアプリケーションプログラム置換手段と
を有することを特徴とする。
【0007】
【作用】本発明のプログラムの動的置換方式では、アプ
リケーションプログラム格納ファイルが動的置換の対象
であるすべてのダイナミックリンク可能なアプリケーシ
ョンプログラムを格納し、置換情報テーブルが動的置換
の対象であるすべてのアプリケーションプログラムのア
プリケーションプログラム名,ファイルロードディレク
トリ,置換指示番号,関数名および置換指示コマンド発
行総数を格納し、アプリケーションプログラム管理テー
ブルがプロセス固有のアプリケーションプログラム名,
関数名,関数アドレスおよび置換済番号を格納し、置換
指示コマンド処理手段が置換指示コマンドを受け付け置
換情報テーブルの置換指示コマンド発行総数を1つ加算
し、この置換指示コマンド発行総数を置換指示コマンド
に含まれるアプリケーションプログラム名に対応する置
換指示番号に設定し、置換指示コマンドに含まれるファ
イルロードディレクトリをアプリケーションプログラム
名に対応するファイルロードディレクトリに設定し、ア
プリケーションプログラム管理テーブル初期化手段がプ
ロセスの立上り時に置換情報テーブルを参照して動的置
換の対象であるすべてのアプリケーションプログラムの
ロードをオペレーティングシステムに要求し、アプリケ
ーションプログラムのロード後にアプリケーションプロ
グラム管理テーブルにアプリケーションプログラム名,
関数名および関数アドレスを設定して初期化し、電文受
信手段が業務電文を受信し、アプリケーションプログラ
ム置換手段が電文受信手段により業務電文が受信される
たびに呼び出され、置換情報テーブル中のアプリケーシ
ョンプログラム名と対応する置換指示番号とアプリケー
ションプログラム管理テーブルの置換済番号とを比較
し、置換指示番号が置換済番号より大きければアプリケ
ーションプログラム名の新しいアプリケーションプログ
ラムのロードと古いアプリケーションプログラムのキャ
ンセルとをオペレーティングシステムに要求し、オペレ
ーティングシステムから返された関数アドレスおよび置
換情報テーブルの置換指示コマンド発行総数を用いてア
プリケーションプログラム管理テーブルの関数アドレス
および置換済番号を更新する。
【0008】
【実施例】次に、本発明について図面を参照して詳細に
説明する。
【0009】図1は、本発明の一実施例に係るプログラ
ムの動的置換方式の構成を示すブロック図である。本実
施例のプログラムの動的置換方式は、オペレーティング
システム1と、置換指示コマンド処理手段2と、置換情
報テーブル3と、アプリケーションプログラム管理テー
ブル初期化手段4と、アプリケーションプログラム置換
手段5と、アプリケーションプログラム呼出し手段6
と、アプリケーションプログラム管理テーブル7と、ア
プリケーションプログラム8と、アプリケーションプロ
グラム格納ファイル9と、置換指示コマンド10と、業
務電文11と、電文受信手段12と、アプリケーション
プログラム利用プログラム13と、置換情報テーブル初
期化手段14と、アプリケーションプログラム定義ファ
イル15とから構成されている。なお、符号20は、プ
ロセスを示す。
【0010】オペレーティングシステム1は、マルチプ
ロセス処理が可能なオペレーティングシステムである。
【0011】図2は、置換情報テーブル3の一例を示す
図である。置換情報テーブル3のレコードは、アプリケ
ーションプログラム名,ファイルロードディレクトリ,
置換指示番号,関数名および置換指示コマンド発行総数
から構成されている。アプリケーションプログラム名
は、アプリケーションプログラム8の実行形式ファイル
名である。ファイルロードディレクトリは、アプリケー
ションプログラム8が格納されている場所を示す。置換
指示番号は、アプリケーションプログラム8の置換指示
が第何回の置換指示コマンド10で行われたかを示す番
号で、置換指示が一度も行われていないときは0であ
る。置換指示番号は、アプリケーションプログラム管理
テーブル7の置換済番号との比較で、置換指示はあった
が、まだ置換されていないアプリケーションプログラム
8があるかどうかの判定に利用される。関数名は、アプ
リケーションプログラム8に含まれる入り口名(エント
リ名)である。置換指示コマンド発行総数は、第何回の
置換指示コマンド10まで発行されているかを示す番号
であり、置換指示コマンド10の発行が一度も行われて
いないときは0である。置換指示コマンド発行総数は、
置換指示番号の最大値でもある。
【0012】置換指示コマンド処理手段2は、置換指示
コマンド10を受け付け、置換情報テーブル3の置換指
示コマンド発行総数を1つ加算し、この置換指示コマン
ド発行総数を置換指示コマンド10に含まれるアプリケ
ーションプログラム名に対応する置換指示番号に設定
し、置換指示コマンド10に含まれるファイルロードデ
ィレクトリをアプリケーションプログラム名に対応する
ファイルロードディレクトリに設定する。
【0013】図3は、アプリケーションプログラム管理
テーブル7の一例を示す図である。アプリケーションプ
ログラム管理テーブル7のレコードは、アプリケーショ
ンプログラム名,関数名,関数アドレスおよび置換済番
号から構成されている。アプリケーションプログラム名
は、アプリケーションプログラム8の実行形式ファイル
名である。関数名は、アプリケーションプログラム8に
含まれる入り口名(エントリ名)である。関数アドレス
は、アプリケーションプログラム8のロード時にオペレ
ーティングシステム1から受け取るアプリケーションプ
ログラム8の入り口アドレスである。置換済番号は、置
換情報テーブル3の置換指示コマンド発行総数との比較
で、置換指示はあったが、まだ置換されていないアプリ
ケーションプログラム8があるかどうかの判定に利用さ
れる。
【0014】アプリケーションプログラム管理テーブル
初期化手段4は、プロセス20の立上り時に置換情報テ
ーブル3を参照して動的置換の対象であるすべてのアプ
リケーションプログラム8のロードをオペレーティング
システム1に要求し、アプリケーションプログラム8の
ロード後にアプリケーションプログラム管理テーブル7
にアプリケーションプログラム名,関数名および関数ア
ドレスを設定して初期化する。
【0015】アプリケーションプログラム置換手段5
は、電文受信手段12により業務電文11が受信される
たびに呼び出され、置換情報テーブル3中のアプリケー
ションプログラム名と対応する置換指示番号とアプリケ
ーションプログラム管理テーブル7の置換済番号とを比
較し、置換指示番号が置換済番号より大きければアプリ
ケーションプログラム名の新しいアプリケーションプロ
グラムのロードと古いアプリケーションプログラムのキ
ャンセルとをオペレーティングシステム1に要求し、オ
ペレーティングシステム1から返された関数アドレスお
よび置換情報テーブル3の置換指示コマンド発行総数を
用いてアプリケーションプログラム管理テーブル7の関
数アドレスおよび置換済番号を更新する。
【0016】アプリケーションプログラム呼出し手段6
は、アプリケーションプログラム管理テーブル7を参照
しアプリケーションプログラム8を呼び出す。
【0017】アプリケーションプログラム8は、動的置
換の対象であるダイナミックリンク可能なプログラムで
ある。なお、アプリケーションプログラム8は、プロセ
ス間共有であり、複数のプロセス20が動作していて
も、各プロセス20が使用するアプリケーションプログ
ラム8はメモリ(図示せず)上の1箇所にしかロードさ
れない。
【0018】アプリケーションプログラム格納ファイル
9は、動的置換の対象であるすべてのアプリケーション
プログラム8を格納する。
【0019】置換指示コマンド10は、アプリケーショ
ンプログラム名およびファイルロードディレクトリを含
んでいて、これらにより指定されるアプリケーションプ
ログラム8の置換を指示する。
【0020】電文受信手段12は、業務電文11を受信
し、アプリケーションプログラム置換手段5を呼び出
し、アプリケーションプログラム置換手段5から制御が
戻った後にアプリケーションプログラム利用プログラム
13を呼び出す。
【0021】アプリケーションプログラム利用プログラ
ム13は、動的置換の対象となるアプリケーションプロ
グラム8の呼出しを行うプログラムであり、通常、オン
ラインシステムやその上に構築されるミドルソフトウェ
アが相当する。なお、アプリケーションプログラム8か
らも、アプリケーションプログラム8を呼び出すことが
可能なので、アプリケーションプログラム8がアプリケ
ーションプログラム利用プログラム13になることもあ
り得る。
【0022】置換情報テーブル初期化手段14は、アプ
リケーションプログラム定義ファイル15のアプリケー
ションプログラム名,ファイルロードディレクトリおよ
び関数名を置換情報テーブル3に展開して、置換情報テ
ーブル3を初期化する。
【0023】アプリケーションプログラム定義ファイル
15は、動的置換の対象であるすべてのアプリケーショ
ンプログラム8のアプリケーションプログラム名,ファ
イルロードディレクトリおよび関数名を格納するファイ
ルである。
【0024】図4を参照すると、アプリケーションプロ
グラム管理テーブル初期化手段4の処理は、アプリケー
ションプログラムロード要求ステップS101と、アプ
リケーションプログラム管理テーブル初期化ステップS
102とからなる。
【0025】図5を参照すると、アプリケーションプロ
グラム置換手段5の処理は、置換情報テーブルおよびア
プリケーションプログラム管理テーブル参照ステップS
201と、置換すべきアプリケーションプログラム有無
判定ステップS202と、置換情報テーブルレコード1
件取得ステップS203と、レコード終了判定ステップ
S204と、置換指示有無判定ステップS205と、新
アプリケーションプログラムロード要求ステップS20
6と、アプリケーションプログラム管理テーブル更新ス
テップS207と、旧アプリケーションプログラムキャ
ンセル要求ステップS208とからなる。
【0026】次に、このように構成された本実施例のプ
ログラムの動的置換方式の動作について説明する。
【0027】トランザクション処理システムの立上げに
際し、まず、置換情報テーブル初期化手段14を起動
し、アプリケーションプログラム定義ファイル15のア
プリケーションプログラム名,ファイルロードディレク
トリおよび関数名をメモリ上の置換情報テーブル3に展
開して、置換情報テーブル3を初期化する。
【0028】プロセス20が起動されると、アプリケー
ションプログラム管理テーブル初期化手段4が起動され
る。アプリケーションプログラム管理テーブル初期化手
段4は、置換情報テーブル3のアプリケーションプログ
ラム名およびファイルロードディレクトリをもとに、置
換情報テーブル3に定義されたすべてのアプリケーショ
ンプログラム8のロードをオペレーティングシステム1
に要求する(ステップS101)。
【0029】オペレーティングシステム1は、すべての
アプリケーションプログラム8のロード要求に従い、ア
プリケーションプログラム格納ファイル9からアプリケ
ーションプログラム8を順次取り出してメモリ上にロー
ドし、関数アドレスを返す。なお、アプリケーションプ
ログラム8はプロセス間共有であるので、他のプロセス
20の起動により同じアプリケーションプログラム8が
すでにメモリ上にロードされていた場合には、同じアプ
リケーションプログラム8の二重のロードは行われな
い。
【0030】オペレーティングシステム1からアプリケ
ーションプログラム8の関数アドレスを受け取ると、ア
プリケーションプログラム管理テーブル初期化手段4
は、アプリケーションプログラム管理テーブル7にアプ
リケーションプログラム名および関数名とともに格納
し、アプリケーションプログラム管理テーブル7を初期
化する(ステップS102)。
【0031】アプリケーションプログラム8の置換指示
は、アプリケーションプログラム名およびファイルロー
ドディレクトリを含む置換指示コマンド10で行い、置
換指示コマンド処理手段2が受け付ける。
【0032】置換指示コマンド処理手段2は、置換指示
コマンド10を受け付けると、置換情報テーブル3の置
換指示コマンド発行総数を1つ加算し、この置換指示コ
マンド発行総数を置換情報テーブル3における置換指示
コマンド10に含まれるアプリケーションプログラム名
に対応する置換指示番号に転記し、置換指示コマンド1
0に含まれるファイルロードディレクトリを置換情報テ
ーブル3におけるアプリケーションプログラム名に対応
する古いファイルロードディレクトリに上書きする。
【0033】一方、電文受信手段12は、業務電文11
を受信すると、まずアプリケーションプログラム置換手
段5を呼び出す。
【0034】アプリケーションプログラム置換手段5
は、まず、置換情報テーブル3とアプリケーションプロ
グラム管理テーブル7とを参照し(ステップS20
1)、置換情報テーブル3の置換指示コマンド発行総数
がアプリケーションプログラム管理テーブル7の置換済
番号より大きいかどうかに基づいて置換すべきアプリケ
ーションプログラム8があるかどうかを判定する(ステ
ップS202)。置換情報テーブル3の置換コマンド発
行総数がアプリケーションプログラム管理テーブル7の
置換済番号より大きくなければ、置換すべきアプリケー
ションプログラム8はないので、アプリケーションプロ
グラム置換手段5は、処理を終了し、電文受信手段12
に制御を戻す。
【0035】ステップS202で、置換情報テーブル3
の置換指示コマンド発行総数がアプリケーションプログ
ラム管理テーブル7の置換済番号より大きければ、置換
すべきアプリケーションプログラム8があるので、アプ
リケーションプログラム置換手段5は、置換情報テーブ
ル3からレコードを1件取得して(ステップS20
3)、置換情報テーブル3の全レコードの取得が終了し
ていなければ(ステップS204でノー)、レコード中
の置換指示番号がアプリケーションプログラム管理テー
ブル7の置換済番号より大きいかどうかに基づいてレコ
ード中のアプリケーションプログラム名のアプリケーシ
ョンプログラム8に置換指示があるかどうかを判定する
(ステップS205)。レコード中の置換指示番号がア
プリケーションプログラム管理テーブル7の置換済番号
より大きくなければ、レコード中のアプリケーションプ
ログラム名のアプリケーションプログラム8に未処理の
置換指示がないので、アプリケーションプログラム置換
手段5は、ステップS203に制御を戻す。
【0036】ステップS205で、レコード中の置換指
示番号がアプリケーションプログラム管理テーブル7の
置換済番号より大きければ、レコード中のアプリケーシ
ョンプログラム名のアプリケーションプログラム8に未
処理の置換指示があるので、アプリケーションプログラ
ム置換手段5は、レコード中のアプリケーションプログ
ラム名およびファイルロードディレクトリを用いて新し
いアプリケーションプログラム8のロードをオペレーテ
ィングシステム1に要求する(ステップS206)。
【0037】オペレーティングシステム1は、アプリケ
ーションプログラム名およびファイルロードディレクト
リに該当するアプリケーションプログラム8をアプリケ
ーションプログラム格納ファイル9からメモリ上にロー
ドし、関数アドレスをアプリケーションプログラム置換
手段5に返す。
【0038】アプリケーションプログラム置換手段5、
オペレーティングシステム1から返された関数アドレス
を用いてアプリケーションプログラム管理テーブル7の
アプリケーションプログラム名に対応する関数アドレス
を更新するとともに、置換情報テーブル3の置換指示コ
マンド発行総数を置換済番号に転記する(ステップS2
07)。
【0039】次に、アプリケーションプログラム置換手
段5は、レコード中のアプリケーションプログラム名を
用いて古いアプリケーションプログラム8のキャンセル
をオペレーティングシステム1に要求し(ステップS2
08)、ステップS203に制御を戻す。
【0040】オペレーティングシステム1は、アプリケ
ーションプログラム名を有するメモリ上の古いアプリケ
ーションプログラム8をキャンセルする。
【0041】ステップS204で、置換情報テーブル3
の全てのレコードの取得が終了すると、アプリケーショ
ンプログラム置換手段5は、処理を終了し、電文受信手
段12に制御を戻す。
【0042】電文受信手段12は、アプリケーションプ
ログラム置換手段5から制御が戻ると、次に業務電文1
1を渡してアプリケーションプログラム利用プログラム
13を呼び出す。
【0043】アプリケーションプログラム利用プログラ
ム13は、業務電文11を解析してトランザクションを
処理するアプリケーションプログラム8を決定し、アプ
リケーションプログラム名および関数名を渡してアプリ
ケーションプログラム呼出し手段6を呼び出す。
【0044】アプリケーションプログラム呼出し手段6
は、アプリケーションプログラム名および関数名に基づ
いてアプリケーションプログラム管理テーブル7の新し
い関数アドレスを参照し、この関数アドレスを用いて新
しいアプリケーションプログラム8を呼び出す。
【0045】図6(a)〜(h)は、置換指示コマンド
10が4回発行され、アプリケーションプログラム8の
置換が3回行われる場合を例示する図である。なお、第
3回の置換指示コマンド10の発行と第4回の置換指示
コマンド10の発行との間は、業務電文11の受信が行
われず、第3回の置換指示コマンド10と第4回の置換
指示コマンド10との処理を一度に行っている。
【0046】まず、図6(a)に示す初期状態から第1
回の置換指示コマンド10でアプリケーションプログラ
ムApName20の置換が要求されると、置換情報テ
ーブル3の置換指示コマンド発行総数が1に加算され、
この値がアプリケーションプログラム名“ApName
20”に対応する置換指示番号に設定される(図6
(b)参照)。
【0047】第1回の置換指示コマンド10の発行が終
了した後のトランザクションの開始時に、アプリケーシ
ョンプログラムApName20の置換が行われ、置換
が終了したならば、アプリケーションプログラム管理テ
ーブル7の置換済番号に置換情報テーブル3の置換指示
コマンド発行総数の1が設定される(第1回の置換指示
コマンド10まで処理済であることを意味する)(図6
(c)参照)。
【0048】第2回の置換指示コマンド10でアプリケ
ーションプログラムApName30の置換が要求され
ると、置換情報テーブル3の置換指示コマンド発行総数
が2に加算され、この値がアプリケーションプログラム
名“ApName30”に対応する置換指示番号に設定
される(図6(d)参照)。
【0049】第2回の置換指示コマンド10の発行が終
了した後のトランザクションの開始時に、アプリケーシ
ョンプログラムApName30の置換が行われ、置換
が終了したならば、アプリケーションプログラム管理テ
ーブル7の置換済番号に置換情報テーブル3の置換指示
コマンド発行総数の2が設定される(第2回の置換指示
コマンド10まで処理済であることを意味する)(図6
(e)参照)。
【0050】第3回の置換指示コマンド10でアプリケ
ーションプログラムApName30の置換が要求され
ると、置換情報テーブル3の置換指示コマンド発行総数
が3に加算され、この値がアプリケーションプログラム
名“ApName30”に対応する置換指示番号に設定
される(図6(f)参照)。
【0051】第4回の置換指示コマンド10でアプリケ
ーションプログラムApName20の置換が要求され
ると、置換情報テーブル3の置換指示コマンド発行総数
が4に加算され、この値がアプリケーションプログラム
名“ApName20”に対応する置換指示番号に設定
される(図6(g)参照)。
【0052】第4回の置換指示コマンド10の発行が終
了した後のトランザクションの開始時に、アプリケーシ
ョンプログラムApName20とアプリケーションプ
ログラムApName30との置換が同時に行われ、置
換が終了したならば、アプリケーションプログラム管理
テーブル7の置換済番号に置換情報テーブル3の置換指
示コマンド発行総数の4が設定される(第4回の置換指
示コマンド10まで処理済であることを意味する)(図
6(h)参照)。
【0053】このように、本実施例のプログラムの動的
置換方式では、置換指示の反映はプロセス20が業務電
文11を受け取って初めて行われるので、アプリケーシ
ョンプログラム8の置換はプロセス20間で独立してい
る。
【0054】図7は、プロセス間で置換状態が異なって
いる例を示す図である。この例では、プロセス#1とプ
ロセス#2とでアプリケーションプログラムApNam
e10の置換状態が異なる。すなわち、プロセス#1は
第3回の置換指示コマンド10に基づくアプリケーショ
ンプログラムApName10の置換を反映している
が、プロセス#2は第3回の置換指示コマンド10に基
づくアプリケーションプログラムApName10の置
換を反映していない。
【0055】アプリケーションプログラム8の置換がプ
ロセス20間で独立しているということは、置換指示の
反映に時差があることを意味する。これにより、全プロ
セス20が置換を完了するまで待つことなく、置換処理
が行えることになる。
【0056】
【発明の効果】以上説明したように本発明は、トランザ
クション処理システムにおいて、アプリケーションプロ
グラム格納ファイル,アプリケーションプログラム管理
テーブル,置換指示コマンド処理手段,アプリケーショ
ンプログラム管理テーブル初期化手段,電文受信手段お
よびアプリケーションプログラム置換手段を設け、アプ
リケーションプログラムの置換指示は随時受け付けてお
き、実際のアプリケーションプログラムの置換は業務電
文の受信時のトランザクション開始時に、受け付けられ
ている置換指示に基づいてプロセス間で独立に行うよう
にしたことにより、トランザクション処理システムを停
止させることなしにアプリケーションプログラムを置換
させることができ、トランザクション処理システムの終
日稼働を可能にするという効果がある。
【0057】特に、頻繁にアプリケーションプログラム
の置換が必要なテスト段階で適用することにより、テス
トの効率化を図ることができるという利点がある。
【図面の簡単な説明】
【図1】本発明の一実施例に係るプログラムの動的置換
方式の構成を示すブロック図である。
【図2】図1中の置換情報テーブルの内容を示す図であ
る。
【図3】図1中のアプリケーションプログラム管理テー
ブルの内容を示す図である。
【図4】図1中のアプリケーションプログラム管理テー
ブル初期化手段の処理の一例を示す流れ図である。
【図5】図1中のアプリケーションプログラム置換手段
の処理の一例を示す流れ図である。
【図6】(a)〜(h)は本実施例のプログラムの動的
置換方式による置換情報テーブルおよびアプリケーショ
ンプログラム管理テーブルの状態遷移の一例を示す図で
ある。
【図7】本実施例のプログラムの動的置換方式において
プロセス間で置換状態が異なっている例を示す図であ
る。
【符号の説明】
1 オペレーティングシステム 2 置換指示コマンド処理手段 3 置換情報テーブル 4 アプリケーションプログラム管理テーブル初期化手
段 5 アプリケーションプログラム置換手段 6 アプリケーションプログラム呼出し手段 7 アプリケーションプログラム管理テーブル 8 アプリケーションプログラム 9 アプリケーションプログラム格納ファイル 10 置換指示コマンド 11 業務電文 12 電文受信手段 13 アプリケーションプログラム利用プログラム 20 プロセス

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 トランザクション処理システムにおい
    て、 動的置換の対象であるすべてのダイナミックリンク可能
    なアプリケーションプログラムを格納するアプリケーシ
    ョンプログラム格納ファイルと、 動的置換の対象であるすべてのアプリケーションプログ
    ラムのアプリケーションプログラム名,ファイルロード
    ディレクトリ,置換指示番号,関数名および置換指示コ
    マンド発行総数を格納する置換情報テーブルと、 プロセス固有のアプリケーションプログラム名,関数
    名,関数アドレスおよび置換済番号を格納するアプリケ
    ーションプログラム管理テーブルと、 置換指示コマンドを受け付け前記置換情報テーブルの置
    換指示コマンド発行総数を1つ加算し、この置換指示コ
    マンド発行総数を前記置換指示コマンドに含まれるアプ
    リケーションプログラム名に対応する置換指示番号に設
    定し、前記置換指示コマンドに含まれるファイルロード
    ディレクトリを前記アプリケーションプログラム名に対
    応するファイルロードディレクトリに設定する置換指示
    コマンド処理手段と、 プロセスの立上り時に前記置換情報テーブルを参照して
    動的置換の対象であるすべてのアプリケーションプログ
    ラムのロードをオペレーティングシステムに要求し、ア
    プリケーションプログラムのロード後に前記アプリケー
    ションプログラム管理テーブルにアプリケーションプロ
    グラム名,関数名および関数アドレスを設定して初期化
    するアプリケーションプログラム管理テーブル初期化手
    段と、 業務電文を受信する電文受信手段と、 この電文受信手段により業務電文が受信されるたびに
    び出され、前記置換情報テーブル中のアプリケーション
    プログラム名と対応する置換指示番号と前記アプリケー
    ションプログラム管理テーブルの置換済番号とを比較
    し、前記置換指示番号が前記置換済番号より大きければ
    前記アプリケーションプログラム名の新しいアプリケー
    ションプログラムのロードと古いアプリケーションプロ
    グラムのキャンセルとをオペレーティングシステムに要
    求し、オペレーティングシステムから返された関数アド
    レスおよび前記置換情報テーブルの置換指示コマンド発
    行総数を用いて前記アプリケーションプログラム管理テ
    ーブルの関数アドレスおよび置換済番号を更新するアプ
    リケーションプログラム置換手段とを有することを特徴
    とするプログラムの動的置換方式。
  2. 【請求項2】 動的置換の対象であるすべてのアプリケ
    ーションプログラムのアプリケーションプログラム名,
    ファイルロードディレクトリおよび関数名を格納するア
    プリケーションプログラム定義ファイルと、前記トラン
    ザクション処理システムの立上げ時に前記アプリケーシ
    ョンプログラム定義ファイルのアプリケーションプログ
    ラム名,ファイルロードディレクトリおよび関数名を前
    記置換情報テーブルに展開する置換情報テーブル初期化
    手段とを備える請求項1記載のプログラムの動的置換方
    式。
  3. 【請求項3】 前記アプリケーションプログラム置換手
    段の後に前記電文受信手段により呼び出されるアプリケ
    ーションプログラム利用プログラムと、このアプリケー
    ションプログラム利用プログラムより呼び出され前記ア
    プリケーションプログラム管理テーブルの関数アドレス
    を用いてアプリケーションプログラムを呼び出すアプリ
    ケーションプログラム呼出し手段とを備える請求項1記
    載のプログラムの動的置換方式。
JP6339143A 1994-12-29 1994-12-29 プログラムの動的置換方式 Expired - Fee Related JP2639370B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6339143A JP2639370B2 (ja) 1994-12-29 1994-12-29 プログラムの動的置換方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6339143A JP2639370B2 (ja) 1994-12-29 1994-12-29 プログラムの動的置換方式

Publications (2)

Publication Number Publication Date
JPH08185318A JPH08185318A (ja) 1996-07-16
JP2639370B2 true JP2639370B2 (ja) 1997-08-13

Family

ID=18324648

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6339143A Expired - Fee Related JP2639370B2 (ja) 1994-12-29 1994-12-29 プログラムの動的置換方式

Country Status (1)

Country Link
JP (1) JP2639370B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08241216A (ja) * 1995-01-06 1996-09-17 Mitsubishi Electric Corp 計算機システム
US6363436B1 (en) 1997-01-27 2002-03-26 International Business Machines Corporation Method and system for loading libraries into embedded systems
JP4876438B2 (ja) 2005-05-31 2012-02-15 株式会社日立製作所 コンポーネントソフトウェアの運用方法および運用基盤
US9152410B2 (en) * 2012-06-21 2015-10-06 Vaibhav KHANDELWAL Auto-update while running client interface with handshake
KR101907418B1 (ko) * 2014-07-01 2018-10-12 한국전자통신연구원 동적 모듈, 이를 구비한 동적 업그레이드 장치 및 방법
JP6481437B2 (ja) * 2015-03-17 2019-03-13 日本電気株式会社 トランザクション処理装置、トランザクション処理方法及び制御プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2509952B2 (ja) * 1987-10-28 1996-06-26 富士通株式会社 オンライン中におけるロ―ドモジュ―ル入替方式
JPH03196222A (ja) * 1989-12-25 1991-08-27 Oki Electric Ind Co Ltd プログラム入替え方法

Also Published As

Publication number Publication date
JPH08185318A (ja) 1996-07-16

Similar Documents

Publication Publication Date Title
JP3074178B2 (ja) プログラム・モジュール・ロード及び実行方法
US9298472B2 (en) High-speed restart method, information processing device, and program
JPH0644085A (ja) アクセスを実行する方法及び装置並びにコンピュータシステム
JPH03278126A (ja) 計算機システム立上げ方式
US20080115128A1 (en) Method, system and computer program product for implementing shadow queues for recovery of messages
US8380660B2 (en) Database system, database update method, database, and database update program
JPH096546A (ja) ディスク制御システム
US20070255716A1 (en) Timer service computer program components
JP2639370B2 (ja) プログラムの動的置換方式
JPH11265301A (ja) クライアント/サーバシステム、クライアントコンピュータ及び記録媒体
US20020152424A1 (en) Computer system reinitiation method
US8949868B2 (en) Methods, systems and computer program products for dynamic linkage
JP4149619B2 (ja) 優先度変換システム
KR100401560B1 (ko) 운영체제의 커널 스택 동적 할당 방법
US8527484B2 (en) Accessing a data structure
JP2704028B2 (ja) ファイル領域管理方式
JPH09171469A (ja) プログラム動作制御方法およびプログラム動作制御システム
JP2666426B2 (ja) 二重化補助記憶装置
JPH09269912A (ja) 情報処理方法とその装置
KR100408653B1 (ko) 3지 비동기 시스템에서 운영체제 이중화 지원 방법
JPH03196222A (ja) プログラム入替え方法
JP4888713B2 (ja) コンピュータシステムの起動方法、情報処理装置及びプログラム
JPH0337748A (ja) 主記憶を利用した外部記憶アクセス方式
JP2003140899A (ja) コンピュータ装置及び動的dll使用時のクラスオブジェクト管理方法並びにdllを動的に用いるプログラム
JP2001014198A (ja) データバックアップ方式,方法および記録媒体

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080425

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090425

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100425

Year of fee payment: 13

LAPS Cancellation because of no payment of annual fees