JPH07111681B2 - プログラム修正方法 - Google Patents

プログラム修正方法

Info

Publication number
JPH07111681B2
JPH07111681B2 JP62061863A JP6186387A JPH07111681B2 JP H07111681 B2 JPH07111681 B2 JP H07111681B2 JP 62061863 A JP62061863 A JP 62061863A JP 6186387 A JP6186387 A JP 6186387A JP H07111681 B2 JPH07111681 B2 JP H07111681B2
Authority
JP
Japan
Prior art keywords
patch
segment
flow
division unit
correction
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
JP62061863A
Other languages
English (en)
Other versions
JPS63228224A (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
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP62061863A priority Critical patent/JPH07111681B2/ja
Publication of JPS63228224A publication Critical patent/JPS63228224A/ja
Publication of JPH07111681B2 publication Critical patent/JPH07111681B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はコンピュータシステムにおけるプログラム修正
方法に関し、特に運用中のシステムプログラム等の動的
な修正方法に関する。
〔従来の技術〕
従来、狭義のオペレーティングシステムであるシステム
プログラム等の修正は、コンピュータシステムのシステ
ム生成時またはシステム立上げ前に、予め作成されたパ
ッチ指示ステートメントに従ってその修正を行なってい
た。
〔発明が解決しようとする問題点〕
上述した従来のプログラム修正方法では、システム生成
時またはシステム立上げ前に、システムプログラム等の
修正を行なわなければならず、システム運用中にシステ
ムプログラム等を修正することができないという欠点が
ある。
本発明はこのような従来の欠点を解決したもので、その
目的は、システム運用中にシステムプログラム等の修正
が可能な方法を提供することにある。
〔問題点を解決するための手段〕
本発明は上記目的を達成するために、プログラムを複数
の部分に分割しこの分割単位で主記憶装置とバッキング
ストアとの間でロード,アンロードを行なう、セグメン
テーション方式,ページング方式あるいはセグメンテー
ション・ページング方式などの方式を採用する仮想記憶
システムにおけるプログラム修正方法において、 前記分割単位の修正情報をファイルに登録すると共に、
該登録した修正情報で修正すべき分割単位が現在アンロ
ードされているときは該分割単位対応の記憶手段に修正
要求有りを示す情報を設定し、現在ロードされていると
きは該分割単位を前記主記憶装置から前記バッキングス
トアにアンロードした後に該分割単位対応の前記記憶手
段に修正要求有りを示す情報を設定し、 前記プログラムの分割単位の不在割込みの発生時、該分
割単位を前記バッキングストアから前記主記憶装置にロ
ードした際に、該ロードした分割単位対応の前記記憶手
段に修正要求有りを示す情報が設定されているか否かを
調べ、設定されていないときは不在状態を解除し、設定
されているときは前記ファイルに登録された該分割単位
対応の修正情報に基づいて該分割単位の内容を修正して
前記記憶手段の設定情報を修正要求無しを示す情報に変
更すると共に不在状態を解除するようにしている。
〔作用〕
システム運用中に或るプログラムの或る分割単位の内容
を修正したい場合、その分割単位の修正情報をファイル
に登録すると共に、この登録した修正情報で修正すべき
分割単位が現在アンロードされているときは、その分割
単位対応の記憶手段に修正要求有りを示す情報を設定
し、現在ロードされているときは、その分割単位を主記
憶装置からバッキングストアにアンロードした後に、そ
の分割単位対応の記憶手段に修正要求有りを示す情報を
設定する。
その後、上記修正対象となった分割単位に対するアクセ
スが発生して不在セグメント割込みなどの不在割込みが
発生すると、その分割単位はバッキングストアから主記
憶装置にロードされるが、その際、ロードした分割単位
対応の前記記憶手段に修正要求有りを示す情報が設定さ
れているか否かを調べ、設定されていないときは直ちに
不在状態を解除する。しかし、設定されているときは、
前記ファイルに登録されたその分割単位対応の修正情報
に基づいてその分割単位の内容を修正し、前記記憶手段
の設定情報を修正要求無しを示す情報に変更すると共に
不在状態を解除する。これにより、修正後の分割単位が
アクセスされることになる。
〔実施例〕
次に本発明の実施例について図面を参照して説明する。
第1図は本発明の実施例の構成を表す図である。この実
施例は、パッチ指示ステートメントの入力手段20と、パ
ッチ指示手段10と、不在セグメント割込み発生時に呼出
される不在セグメント処理手段11と、不在セグメント処
理手段11から呼出されるパッチ処理手段12と、パッチフ
ァイル40及びシステムプログラム等のプログラム50が格
納される主記憶装置30と、バッキングストアディスク装
置60とから構成される。
主記憶装置30上のプログラム50には、セグメント53と、
このセグメント53のセグメント記述子51及びセグメント
53の属性を定義したセグメントヘッダ52が図示され、バ
ッキングストアディスク装置60にはアンロードされたセ
グメント63(セグメント53に対応する)が図示されてい
る。セグメント記述子51には、セグメント53が主記憶装
置30上に存在するか否かを表示する存在表示フラグ(以
下Pフラグと称す)511があり、セグメントヘッダ52に
はパッチ要求状態フラグ(以下Mフラグと称す)521が
ある。パッチファイル40には内部パッチ形式に変換され
たパッチ41が含まれる。なお、本実施例では或るセグメ
ントがパッチ要求されているか否かを示す情報をセグメ
ントヘッダ52にMフラグ521として持たせたが、セグメ
ント記述子51やその他の記憶手段に設定するようにして
も良い。
第1図において、システム運用中に、パッチ指示ステー
トメントの入力手段20から修正対象となるプログラム,
セグメントの情報や修正イメージ等を含む公知のパッチ
指示ステートメントを入力すると、このパッチ指示ステ
ートメントはパッチ指示手段10へ渡される。
パッチ指示手段10は、このパッチ指示ステートメントを
受付けると、文法チェックを行ない、正しければ内部パ
ッチ形式に変換してパッチファイル40にパッチ41として
格納する。そして、このパッチ41の適用対象となるセグ
メント53が現に主記憶装置30上に存在すれば、バッキン
グストアディスク装置60上のセグメント63の位置にアン
ロードし、そのセグメント記述子51のPフラグ511をオ
フにし、且つセグメント53のセグメントヘッダ52におけ
るMフラグをオンにしてパッチ要求状態に設定する。ま
たパッチ41の適用対象となるセグメント53が既にアンロ
ードされていれば、セグメントヘッダ52におけるMフラ
グをオンにする処理だけを行なう。
その後、主記憶装置30上のプログラム50が実行中にセグ
メント53へアクセスすると、本実施例ではパッチ適用対
象としたセグメント53を必ずアンロード状態にしてPフ
ラグ511をオフとしている為、不在セグメント割込みが
発生する。この不在セグメント割込みの発生により、不
在セグメント処理手段11が呼出される。
不在セグメント処理手段11は、不在セグメント割込みの
原因となったセグメント63をバッキングストアディスク
装置60から主記憶装置30上のプログラム50に読出し、セ
グメント53としてロードする。次に、このセグメント53
がパッチ要求状態か否かを認識するために、セグメント
53のセグメントヘッダ52におけるMフラグ521をチェッ
クする。このMフラグ521がオンならパッチ要求状態な
のでパッチ処理手段12を呼出し、パッチ処理手段12はこ
れに応答してパッチファイル40から内部パッチ形式のパ
ッチ41を見つけ出してセグメント53にパッチ処理を行な
う。このパッチ処理が行なわれた後、不在セグメント処
理手段11は、上記Mフラグ521をオフとする。また、不
在セグメント処理手段11は、Mフラグ521のオン,オフ
にかかわらず、ロードしたセグメントについては、不在
セグメント状態を解除するためにそのセグメント識別子
におけるPフラグ511をオンにする。
以上が本実施例の概略動作であるが、以下、パッチ指示
手段10,不在セグメント処理手段11およびパッチ処理手
段12の各動作を図面を参照して説明する。
(1)先ず、パッチ指示手段10の動作を、その処理例を
示す第3図に従って説明する。
フロー100 パッチ指示手段10は起動されると、先ず現在利用可能な
パッチファイルエントリをパッチファイル40から見つけ
てそこに位置付ける。第2図はパッチファイルエントリ
の構成例を示し、内部パッチ形式のパッチが格納される
パッチ格納域aと、パッチ適用フラグが格納されるフラ
グ格納域bとから構成されている。
フロー101 パッチ指示ステートメントの入力手段20から一つのパッ
チ指示ステートメントを入力する。
フロー102 上記入力したパッチ指示ステートメントがパッチ指示ス
テートメントの入力の終了を示す終了ステートメントか
否かをチェックする。終了ステートメントであればフロ
ー110へ移行し、そうでなければフロー103へ進む。
フロー103 フロー101で入力したパッチ指示ステートメントの文法
チェックを行なう。
フロー104 フロー103の文法チェックの結果を判別し、不正ならば
フロー109へ移行し、正常であればフロー105へ進む。
フロー105 フロー104で正常と判定されたパッチ指示ステートメン
トを内部パッチ形式に変換する。
フロー106 フロー105で変換された内部パッチ形式のパッチをパッ
チファイル40中の現在利用可能なパッチファイルエント
リにおけるパッチ格納域aに格納する。
フロー107 上記パッチファイルエントリのフラグ格納域bにおける
パッチ適用フラグをオフにする。
フロー108 パッチファイル40から次に利用可能なパッチファイルエ
ントリを得て位置付け、フロー101へ戻る。
フロー109 ここでは、パッチ指示ステートメントがエラーであるこ
とをパッチ指示ステートメントの入力手段20に表示す
る。
フロー110 フロー102で終了ステートメントが判別されたとき即ち
1以上のパッチ指示ステートメントの入力完了示、今回
入力された一連のパッチ指示ステートメントに基づいて
生成されたパッチの最初のパッチファイルエントリに位
置付ける。
フロー111 今回入力された一連のパッチ指示ステートメントに基づ
いて生成されたパッチのパッチファイルエントリを全て
処理したか否かをチェックする。そして、全て処理して
いれば本手順を終了し、そうでなければフロー112へ進
む。
フロー112 現在注目中のパッチファイルエントリのパッチ格納域a
に格納されたパッチ中に予め付加されているパッチ適用
場所の指定情報から、パッチ適用対象となるセグメント
を判別する。
フロー113 フロー112で判別されたパッチ適用対象セグメントが主
記憶上に存在するか否かを判別する。存在すればフロー
114へ進み、存在しなければフロー116へ進む。
フロー114 フロー112で判別したセグメントをバッキングストアデ
ィスク装置60にアンロードする。
フロー115 フロー114でアンロードしたセグメントのセグメント記
述子51のPフラグ511をオフにする。
フロー116 フロー114でアンロードしたセグメント或いはフロー113
で既にアンロードされていると判別されたセグメントの
セグメントヘッダ52のMフラグ521をオンにする。
フロー117 次のパッチファイルエントリに位置付けてフロー111へ
戻る。
(2)次に、不在セグメント処理手段11の動作を、その
処理例を示す第4図に従って説明する。
フロー200 不在セグメント処理手段11は不在セグメント割込みの発
生により呼出されると、先ず、不在セグメントをバッキ
ングストアディスク装置60より主記憶装置30にロードす
る。
フロー201 フロー200でロードしたセグメントのセグメントヘッダ5
2におけるMフラグ521をチェックする。その結果、Mフ
ラグ521がオフならばフロー204へ移行し、オンならば当
該セグメントはパッチ適用対象セグメントであることか
らフロー202へ進む。
フロー202 パッチ処理手段12を呼出し、当該セグメントに対するパ
ッチ処理を行なわせる。
フロー203 フロー202により呼出されたパッチ処理手段12による一
連のパッチ処理が終了した時点で、当該セグメントのセ
グメントヘッダ52におけるMフラグ521をオフにする。
フロー204 フロー201でMフラグ521がオフと判別された場合、フロ
ー201でMフラグ521がオンと判別されフロー202でパッ
チ処理された場合とも、セグメント53のセグメント記述
子51のPフラグ511をオンにして不在状態を解除する。
(3)次に、パッチ処理手段12の動作を、その処理例を
示す第5図に従って説明する。
フロー301 パッチ処理手段12は不在セグメント処理手段11から呼出
されると、先ず、パッチファイル40の最初のパッチファ
イルエントリに位置付ける。
フロー302 パッチファイル40中の全てのパッチファイルエントリに
対する処理が終了したか否かをチェックする。全て処理
していれば本手順を終了し、そうでなければフロー303
へ進む。
フロー303 現在注目中のパッチファイルエントリは今回のパッチ適
用対象セグメントに対するものか否かをチェックする。
今回のパッチ適用対象セグメントに対するものでなけれ
ばファイル307へ移行し、そうであればファイル304へ進
む。
フロー304 フロー303でパッチ適用対象セグメントに対するものと
判別されたパッチファイルエントリのパッチ適用フラグ
がオンか否かをチェックする。パッチ適用フラグがオン
であるなら即ち処理済であるならフロー307へ移行し、
オフであればフロー305へ進む。
フロー305 該当パッチファイルエントリ中のパッチに基づき、該当
セグメントにパッチ処理を行なう。
フロー306 フロー305で処理されたパッチファイルエントリのパッ
チ適用フラグをオンにする。
フロー307 次のパッチファイルエントリに位置付けてフロー302へ
戻る。
以上本発明の実施例について説明したが、本発明は以上
の実施例に限定されずその他各種の付加変更が可能であ
る。例えば、上記実施例はセグメンテーション方式の仮
想記憶システムに本発明を適用したが、ページング方式
や、セグメンテーション方式とページング方式とを組合
わせたセグメンテーション・ページング方式に対しても
適用可能である。
〔発明の効果〕
以上説明したように、本発明は、不在セグメント割込み
などの不在割込みを契機として、ロードされたセグメン
トなどの分割単位が修正要求されているか否かを判断
し、修正要求されているときは、予めファイルに登録さ
れた修正情報に基づいて修正を行なうものであり、シス
テム運用中にシステムプログラム等の修正を行なうこと
が可能となる。また、本発明によれば、既に主記憶装置
にロードされている分割単位に対しても修正が可能とな
り、更にそのようなロード中の分割単位を積極的に一旦
アンロードしてその分割単位が再ロードされる機会を積
極的に作るようにしたので、迅速な修正が可能となる。
更に、分割単位の内容を修正した場合には該当する記憶
手段の設定情報を修正要求無しを示す情報に変更するの
で、同一の分割単位が何度もロード,アンロードを繰り
返しても、最初のアンロード時にのみ修正処理を実施す
ることができる。従って、本発明を、例えば24時間無停
止で連続運転されるようなコンピュータシステムに適用
すれば非常に有効である。
【図面の簡単な説明】
第1図は本発明の実施例の構成図、 第2図はパッチファイルエントリの構成例を示す図、 第3図はパッチ指示手段10の処理例の流れ図、 第4図は不在セグメント処理手段11の処理例の流れ図お
よび、 第5図はパッチ処理手段12の処理例の流れ図である。 図において、10……パッチ指示手段、11……不在セグメ
ント処理手段、12……パッチ処理手段、20……パッチ指
示ステートメントの入力手段、30……主記憶装置、40…
…パッチファイル、41……内部形式に変換されたパッ
チ、50……プログラム、51……セグメント記述子、52…
…セグメントヘッダ、53……セグメント、60……バッキ
ングストアディスク装置、63……バッキングストアにア
ンロードされたセグメント、511……存在表示フラグ
(Pフラグ)、521……パッチ要求状態フラグ(Mフラ
グ)。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】プログラムを複数の部分に分割し該分割単
    位で主記憶装置とバッキングストアとの間でロード,ア
    ンロードを行なう仮想記憶システムにおけるプログラム
    修正方法において、 前記分割単位の修正情報をファイルに登録すると共に、
    該登録した修正情報で修正すべき分割単位が現在アンロ
    ードされているときは該分割単位対応の記憶手段に修正
    要求有りを示す情報を設定し、現在ロードされていると
    きは該分割単位を前記主記憶装置から前記バッキングス
    トアにアンロードした後に該分割単位対応の前記記憶手
    段に修正要求有りを示す情報を設定し、 前記プログラムの分割単位の不在割込みの発生時、該分
    割単位を前記バッキングストアから前記主記憶装置にロ
    ードした際に、該ロードした分割単位対応の前記記憶手
    段に修正要求有りを示す情報が設定されているか否かを
    調べ、設定されていないときは不在状態を解除し、設定
    されているときは前記ファイルに登録された該分割単位
    対応の修正情報に基づいて該分割単位の内容を修正して
    前記記憶手段の設定情報を修正要求無しを示す情報に変
    更すると共に不在状態を解除することを特徴とするプロ
    グラム修正方法。
JP62061863A 1987-03-17 1987-03-17 プログラム修正方法 Expired - Fee Related JPH07111681B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62061863A JPH07111681B2 (ja) 1987-03-17 1987-03-17 プログラム修正方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62061863A JPH07111681B2 (ja) 1987-03-17 1987-03-17 プログラム修正方法

Publications (2)

Publication Number Publication Date
JPS63228224A JPS63228224A (ja) 1988-09-22
JPH07111681B2 true JPH07111681B2 (ja) 1995-11-29

Family

ID=13183380

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62061863A Expired - Fee Related JPH07111681B2 (ja) 1987-03-17 1987-03-17 プログラム修正方法

Country Status (1)

Country Link
JP (1) JPH07111681B2 (ja)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5972542A (ja) * 1982-10-20 1984-04-24 Hitachi Ltd オブジエクトプログラム修正方式

Also Published As

Publication number Publication date
JPS63228224A (ja) 1988-09-22

Similar Documents

Publication Publication Date Title
US5701493A (en) Exception handling method and apparatus in data processing systems
JP2772103B2 (ja) 計算機システム立上げ方式
US6529985B1 (en) Selective interception of system calls
EP0464615A2 (en) Microcomputer equipped with DMA controller
JP3230262B2 (ja) 電子装置及びその固定情報修正方法
JP2539913B2 (ja) デ―タ処理システム
JP2681929B2 (ja) プログラム起動方式
JP2000242484A (ja) 制御プログラムの変更方法
US5953529A (en) Data processor with a debug device and a stack area control unit and corresponding data processing method
JPH0810437B2 (ja) 仮想計算機システムのゲスト実行制御方式
JP4275451B2 (ja) 不正メモリアクセス検知方法及びそのプログラム
JPH07111681B2 (ja) プログラム修正方法
JPH0731617B2 (ja) プログラム暴走検知方法
JP3425724B2 (ja) システム無中断プログラム切替え方法
JP2001202262A (ja) データ格納方法
US7080205B2 (en) Arrangement and method for reducing the processing time of a data processing device
JP2582294B2 (ja) モジュール間結合実行制御方式
JPH05165624A (ja) 常駐モジュールの修正方式
JPH05257807A (ja) キャッシュメモリ制御装置
JPH1040094A (ja) ファームウエアのプログラム制御装置
KR100436003B1 (ko) 디바이스드라이버적재방법
JPS5835648A (ja) プログラム実行制御方式
JP2718676B2 (ja) 仮想記憶ダンプ処理方法
JPH0769892B2 (ja) プログラムロ−ド方式
JPS60214046A (ja) 異常終了処理制御方式

Legal Events

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