JPS6159544A - マイクロコンピユ−タ用保守プログラム結合方式 - Google Patents

マイクロコンピユ−タ用保守プログラム結合方式

Info

Publication number
JPS6159544A
JPS6159544A JP59180526A JP18052684A JPS6159544A JP S6159544 A JPS6159544 A JP S6159544A JP 59180526 A JP59180526 A JP 59180526A JP 18052684 A JP18052684 A JP 18052684A JP S6159544 A JPS6159544 A JP S6159544A
Authority
JP
Japan
Prior art keywords
program
maintenance
maintained
maintenance program
instruction
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.)
Pending
Application number
JP59180526A
Other languages
English (en)
Inventor
Katsuaki Tanioka
谷岡 克昭
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP59180526A priority Critical patent/JPS6159544A/ja
Publication of JPS6159544A publication Critical patent/JPS6159544A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、マイクロコンピュータ端末システムのソフト
ウェア(本明j(049’においては被保守プログラム
と呼ぶ)を保守するための保守プログラムを被保守プロ
グラムに容易に結合するのに好適なマイクロコンピュー
タ用保守プログラム結合方式〔発明の背景〕 従来、マイクロコンピュータ端末システムのソフトウェ
アのデバッグ、事故調査等においては、デバッグルーチ
ン、事故対策パッチルーチン等を有する保守プログラム
を活用している。しかし。
デバッグ、事故等はそれらが発生して初めて対処する性
質のものであり、予めデバッグ、事故等の発生箇所を特
定し得る性質のものではない。すなわち、保守プログラ
ムは、被保守プログラムへの結合位置に関し任意性を有
する。この保守プログラムの任意性のため、保守プログ
ラムを被保守プログラムに結合するためのジョブ(例え
ばCALL文)を、予め保守プログラムに組込んでおく
ことができず、特殊な保守プログラム結合方式が必要と
なる。
従来、保守プログラム結合方式の例としては。
例えば、特開昭55−20560号公報記載の「マイク
ロコンピュータ調整用ツール」がある。
上記発明は、被保守プログラムを実行中に、該被保守プ
ログラムのアドレスと外部から設定したアドレスが一致
した時に、CPUに割込み要求を発し、割込み処理プロ
グラム(保守プログラム)を実行することにより、保守
プログラムを被保守プログラムに結合する方式である。
しかし、この方式は、新たに特別なハード8M桶を設け
る必要がある。この特別なハード機構は、ソフトウェア
開発時にのみ必要とされるものであり、常時マイクロコ
ンピュータに搭載しておくことは不経済である。
〔発明の目的〕
本発明の目的は、上記のような従来技術の欠点をm消し
、特別なハード機構を設けることなく保守プログラムを
被保守プログラムの任意位置に結合し得るマイクロコン
ピュータ用保守プログラム結合方式を提供することにあ
る。
〔発明の概要〕
上記目的を達成するため、本発明によるマイクロコンピ
ュータ用保守プログラム結合方式は、数値入力可能な入
力装置と保守プログラムを有するマイクロコンピュータ
において、前記入力装置から入力された被保守プログラ
ムのアドレス、および当該アドレスに対応する前記被保
守プログラムの命令を記憶する領域を有し、前記入力装
置より前記保守プログラムの結合要求が入力された場合
、前記アドレスに基づいて前記命令を前記領域に退避し
代わりに割込み命令を埋込み、結合した前記保守プログ
ラムの実行が終了し当該保守プログラムから前記被保守
プログラムに制御が移行する際、退避した前記命令を実
行した後、前記被保守プログラムの制御に戻るよう植成
した保守プログラムモニタを設けたことに特徴がある。
〔発明の実施例〕
以下、本発明の構成を一実施例により詳細に説明する。
第1図は1本発明の一実施例によるマイクロコンピュー
タ用保守プログラム結合方式のタスク横進を示す図であ
る。
第1図において、1はOSタスクスケジューラ。
2は被保守プログラム、3は保守プログラムモニタであ
る。
被保守プログラム2.および保守プログラムモニタ3は
、OSタスクスケジューラ1の管理の下にCPU時間が
割当てられ、実行される。保守プログラムモニタ3は、
被保守プログラム2と保守プログラムを結合するための
インタフェースの役割を果たす。
第2図は、本発明の一実施例によるマイクロコンピュー
タ用保守プログラム結合方式の構成図である。
第2図中、2,3はそれぞれ第1図に示した被保守プロ
グラム、保守プログラムモニタであり、4はメモリ、5
は入力装置、13は外部記憶装置上の保守プログラムフ
ァイルである。
保守プログラムモニタ3は次のように構成されている。
すなわち、どの保守プログラムを結合すべきかを指示す
る保守プログラム定義コマンドaに基づいて実行される
保守プログラム定義ルーチン6と。
被保守プログラム2のどの命令の部分に保守プログラム
を結合するのかを指示する被保守プログラム定義コマン
ドbに基づいて実行される被保守プログラム定義ルーチ
ン7と、起動コマンドCにより起動され、割込みによる
被保守プログラム2の破壊を回避するため、被保守プロ
グラム2の命令を後述する被呆守プログラム定義テーブ
ル11の命令退避エリアに退避させ、上記命令の代わり
に割込み命令を埋込む保守プログラム結合準備ルーチン
8を有する。また、解除コマンドdに基づいて被保守プ
ログラム2に対する保守プログラムの結合を解除する保
守プログラム解除ルーチン9と被保守プログラム2の実
行中に割込みが発生した場合、その時点のレジスタの内
容を退避させるための保守プログラム結合ルーチン10
と、被保守プログラム2の退避エリアを有する被保守プ
ログラム定義テーブル11と、保守プログラムファイル
13から読出された結合すべき保守プログラムを格納す
る保守プログラムロード領域12を有する。
次に、第3図および第4図に基づいて保守プログラムモ
ニタ3の動作を説明する。
保守プログラムモニタ3の動作は大きく2つに分けられ
る。
1つは、保守プログラム結合のための要求、すなわち、
どの保守プログラムを結合させるのかを定める保守プロ
グラム定義、被保守プログラムのどの命令を実行すると
ころで保守プログラムを結合するのかを定める被保守プ
ログラム定義、およびその要求に基づき被保守プログラ
ム上に割込み命令を埋込む動作と、逆に割込み命令の埋
込みによる破壊を回避するために退避した命令を被保守
プログラムに回復する動作である。
他の1つは、保守プログラムが結合された状態で実際に
被保守プログラム2を実行している際中に、被保守プロ
グラム2中に埋込まれた割込み命令により保守プログラ
ムに制御が移行し、また逆に制御が被保守プログラム2
に戻る部分の動作である。
前者の動作の流れを第3図に、後者の動作説明図を第4
図に示す。
以下、第3図について説明する。
まず、入力装置5からのコマンド、各種情報の入力を待
つ(301)。通常、コマンド、各種情報は数値により
入力される。入力されたコマンドを解析し、もしコマン
ドが起動コマンドCであれば、保守プログラムまたは被
保守プログラムが定義されているか否かを判定する。こ
の時、保守プログラムまたは被保守プログラムのいずれ
か一方でも未定義の場合は、未定義のプログラムが定義
されるのを待つ(303,306,304,305)。
保守プログラムの被保守プログラム2への結合は結合対
象の保守プログラムとその結合相手(被保守プログラム
2)が特定されて初めて可能となるからである。
保守プログラムの定義は次の要領で行われる。
すなわち、保守プログラム定義ルーチン6により、保守
プログラム定義コマンドaに続いて入力された保守プロ
グラム番号を記憶する(304,315゜316)。
被保守プログラムの定義は次の要領で行われる。
すなわち、被保守プログラム2上の退避すべき命令を定
義するため、被保守プログラム定義ルーチン7により、
被保守プログラム定義コマンドbに続いて入力された保
守プログラムと被保守プログラムのアドレスを照合する
ためのアドレスID、被保守プログラムの保守すべき位
置を示すアドレス、および該アドレスに対応する命令の
命令長が被保守プログラム定義テーブル11に記憶され
る(305,317,318)。被保守プログラム2上
に、保守すべき箇所が複数存在する場合は、上記被保守
プログラム定義処理を繰返す(319)。
上記命令長の記憶により、被保守プログラム定義テーブ
ル11の中に、退避すべき被保守プログラム2の命令を
充分格納し得る命令退避エリアが形成される。
保守プログラムと被保守プログラムの定義が成された状
態で起動コマンドCが入力された場合は。
保守プログラムの結合処理を行う。すなわち、保守プロ
グラム結合準備ルーチン8により、外部記憶装置上の保
守プログラムファイル13から該当する番号の保守プロ
グラムを保守プログラムロード領域12ヘロードする(
307)。さらに、保守プログラム結合準備ルーチン8
は次のような処理を実行する。すなわち、被保守プログ
ラム定義テーブル11中の情報に基づいて命令退避エリ
アに被保守プログラム2の要求アドレスの命令を退避す
る(308)。要求アドレスの命令を退避した後、被保
守プログラム定義テーブル11の内容に従い、被保守プ
ログラム2中に割込命令およびアドレスIDを埋込む(
309)。この要求アドレスの命令の退避と割込み命令
埋込みを要求数分繰返す(310)。この際、通フ;V
、割込み命令は1〜2バイトであるので埋込んだ箇所の
命令長に余りが生じる場合がある。この場合は、N0P
(No−○ρeraしion )命令を補充しておく。
以上の処理により、保守プログラムの結合準備処理が完
了する。
一方、保守プログラムの解除は次の要領で行う。
すなわち、入力装置5からのコマンドの入力を待ち(3
11)、解除コマンドdが入力された場合は、保守プロ
グラム解除ルーチン9により解除処理を行う(312)
。その後、保守プログラム結合ルーチン10により、被
保守プログラム定義テーブル11に退避した被保守プロ
グラム2の命令を元のアドレス位置に戻す(313)。
上記保守プログラムの解除処理を保守プログラム結合要
求の全てに対し実行する(314)。
次に第4図について説明スル。
第4図(a)は保守プログラム定義テーブル11の内容
を示した図である。保守プログラム定義テーブル11は
、アドレスID、アドレス、命令長および命令退避エリ
アからなる″ことは前述した通りである。
被保守プログラム2の実行中に、保守プログラム結合準
備ルーチン8により埋込まれた割込み命令のところへプ
ログラム処理がくると、割込みが発生し、保守プログラ
ム結合ルーチン10が動作する。保守プログラム結合ル
ーチン10は、その時点のレジスタの内容を退避した後
、保守プログラムの内容を実行する。
第4図(b)は、保守プログラムに情報を蓄積する場合
の概念図である。14は保守プログラム、15は保守プ
ログラム14上の情報取得エリアである。保守プログラ
ム14に情報を蓄積する場合、割込み命令の直後に埋込
まれたアドレスIDを付加して保守プログラム14の情
報取得エリア15に取得結果を編集することにより、被
保守プログラム2のどの位置で取得した情報かを識別す
ることができる。
解除コマンドdが入力されると、保守プログラム結合ル
ーチン10は、退避していたレジスタの内容を回復し、
被保守プログラム定義テーブル11の命令退避エリアの
命令を実行して被保守プログラム2のアドレスIDの直
後に制御を戻す。
このように、入力装置5からの結合要求に基づいて、保
守プログラムを結合するための割込み命令を被保守プロ
グラム2に埋込み、この埋込みにより破壊される恐れの
ある被保守プログラム2の命令を被保守プログラム定義
テーブル11に退避しておき、保守プログラム実行後こ
れを回復して実行することにより、被保守プログラム2
の開発時に予め保守プログラムを結合するための処理内
容を組込んでおくことなく、被保守プログラム2の任意
位置に保守プログラムを容易に結合することができ、そ
の応用範囲は広い。例えば、デバッグ時に、開発した被
保守プログラム2の任意のアドレスを通過する毎の変数
値のトレースプログラム、システム性能評価情報の取得
プログラムの作成、パッチルーチンの確認等、保守プロ
グラムの種類も業務固有のものから汎用的なものまで多
様に開発可能である。しかも、特別なハード機構を使用
することなく保守プログラムを被保守プログラム2の任
意位置に結合することができる。
〔発明の効果〕
以上説明したように、本発明のマイクロコンピュータ用
保守プログラム結合方式によれば、特別なハード機構を
設けることなく保守プログラムを被保守プログラムの任
意位置に結合することが可能となる。
【図面の簡単な説明】
第1図は本発明の一実施例によるマイクロコンピュータ
用保守プログラム結合方式のタスク購造を示す図、第2
図は本発明の一実施例によるマイクロコンピュータ用保
守プログラム結合方式の構成図、第3図は第2図におけ
る保守プログラムモニタの動作を示すフローチャート、
第4図は第2図における被保守プログラム定義テーブル
を用いた保守プログラムの結合時の動作を説明するため
の図である。 2:被保守プログラム、3:保守プログラムモニタ、4
ニメモリ、5:入力iW[,6:保守プログラム定義ル
ーチン、7:被保守プログラム定義ルーチン、8:保守
プログラム結合準備ルーチン、9;保守プログラム解除
ルーチン、10:保守プログラム結合ルーチン、11:
被保守プログラム定義テーブル、12:保守プログラム
ロード領域、13:保守プログラムファイル。 第1図

Claims (1)

    【特許請求の範囲】
  1. (1)数値入力可能な入力装置と保守プログラムを有す
    るマイクロコンピュータにおいて、前記入力装置から入
    力された被保守プログラムのアドレス、および当該アド
    レスに対応する前記被保守プログラムの命令を記憶する
    領域を有し、前記入力装置より前記保守プログラムの結
    合要求が入力された場合、前記アドレスに基づいて前記
    命令を前記領域に退避し代わりに割込み命令を埋込み、
    結合した前記保守プログラムの実行が終了し、当該保守
    プログラムから前記被保守プログラムに制御が移行する
    際、退避した前記命令を実行した後、前記被保守プログ
    ラムの制御に戻るよう構成した保守プログラムモニタを
    設けたことを特徴とするマイクロコンピュータ用保守プ
    ログラム結合方式。
JP59180526A 1984-08-31 1984-08-31 マイクロコンピユ−タ用保守プログラム結合方式 Pending JPS6159544A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59180526A JPS6159544A (ja) 1984-08-31 1984-08-31 マイクロコンピユ−タ用保守プログラム結合方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59180526A JPS6159544A (ja) 1984-08-31 1984-08-31 マイクロコンピユ−タ用保守プログラム結合方式

Publications (1)

Publication Number Publication Date
JPS6159544A true JPS6159544A (ja) 1986-03-27

Family

ID=16084803

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59180526A Pending JPS6159544A (ja) 1984-08-31 1984-08-31 マイクロコンピユ−タ用保守プログラム結合方式

Country Status (1)

Country Link
JP (1) JPS6159544A (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5750058A (en) * 1980-09-10 1982-03-24 Usac Electronics Ind Co Ltd Debugging method by instruction exchange
JPS584461A (ja) * 1981-06-30 1983-01-11 Usac Electronics Ind Co Ltd プログラム・デバツク制御方式
JPS5854456A (ja) * 1981-09-28 1983-03-31 Fujitsu Ltd 被デバツグ・プログラム・デバツグ制御方式
JPS59103158A (ja) * 1982-12-03 1984-06-14 Fujitsu Ltd デイジタル信号処理プログラムデバツグ方式

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5750058A (en) * 1980-09-10 1982-03-24 Usac Electronics Ind Co Ltd Debugging method by instruction exchange
JPS584461A (ja) * 1981-06-30 1983-01-11 Usac Electronics Ind Co Ltd プログラム・デバツク制御方式
JPS5854456A (ja) * 1981-09-28 1983-03-31 Fujitsu Ltd 被デバツグ・プログラム・デバツグ制御方式
JPS59103158A (ja) * 1982-12-03 1984-06-14 Fujitsu Ltd デイジタル信号処理プログラムデバツグ方式

Similar Documents

Publication Publication Date Title
US6308318B2 (en) Method and apparatus for handling asynchronous exceptions in a dynamic translation system
US4675814A (en) Method of switching operating systems for a data processing system
US5805892A (en) Method of and apparatus for debugging multitask programs
US8271769B2 (en) Dynamic adaptation of a configuration to a system environment
US5363502A (en) Hot stand-by method and computer system for implementing hot stand-by method
JPH03229352A (ja) プログラム変更方法
JPS6159544A (ja) マイクロコンピユ−タ用保守プログラム結合方式
US20020152424A1 (en) Computer system reinitiation method
JP2856152B2 (ja) カーネルデバッガにおけるソフトウェアブレークポイント管理方式
JP5316148B2 (ja) 情報処理装置およびデータ修復方法
JPH07306800A (ja) デバッグ方式
JP2002132521A (ja) プログラムローディング装置及びプログラムローディング方法
JPH10187480A (ja) エミュレータ
JPS61180344A (ja) 高級言語のステツプ実行システム
JP2683274B2 (ja) 関数トレース出力方式
JP2822728B2 (ja) コンピュータシステム
JPS62145446A (ja) 領域破壊検出方式
JPH0319574B2 (ja)
JPS6353650A (ja) 計算機
JPH07334377A (ja) 情報処理装置
JPH03191421A (ja) ディスク装置を備えたコンピュータシステム
JPH0997182A (ja) プログラム変換装置およびデバッグ装置
JPH04147340A (ja) データ管理呼出方式
KR19980047755A (ko) 사건 이력을 이용한 병행 chill 프로그램 재실행 방법
JPH01295337A (ja) モニタルーチン制御移行方式