JPH0528053A - システム運転中のプログラムのメモリチエツク方法 - Google Patents

システム運転中のプログラムのメモリチエツク方法

Info

Publication number
JPH0528053A
JPH0528053A JP3207629A JP20762991A JPH0528053A JP H0528053 A JPH0528053 A JP H0528053A JP 3207629 A JP3207629 A JP 3207629A JP 20762991 A JP20762991 A JP 20762991A JP H0528053 A JPH0528053 A JP H0528053A
Authority
JP
Japan
Prior art keywords
program
check
memory
code
load module
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
JP3207629A
Other languages
English (en)
Inventor
Yoshihiro Satou
賀浩 佐藤
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP3207629A priority Critical patent/JPH0528053A/ja
Publication of JPH0528053A publication Critical patent/JPH0528053A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Detection And Correction Of Errors (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【目的】 ハ−ド的なメモリチェック機能やメモリプロ
テクト機能がないシステムで、メモリの破壊を早期に発
見し、無用な誤動作を防ぎ、破壊情報を保存し異常原因
の解析を容易にすることを目的とする。 【構成】 本発明によるメモリチェック方法は、ロ−ド
モジュ−ル・プログラムが格納されているFD1と、ラ
イブラリ−等があるディスク2と、ロ−ドモジュ−ル・
ライブラリ−3と、チェック対象のAプログラム4,9
と、Bプログラム5,10等と、チェックプログラム7,
8と、ロ−ダプログラム6,11と、主メモリ12と、
CPU13で構成される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ソフトウェアの動作中
におけるロ−ドモジュ−ル・プログラム(以下プログラ
ムと書く)のコ−ド部の破壊を早期に検出するプログラ
ムのメモリチェック方法に関するものである。なお、こ
こで適用されるシステムは、システム運転中に、ハ−ド
的なメモリチェック機能、メモリプロテクト機能がない
システムで、対象となるプログラムはコ−ド部とデ−タ
部が分離されているものとする。
【0002】
【従来技術】従来ハ−ド的なメモリプロテクト機能を持
たないシステムでは、動作中にプログラムのコ−ド部が
破壊された場合、その時点では検出されずシステムダウ
ン後、主メモリやディスクの情報を解析して検出される
ものであった。
【0003】
【発明が解決しようとする課題】しかしながら従来技術
では、プログラムのコ−ド部が破壊された時点では異常
信号が検出されず誤動作の検出が遅れ、システムの運用
に支障をきたす。又コ−ド部が破壊されたままのプログ
ラムが実行され、更に他のメモリ−を破壊する場合があ
る。この場合は、システムダウン後に主メモリやディス
クの情報を解析しても最初の異常原因の解明が不可能に
なる、という問題点があった。
【0004】本発明は上述の点に鑑みてなされたもの
で、 上記問題点の影響を最小限に留めるように異常を早期
検出し、破壊された後の無用の誤動作を防ぎ、シス
テムダウン後の異常原因の解析を容易にする、為のシス
テム運転中のプログラムのメモリチェック方法を提供す
ることを目的とする。
【0005】
【課題を解決するための手段】上記課題を解決するため
本発明は、図1に示すチェックプログラムを設けた。ま
ずチェック対象となるAプログラムはフロッピーディス
クFD1からロ−ダにより主メモリを通してロ−ドモジ
ュ−ル・ライブラリ−3に読み込まれる。この時にロ−
ダは、プログラムのコ−ド部の総和を計算しチェックコ
−ドとしてコ−ド部の後部に保存する。図2にその動作
をフロ−チャ−トに示す。その他のプログラムも同様に
ロ−ドモジュ−ル・ライブラリ−3に読み込まれる。ロ
−ドモジュ−ル・ライブラリ−は主メモリ12にあって
もよい。
【0006】プログラムがタスクとして実行されると
き、チェック対象となるプログラムは主メモリ12に呼
び出されて実行される。実行対象プログラムが待ち状態
になった時、CPUが他に実行するタスクがないとき、
チェックプログラムを主メモリに呼び出しタスクとして
実行する。図3にその動作のフロ−チャ−トを示す。こ
の時チェック対象となるプログラムのチェックコ−ドを
計算し前記保存されているチェックコ−ドと比較し、も
しその値が等しくなければ、そのチェック対象プログラ
ムは破壊されたと判断し、システムを停止し破壊された
アドレスとかコ−ド等の異常情報を保存する。以上の作
業をすべてのチェック対象のプログラムに対して行う。
チェックプログラム自身もチェック対象となる。
【0007】
【作用】本発明によれば、チェック対象プログラムは、
最初にライブラリ−に読み込まれる時にチェックコ−ド
が計算され正しいチェックコ−ドとして保存される。こ
のプログラムがタスクとして実行中の待ち状態にされた
時、再度チェックコ−ドが計算されて両チェックコ−ド
が比較されるので、この期間にプログラムが破壊された
か否かが分かる。
【0008】このチェックプログラムは、優先順位が最
も低いタスクとして実行されるのでシステムの性能には
悪影響を与えない。破壊される原因としてハ−ド的な故
障やソフト的には自分自身のタスクの暴走や他のタスク
の暴走で壊される場合がある。例えば、図1のAプログ
ラム9が自分自身を壊す場合もあり、Bプログラム10
により壊される場合もあるが、何れの原因で破壊されて
もチェックコ−ドで検出可能である。
【0009】
【実施例】以下本発明の一実施例を図面に基づいて詳細
に説明する。図1は本発明によるチェック時のシステム
の状態を示す図、図2はチェック対象プログラムをライ
ブラリに読み込むときのチェックコ−ドを計算し付加す
るフロ−チャ−ト、図3はチェックプログラムのフロ−
チャ−トである。
【0010】プログラムはフロッピーディスクFD1か
ら主メモリ12を通してディスク2のロ−ドモジュ−ル
・ライブラリ−3に読み込まれる。フロッピーディスク
FD1は、ディスク2上であっても他の外部メモリであ
ってもよく、ロ−ドモジュ−ル・ライブラリ3は主メモ
リ12にあってもよい。ロ−ドモジュ−ル・ライブラリ
−3にはチェック対象となるAプログラム4、Bプログ
ラム5、ロ−ダプログラム6、チェックプログラム7等
の多くのプログラムが格納されている。
【0011】これらのプログラムは、コ−ド部とデ−タ
部が分離されコ−ド部の後部にチェックコ−ドが格納さ
れる構造になっている。これらのプログラムが実行され
るときは、主メモリ12上に必要なエリヤ8,9,1
0,11が確保され、ディスク2のロ−ドモジュ−ル・
ライブラリ−3からロ−ダプログラム11によって主メ
モリ12上に呼び出され、必要な環境条件が準備されて
CPU13によってタスクとして実行される。各タスク
は、優先順位の高い順に実行される。チェックプログラ
ムを実行するタスクは、優先順位を最低に設定してお
く。こうすることにより他のタスクの実行を邪魔するこ
となくチェックすることが可能となる。
【0012】本発明によるメモリチェックは、上記に詳
述した状態で、チェックプログラム7で行われ、最初の
チェックコ−ドの付加は、ロ−ダプログラム6によって
行われる。図2に基づいてチェックコ−ド付加の動作を
説明する。プログラムをロ−ドモジュ−ル・ライブラリ
−に読み込む際、コ−ド部の先頭アドレスを取り出す
(ステップST1)。次にコ−ド部の最終アドレスを取
り出す(ステップST2)。コ−ド部の先頭から最終ま
でを加算し(ステップST3)チェックコ−ドとして所
定の場所に格納する(ステップST4)。
【0013】次にチェックプログラムの動作を図3に基
づいて説明する。プログラムインデックスを初期化する
(ステップST11)。同インデックスで指定されたチ
ェック対象のプログラムのコ−ド部の先頭アドレスと最
終アドレスを取り出す(ステップST12)。図2と同
じ方法でチェックコ−ドを計算し(ステップST1
3)、保存されているチェックコ−ドと比較する(ステ
ップST14)。もし同じであれば、今のプログラムが
最終プロッグラムかどうかチェックし(ステップST1
5)、もし最終プログラムでなければインデックスを次
に進め(ステップ16)、最終プログラムであればステ
ップST1より繰り返す。ステップST4でチェックコ
−ドが等しくなければ異常と見做し、破壊されたアドレ
スやコ−ドなどの異常情報を保存してシステムを停止す
る(ステップST17)。
【0014】
【発明の効果】以上、詳細に説明したように本発明によ
れば、下記のような効果が期待できる。 プログラムのコ−ド部の破壊を早期に検出できる。 破壊されたプログラムが実行されることによる誤動作
を防ぐことができる。 破壊されたアドレスとかコ−ド等の破壊情報が保存さ
れ、無用な誤動作を最小限に抑えるためにシステム停止
後の原因解析が容易になる。
【図面の簡単な説明】
【図1】本発明によるメモリチェック時のシステムの状
態を示す図。
【図2】本発明に使用するチェックコ−ド計算のフロ−
チャ−ト。
【図3】本発明によるメモリチェックプログラムのフロ
−チャ−ト。
【符号の説明】
1 フロッピーディスク 2 ディスク 3 ロ−ドモジュ−ル・ライブラリ− 4 Aプログラム 5 Bプログラム 6 ローダプログラム 7 チェックプログラム 8 チェックプログラム 9 Aプログラム 10 Bプログラム 11 ローダ 12 主メモリ 13 CPU
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.5 識別記号 庁内整理番号 FI 技術表示箇所 G06F 11/30 320 C 8725−5B

Claims (1)

  1. 【特許請求の範囲】 【請求項1】 システム運転中に、ハ−ド的なメモリチ
    ェック機能やメモリプロテクト機能がない計算機システ
    ムのメモリチェックの方法において、 ロ−ドモジュ−ル・プログラムをライブラリ−に読み込
    むとき、ロ−ドモジュ−ル・プログラムのコ−ド部のチ
    ェックコ−ドを計算し保存しておき、システム運転中
    に、CPUがタスク処理をする空き時間を利用して、対
    象とするタスクのロ−ドモジュ−ル・プログラムのコ−
    ド部のチェックコ−ドを計算し、その結果を前記保存さ
    れているチェックコ−ドと比較し、もし値が異なればロ
    −ドモジュ−ル・プログラムが破壊されたと判断して、
    システムを停止させ、不必要な誤動作を防ぎ、異常情報
    を保存し障害解析を容易にさせることを特徴とするメモ
    リチェック方法。
JP3207629A 1991-07-24 1991-07-24 システム運転中のプログラムのメモリチエツク方法 Pending JPH0528053A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3207629A JPH0528053A (ja) 1991-07-24 1991-07-24 システム運転中のプログラムのメモリチエツク方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3207629A JPH0528053A (ja) 1991-07-24 1991-07-24 システム運転中のプログラムのメモリチエツク方法

Publications (1)

Publication Number Publication Date
JPH0528053A true JPH0528053A (ja) 1993-02-05

Family

ID=16542963

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3207629A Pending JPH0528053A (ja) 1991-07-24 1991-07-24 システム運転中のプログラムのメモリチエツク方法

Country Status (1)

Country Link
JP (1) JPH0528053A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100908961B1 (ko) * 2004-10-04 2009-07-22 야마하 가부시키가이샤 리드 프레임 및 그 반도체 패키지
CN110222501A (zh) * 2019-05-31 2019-09-10 河南思维轨道交通技术研究院有限公司 一种运行时代码的检查方法、存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100908961B1 (ko) * 2004-10-04 2009-07-22 야마하 가부시키가이샤 리드 프레임 및 그 반도체 패키지
CN110222501A (zh) * 2019-05-31 2019-09-10 河南思维轨道交通技术研究院有限公司 一种运行时代码的检查方法、存储介质

Similar Documents

Publication Publication Date Title
US10460099B2 (en) System and method of detecting malicious code in files
US5511184A (en) Method and apparatus for protecting a computer system from computer viruses
US5367682A (en) Data processing virus protection circuitry including a permanent memory for storing a redundant partition table
US8943592B1 (en) Methods of detection of software exploitation
US6880113B2 (en) Conditional hardware scan dump data capture
US20030070115A1 (en) Logging and retrieving pre-boot error information
US9141464B2 (en) Computing device and method for processing system events of computing device
US8972794B2 (en) Method and apparatus for diagnostic recording using transactional memory
US20090013167A1 (en) Computer device, method for booting the same, and booting module for the same
KR101249693B1 (ko) 서브루틴 복귀 메카니즘 선택
US6725368B1 (en) System for executing a post having primary and secondary subsets, wherein the secondary subset is executed subsequently to the primary subset in the background setting
US20080201618A1 (en) Method for Running a Computer Program on a Computer System
WO2026001164A1 (zh) 堆叠文件系统、系统管理方法、控制器、芯片设备和车辆
JP2008513899A (ja) コンピュータシステム上でコンピュータプログラムを処理する方法
US20060031669A1 (en) Boot method and system
KR20250070996A (ko) 무한 리셋 복구 방법 및 그 시스템
JPH09319574A (ja) コンピュータウィルスチェックシステム
EP3293660A1 (en) System and method of detecting malicious code in files
JP2809986B2 (ja) 計算機システム及びプログラムバグ回避方法
JPS6118045A (ja) プログラムの暴走検出方式
JP3185780B2 (ja) システム監視装置及びその方法
EP0655686B1 (en) Retry control method and device for control processor
JP3169879B2 (ja) マイクロプロセッサ暴走検出方式
JPH09146789A (ja) エミュレータ
KR20190108712A (ko) 비휘발성 주기억장치 환경에서 에러 복구 방법 및 그 시스템