JP2871998B2 - プログラム修正方式 - Google Patents
プログラム修正方式Info
- Publication number
- JP2871998B2 JP2871998B2 JP5110974A JP11097493A JP2871998B2 JP 2871998 B2 JP2871998 B2 JP 2871998B2 JP 5110974 A JP5110974 A JP 5110974A JP 11097493 A JP11097493 A JP 11097493A JP 2871998 B2 JP2871998 B2 JP 2871998B2
- Authority
- JP
- Japan
- Prior art keywords
- patch
- address
- program
- patch information
- information storage
- 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
Links
Description
ラム修正方式に関し、特に、システム停止が困難な計算
機システムのプログラムを修正するプログラム修正方式
に関する。
以下のようなものであった。先ず、プログラムエリアに
格納されているプログラムのパッチ箇所の内容を退避エ
リアに退避させ、次いでパッチ箇所を修正プログラムと
入れ換える。その後、入れ換えの済んだプログラムを実
行し、実行結果が正常か否かを判定する。実行結果が正
常である場合は修正処理を終了し、異常である場合は用
意してある別の修正プログラムとの入れ換えを行なう。
このような処理を実行結果が正常になるまで繰り返し行
なう。但し、用意してある全ての修正プログラムを使用
しても実行結果が正常にならない場合は退避エリアに退
避させてあるパッチ箇所の内容を用いてプログラムを元
に戻す(例えば、特開平3−97030号公報)。
ラム修正方式では、用意してある全ての修正プログラム
を用いても実行結果が正常にならない場合、パッチ箇所
を含むプログラムは最終的に元のプログラムに戻ってし
まうため、パッチ箇所を原因とする障害が発生する場合
があるという問題点があった。
は退避エリアを必要とするため、多くのメモリ資源が必
要になるという問題があった。
いかなかった場合に於いても、パッチ箇所を原因とする
障害が発生することがなく、且つ少ないメモリ量でプロ
グラムの修正を行なうことができるプログラム修正方式
を提供することにある。
するため、ユーザコンソールを有する計算機システムに
於いて、パッチ情報格納エリアと、前記ユーザコンソー
ルから入力された、修正対象プログラム中のパッチ箇所
の内容と置き換えるべき修正プログラムと、前記パッチ
箇所を含むモジュールの先頭アドレス及びサイズから構
成される縮退運転アドレスとを含むパッチ情報を前記パ
ッチ情報格納エリアに格納するパッチ情報格納部と、前
記パッチ箇所の内容を前記パッチ情報格納エリアに格納
されている何れの修正プログラムの内容としても、前記
修正対象プログラムの実行結果が異常となった場合、前
記パッチ情報に基づいて算出した前記パッチ箇所を含む
モジュールの先頭アドレス,最終アドレスを出力し、前
記修正対象プログラムの実行時に割り込み信号が発生す
ることにより実行アドレスを前記パッチ箇所を含むモジ
ュールの最終アドレスの次のアドレスに移行させるパッ
チ処理部と、 修正対象プログラムの実行アドレスが前記
パッチ箇所を含むモジュールの先頭アドレスと最終アド
レスとの間のアドレスになった時、割り込み信号を発生
する割り込み回路とを設けたものである。
ム及び縮退運転アドレスを含むパッチ情報はパッチ情報
格納部によってパッチ情報格納エリアに格納される。
情報格納エリアに格納されている何れの修正プログラム
の内容としても、修正対象プログラムの実行結果が異常
となった場合、パッチ情報に基づいて算出した前記パッ
チ箇所を含むモジュールの先頭アドレス,最終アドレス
を出力する。割り込み回路は、修正対象プログラムの実
行アドレスが前記パッチ箇所を含むモジュールの先頭ア
ドレスと最終アドレスとの間のアドレスになった時、割
り込み信号を発生する。パッチ処理部は、修正対象プロ
グラムの実行時に割り込み信号が発生すると、実行アド
レスをパッチ箇所を含むモジュールの最終アドレスの次
のアドレスに移行させる。
詳細に説明する。
り、CPU10と、ユーザコンソール19とから構成さ
れている。
(OS)11と、プログラムエリア12と、パッチ情報
が格納されるパッチ情報格納エリア13とを含んでい
る。尚、プログラムエリア12中の12aはパッチ箇所
を示しており、パッチ情報格納エリア13は複数のエリ
ア13a,13b,…,13nから構成されている。
報がパッチ情報格納エリア13に格納されているか否か
を監視するパッチ情報有無認識部15と、ユーザコンソ
ール19からCPU10に入力されたパッチ情報をパッ
チ情報格納エリア13に格納するパッチ情報格納部16
と、パッチ箇所12aをパッチ情報に含まれている修正
プログラムで置き換えると共に、置き換えの済んだプロ
グラムを実行し、実行結果に従った処理を行なうパッチ
処理部17とを含んでいる。
情報格納エリア13にパッチ情報が格納されているか否
かを管理するために使用するパッチ情報管理テーブル2
0の内容例を示した図である。
ル20にはパッチ情報格納エリア13の各エリア13
a,13b,…,13nに対応したパッチ情報有無フラ
グ21a,21b,…,21nと、パッチ処理フラグ2
2a,22b,…,22nとが格納される。
…,21nはパッチ情報格納エリア13の各エリア13
a,13b,…,13nにパッチ情報が格納されている
か否かを有/無によって示すフラグである。
2nはパッチ情報格納エリア13のエリア13a,13
b,…,13nに格納されているパッチ情報を使用した
プログラム修正が、未実行であるか、実行中であるか或
いは実行完了であるかを未/中/完によって示すフラグ
である。
ア13a,13b,…,13nに格納されるパッチ情報
30のフォーマットの一例を示した図である。
のパッチ情報と当該パッチ情報30とを区別するための
パッチID31と、パッチ実行後の実行結果が異常とな
った場合の回復処理レベルを規定する障害レベル情報3
2と、パッチ情報30に含まれている修正プログラムの
数を示すパッチ数33と、修正プログラム34a,34
b,…,34nと、パッチ箇所を示すアドレス情報35
a,35b,…35nと、対応する修正プログラム34
a,34b,…34nについての処理が未実行である
か、実行済みであるかを未/完によって示す処理フラグ
36a,36b,…36nと、パッチ処理が失敗した場
合に縮退運転させるエリアを示す縮退運転アドレス37
とから構成されている。尚、処理フラグ36a,36
b,…36nは初期状態に於いては“未”となっている
ものである。
明する。
ッチ情報30が入力されると、オペレーティングシステ
ム11のパッチ情報格納部16はパッチ情報30を、そ
れに含まれているパッチID31に従ってパッチ情報格
納エリア13に設けられているエリア13a,13b,
…,13nの内の所定のエリア(この例では、エリア1
3aとする)に格納する。
を格納したエリア13aと対応するパッチ情報管理テー
ブル20中のパッチ情報有無フラグ21aを“有”と
し、パッチ処理フラグ22aを「未実行」を示す“未”
とする。
理テーブル20のパッチ情報有無フラグ21a,21
b,…21nを順次検索しており、その内容が“有”に
なっているパッチ情報有無フラグを探し出すと、対応す
るパッチ処理フラグの内容が「未実行」を示す“未”に
なっているか否かを判断する。そして、“未”になって
いる場合は、その内容を「実行中」を示す“中”に変更
し、更に、上記探し出したパッチ情報有無フラグと対応
するパッチ情報格納エリア13中のエリアを示す情報を
パッチ処理部17に渡す。
の内容が“有”になっており、対応するパッチ処理フラ
グ22aの内容が“未”になっているので、パッチ情報
有無認識部15はパッチ処理フラグ22aの内容を「実
行中」を示す“中”に変更し、更に、パッチ情報有無フ
ラグ21aと対応するパッチ情報格納エリア13中のエ
リア13aを示す情報をパッチ処理部17に渡すことに
なる。
15からパッチ情報格納エリア13中のエリア13aを
示す情報が渡されると、そこに格納されているパッチ情
報30のパッチ数33が「0」か否かを、即ちパッチ情
報30に未処理の修正プログラムが存在するか否かを判
断する。
ち未処理の修正プログラムが存在すると判断した場合
は、パッチ処理部17は処理フラグ36a,36b,
…,36nを検索し、その内容が“未”になっているも
のの1つ(例えば、処理フラグ36aとする)を選択す
る。
理部17は選択した処理フラグ36aと対応するアドレ
ス情報35aに基づいてプログラムエリア12中のパッ
チ箇所12aのアドレス,サイズを求め、更に、処理フ
ラグ36aと対応する修正プログラム34aをパッチ箇
所12aにロードし、実行させる。
の実行が終了すると、実行結果と障害レベル情報32と
に基づいて実行結果が正常レベルであるか否かを判断す
る。
チ処理部17は処理フラグ36aの内容を「実行完了」
を示す“完”にし、続いてパッチ情報有無フラグ21a
を“無”にし、更にパッチ処理フラグ22aを“完”に
した後、ユーザコンソール19に対してパッチID31
によって示されるパッチ処理が正常に終了した旨のメッ
セージを出力する。
ッチ処理部17は処理フラグ36aを「実行完了」を示
す“完”にし、パッチ数33を−1した後、パッチ数3
3が「0」になっているか否かを判断する。
ちパッチ情報30に未処理の修正プログラムが存在する
と判断した場合は、パッチ処理部17は内容が“未”に
なっている処理フラグを1つ選択し、前述したと同様の
処理を行なう。
ち、パッチ情報30に未処理の修正プログラムが存在し
ないと判断した場合は、パッチ処理部17はパッチ情報
有無フラグ21aを“無”にし、パッチ処理フラグ22
aを“完”にし、更にユーザコンソール19に対してパ
ッチ処理が失敗したので、縮退運転を行なう旨のメッセ
ージを出力した後、以下に述べる処理を行なう。
に基づいて、プログラムエリア12に於ける縮退運転の
アドレス,サイズを求める。ここで、縮退運転アドレス
37にはパッチ箇所12aを含むモジュールの先頭アド
レス及びそのサイズが縮退アドレス,サイズとして格納
されている。
に基づいて縮退運転のアドレス、即ちパッチ箇所12a
を含むモジュールの先頭アドレスを図4に示す割り込み
回路内のレジスタ41にセットし、上記縮退運転アドレ
スに上記サイズを加算したアドレス、即ちパッチ箇所1
2aを含むモジュールの最終アドレスを図4に示すレジ
スタ42にセットする。尚、図4に示す構成の割り込み
回路はパッチ情報格納エリア13の各エリア13a,1
3b,…,13nに対応して設けられている。
先頭アドレスA1は比較器43によってプログラムの実
行アドレスA0と比較され、比較器43はA1≦A0と
なることにより、その出力信号を“1”とする。また、
レジスタ42にセットされたモジュールの最終アドレス
A2は比較器44によってプログラムの実行アドレスA
0と比較され、比較器44はA2≧A0となることによ
り、その出力信号を“1”とする。
ト45で論理積がとられ、アンドゲート45の出力信号
はパッチ処理部17に対する割り込み信号となる。即
ち、プログラムの実行アドレスA0が縮退運転アドレス
情報37によって示されるパッチ箇所12aを含むモジ
ュール内のアドレスになった場合、パッチ処理部17に
割り込みがかかることになる。
力信号によって割り込みがかけられると、レジスタ42
にセットしたアドレスの次のアドレス、即ちパッチ箇所
12aを含むモジュールの次のモジュールの先頭アドレ
スにプログラムの実行アドレスを移行させると共に、レ
ジスタ41にセットしたアドレスからレジスタ42にセ
ットしたアドレスまでを実行していない旨のステータス
をセットし、更に、レジスタ41にセットしたアドレス
からレジスタ42にセットしたアドレスまでの部分を縮
退運転した旨のメッセージをユーザコンソール19に出
力する。尚、上記ステータスはプログラムエリア12に
格納されたプログラムから参照可能な部分であれば何処
にセットしても構わず、このステータスを参照すること
により、縮退運転の有無を判断することができる。
説明したが、本発明は実施例に限定されるものではな
く、その要旨を逸脱しない範囲に於いて種々変更可能で
あることはいうまでもない。
箇所の修正がうまくいかなかった場合、例えばパッチ箇
所を含むモジュール等の縮退運転アドレスによって示さ
れる部分を縮退運転するものであるので、パッチ箇所の
修正がうまくいかなかった場合に於いても、パッチ箇所
を原因とする障害を防ぐことができる効果がある。
に、パッチ箇所の内容を退避させておく退避エリアが不
要になるので、プログラム修正に伴うメモリ資源を少な
いものにすることができる効果がある。
である。
Claims (1)
- 【請求項1】 ユーザコンソールを有する計算機システ
ムに於いて、 パッチ情報格納エリアと、 前記ユーザコンソールから入力された、修正対象プログ
ラム中のパッチ箇所の内容と置き換えるべき修正プログ
ラムと、前記パッチ箇所を含むモジュールの先頭アドレ
ス及びサイズから構成される縮退運転アドレスとを含む
パッチ情報を前記パッチ情報格納エリアに格納するパッ
チ情報格納部と、前記パッチ箇所の内容を前記パッチ情報格納エリアに格
納されている何れの修正プログラムの内容としても、前
記修正対象プログラムの実行結果が異常となった場合、
前記パッチ情報に基づいて算出した前記パッチ箇所を含
むモジュールの先頭アドレス,最終アドレスを出力し、
前記修正対象プログラムの実行時に割り込み信号が発生
することにより実行アドレスを前記パッチ箇所を含むモ
ジュールの最終アドレスの次のアドレスに移行させるパ
ッチ処理部と、 修正対象プログラムの実行アドレスが前記パッチ箇所を
含むモジュールの先頭アドレスと最終アドレスとの間の
アドレスになった時、割り込み信号を発生する割り込み
回路 とを備えたことを特徴とするプログラム修正方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5110974A JP2871998B2 (ja) | 1993-04-14 | 1993-04-14 | プログラム修正方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5110974A JP2871998B2 (ja) | 1993-04-14 | 1993-04-14 | プログラム修正方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06301527A JPH06301527A (ja) | 1994-10-28 |
JP2871998B2 true JP2871998B2 (ja) | 1999-03-17 |
Family
ID=14549217
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5110974A Expired - Fee Related JP2871998B2 (ja) | 1993-04-14 | 1993-04-14 | プログラム修正方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2871998B2 (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0397030A (ja) * | 1989-09-11 | 1991-04-23 | Hitachi Ltd | プログラム修正方式 |
JPH04165548A (ja) * | 1990-10-30 | 1992-06-11 | Fujitsu Ltd | メモリアドレス制御方式 |
-
1993
- 1993-04-14 JP JP5110974A patent/JP2871998B2/ja not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0397030A (ja) * | 1989-09-11 | 1991-04-23 | Hitachi Ltd | プログラム修正方式 |
JPH04165548A (ja) * | 1990-10-30 | 1992-06-11 | Fujitsu Ltd | メモリアドレス制御方式 |
Also Published As
Publication number | Publication date |
---|---|
JPH06301527A (ja) | 1994-10-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5471620A (en) | Data processor with means for separately receiving and processing different types of interrupts | |
US6990659B1 (en) | Device for rewriting software programs in peripheral devices connected to a network | |
JPH05324489A (ja) | 記憶装置 | |
JP2004046453A (ja) | シングルチップマイクロコンピュータおよびそのブート領域切り替え方法 | |
CN105391755A (zh) | 一种分布式系统中数据处理方法、装置及系统 | |
JP2871998B2 (ja) | プログラム修正方式 | |
JP2000242484A (ja) | 制御プログラムの変更方法 | |
US20070226172A1 (en) | File-management apparatus, file-management method, and computer product | |
JPH05225076A (ja) | 共通情報管理方法及びシステム | |
US20210314141A1 (en) | Byzantine fault tolerance algorithm-based blockchain consensus method, apparatus, and system | |
JP3260711B2 (ja) | メモリパトロール方法と制御回路 | |
JPH056281A (ja) | 情報処理装置 | |
JPS5826043B2 (ja) | プロセツサのリセツト方式 | |
US20220156074A1 (en) | Electronic device and multiplexing method of spatial | |
JPH04205144A (ja) | マイクロプロセッサ | |
KR100216045B1 (ko) | 프로그램형 제어기의 비트 연산 처리방법 및 그 장치 | |
JPS59163663A (ja) | 簡易フアイル破壊検知方式 | |
JP2000172539A (ja) | ネットワーク上のファイル比較方法 | |
JP3652878B2 (ja) | 副ロードモジュールのトランザクション同期置換方式 | |
JP2626545B2 (ja) | 耐故障コンピュータシステム | |
JP2633874B2 (ja) | 増設処理方式 | |
JPS59144955A (ja) | 情報処理装置 | |
JPH01113835A (ja) | 情報処理装置における記憶障害回避方式 | |
JP2798102B2 (ja) | データ処理ルール適用方式 | |
JPH08194462A (ja) | 外字パターンの表示方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080108 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090108 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100108 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110108 Year of fee payment: 12 |
|
LAPS | Cancellation because of no payment of annual fees |