JPH0962502A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPH0962502A
JPH0962502A JP21317495A JP21317495A JPH0962502A JP H0962502 A JPH0962502 A JP H0962502A JP 21317495 A JP21317495 A JP 21317495A JP 21317495 A JP21317495 A JP 21317495A JP H0962502 A JPH0962502 A JP H0962502A
Authority
JP
Japan
Prior art keywords
program
information processing
memory
function
calling address
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
JP21317495A
Other languages
English (en)
Inventor
Takuo Oguchi
琢夫 小口
Yasuhiro Shima
康弘 嶋
Kenji Saito
賢爾 斉藤
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 Software Engineering Co Ltd
Hitachi Ltd
Original Assignee
Hitachi Software Engineering Co Ltd
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 Software Engineering Co Ltd, Hitachi Ltd filed Critical Hitachi Software Engineering Co Ltd
Priority to JP21317495A priority Critical patent/JPH0962502A/ja
Publication of JPH0962502A publication Critical patent/JPH0962502A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 【目的】マスクROM等に格納された追加書き込み不可
な組込み型システムに組み込まれているプログラムを入
れ換えることの出来る情報処理装置を提供する。 【構成】読み出し専用メモリにプログラムが記憶されて
おり、実行手段により前記プログラムを読み出して前記
プログラムの機能を実行する情報処理装置において、テ
ーブル化された前記プログラムの呼出しアドレスを記憶
する第1の記憶手段と、前記プログラムの呼出しアドレ
スを変更する変更手段と、前記変更手段により変更され
た呼出しアドレスに対応するプログラムを記憶する第2
の記憶手段とを有する情報処理装置とする。 【効果】プログラムの不良修正や機能追加を行う場合に
修正対象となるプログラムに関連する被プログラムに影
響を与えずに当該被プログラムを入れ換えることができ
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、情報処理装置に関する
ものであり、特に携帯可能な小型の情報処理装置に予め
組み込まれているソフトウェアプログラムを入れ換える
装置に関するものである。
【0002】
【従来の技術】従来、読み出し専用メモリに記憶されて
いるプログラムに支障が生じたり、プログラムの機能を
拡張したいといった場合に、情報処理装置のプログラム
を入れ換えるためには、プログラムが組み込まれている
読み出し専用メモリを全て入れ換えていた。
【0003】もしくは、読み出し専用メモリではなく、
書き換え可能なメモリ上にプログラムを記憶させてい
た。
【0004】
【発明が解決しようとする課題】読み出し専用メモリに
プログラムが組み込まれている場合に、そのメモリを入
れ換えるには、メモリの装着が自由に出来る装置が必要
となる。このため、 (1)ハードウェアのメモリ入れ換え機構の装着コスト
の上昇 (2)マスクROMメモリの再作成によるコストの上昇 (3)ハードウェアのメモリ入れ換え機構により装置の
小型化ができなくなる といった問題が生じる。
【0005】また、メモリ自体を読み出し専用メモリで
はなく、書き換え可能なメモリにすると、マスクROM
に代表される読み出し専用メモリに比べて、 (1)フラッシュメモリやSRAM使用によるコストの
上昇 (2)フラッシュメモリやSRAMによる電力消費の上
昇 といった問題が生じる。
【0006】本発明の目的は、簡易で安価な構成で上述
の問題点を解決する情報処理装置を提供することにあ
る。
【0007】
【課題を解決するための手段】上記目的を達成するため
に、本発明は、読み出し専用メモリにプログラムが記憶
されており、実行手段により前記プログラムを読み出し
て前記プログラムの機能を実行する情報処理装置におい
て、テーブル化された前記プログラムの呼出しアドレス
を記憶する第1の記憶手段と、前記プログラムの呼出し
アドレスを変更する変更手段と、前記変更手段により変
更された呼出しアドレスに対応するプログラムを記憶す
る第2の記憶手段とを有し、前記変更手段により呼出し
アドレスが変更された場合には、前記読み出し専用メモ
リに記憶されているプログラムではなく、第2の記憶手
段に記憶されているプログラムの機能を実行手段が実行
することを特徴とする情報処理装置を提供する。
【0008】
【作用】上述した構成により、本発明では、マスクRO
M等に格納された追加書き込み不可の装置(以下、組み
込み型システムという。)にソフトウェアプログラムを
格納した場合、追加書き込み不可のプログラム(被プロ
グラム)の変更を他のプログラムに影響を与えずに別の
プログラムに入れ換えることができるので、プログラム
の不良修正や機能追加を行う場合に修正対象となるプロ
グラムに関連するプログラムに影響を与えずに当該被プ
ログラムを入れ換えることができる。
【0009】また、組込み型システム装置に統合された
ソフトウェアシステムに対して被プログラムを別の機能
を持つプログラムに入れ換えて実行することもできるの
で、幾つかの機能を持つ組込み型システムを一つの本装
置で複数種類作ることができる。
【0010】さらに、組込み型システム装置に任意の時
点で被プログラムを幾つかの別の機能を持つプログラム
へ取り替えながら実行できるので、一つの本装置で複数
の機能が任意の時点で実行できる。
【0011】これにより、情報処理装置に予めソフトウ
ェアプログラムを読み出し専用メモリに組み込んでしま
った場合であっても、比較的低いコストでそのプログラ
ムを別の任意のプログラムに入れ換えることが出来る。
【0012】
【実施例】図1は、本発明にかかる情報処理装置であ
り、1はマイクロプロセサ、2はマイクロプロセサ1と
統合されたプログラムの入っている読み出し専用メモリ
(マスクROM)、3は書き込み可能なメモリ(DRA
M)、4、5はそれぞれ入れ換えるプログラムの入って
いるフラッシュEEPROM、SRAMである。プログ
ラムの入っている記憶装置は、本装置に直接接続される
だけでなく、通信機能を用いることにより、Modem
Unit7を介して別の装置(サーバホスト等)6に
記録させておくこともできる。さらに、マイクロプロセ
サと周辺装置を制御するASIC8がある。
【0013】プログラムの入れ換えにはタスク/プロセ
スと言ったプログラム群を構成する一つの大きな単位と
関数/サブルーチンと言ったプログラムを構成する最少
単位がある。ここでは、関数/サブルーチンと言ったプ
ログラムを構成する最少単位を対象としてプログラムの
入れ換えを行う。これにより、入れ換えるプログラムの
占有する書き換え可能メモリ上の容量を少なくする。
【0014】プログラムの入れ換えには、図2に示すよ
うに入れ換えるプログラムにジャンプする為に必要な関
数のポインタを示すアドレステーブルを作成する。これ
をスタブテーブルと呼ぶ。
【0015】高級言語(本実施例ではC言語を用いる)
は、複数の関数の集合になっている。この関数呼び出し
を行う時の実際のアドレスと実際の関数のアドレスをス
タブテーブルに登録する事により、実際の関数のアドレ
スが異なる関数のアドレスにすることができる。このた
め、関数の呼び出しは全て関数へのポインタを用いた関
数呼び出しとなるようにする。
【0016】関数呼び出しの部分にスタブを埋め込むた
めに、既存のプログラムの修正や修正量を出来るだけ少
なくする必要がある。そのため、スタブを埋め込む場合
とそうでない場合を出来るだけ等価にする為に、C言語
のプリプロセサによるマクロ展開を用いる。マクロはM
AKE_STUBが定義されている時には関数呼び出し
にスタブを埋め込む。すなわち、MAKE_STUBを
定義してコンパイルするとマクロを用いて宣言/定義さ
れた関数はスタブテーブルを介して呼び出されるように
する。
【0017】マクロの定義は以下のように3通りある。
【0018】 (1)#ifdef MAKE_STUB #define DEC(x) x##_DEF #else #define DEC(x) x #endif (2)#ifdef MAKE_STUB #define PROTO(x) (*x) #else #define PROTO(x) x #endif (3)#ifdef MAKE_STUB #define PROTOTYPE extern #else #define PROTOTYPE #endif スタブが埋め込まれた全てのプログラムはそのプログラ
ムが呼び出す被プログラムのアドレス解決時(リンケー
ジ時)、呼び出す被プログラムのポインタのあるアドレ
スを知ることで全て解決出来る。
【0019】呼び出す関数を別のプログラムと置き換え
るには、任意の時点でプログラムを記憶装置から書き換
え可能なメモリ上にローディングし、スタブテーブルに
ローディングしたアドレスに書き換えることにより行え
る。
【0020】スタブテーブルには、入れ換えるプログラ
ムが以下の方法でローディングされる。
【0021】(1)システムの開始時に記憶装置1、2
にある記憶装置からプログラムをシステムで書き換え可
能領域の固定アドレスにローディングする(入れ換えプ
ログラムA)。
【0022】(2)任意の時点で、記憶装置3から通信
装置等を用いて書き換え可能領域の固定アドレスにロー
ディングする(入れ換えプログラムB)。
【0023】(3)記憶装置2又は3に書き込まれてい
るプログラムを直接使用する(入れ換えプログラム
C)。
【0024】また、置き換えるプログラムもこのスタブ
テーブルを用いてアドレス解決することにより、置き換
えるプログラムの中からスタブテーブルに登録されてい
る関数を呼び出すことが出来る。
【0025】
【発明の効果】本発明により、プログラムの不良修正や
機能追加を行う場合に修正対象となるプログラムに関連
する被プログラムに影響を与えずに当該被プログラムを
入れ換えることができる。
【0026】また、本発明の組込み型システムは安価な
マスクROMを使用し、装置に直接装着するので低コス
トで小型化のシステム装置を実現できる。さらに、任意
の時点でプログラムの呼び出し先を変更できる為、プロ
グラムのテストや機能拡張したプログラムを入れ換える
ことが可能となる。
【図面の簡単な説明】
【図1】本発明にかかる情報処理装置の概略図である。
【図2】本発明にかかるスタブテーブルの構造である。
【符号の説明】
1…マイクロプロセサ、2…読み出し専用メモリ、3…
書き込み可能なメモリ、4…フラッシュEEPROM、
5…SRAM、6…サーバホスト、7…ModemUn
it、8…ASIC。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 嶋 康弘 神奈川県横浜市中区尾上町六丁目81番地日 立ソフトウェアエンジニアリング株式会社 内 (72)発明者 斉藤 賢爾 神奈川県横浜市中区尾上町六丁目81番地日 立ソフトウェアエンジニアリング株式会社 内

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】読み出し専用メモリにプログラムが記憶さ
    れており、実行手段により前記プログラムを読み出して
    前記プログラムの機能を実行する情報処理装置におい
    て、 テーブル化された前記プログラムの呼出しアドレスを記
    憶する第1の記憶手段と、 前記プログラムの呼出しアドレスを変更する変更手段
    と、 前記変更手段により変更された呼出しアドレスに対応す
    るプログラムを記憶する第2の記憶手段とを有し、 前記変更手段により呼出しアドレスが変更された場合に
    は、前記読み出し専用メモリに記憶されているプログラ
    ムではなく、第2の記憶手段に記憶されているプログラ
    ムの機能を実行手段が実行することを特徴とする情報処
    理装置。
  2. 【請求項2】前記第2の記憶手段は、通信網を介して別
    の装置に備えられていることを特徴とする請求項1記載
    の情報処理装置。
JP21317495A 1995-08-22 1995-08-22 情報処理装置 Pending JPH0962502A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21317495A JPH0962502A (ja) 1995-08-22 1995-08-22 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP21317495A JPH0962502A (ja) 1995-08-22 1995-08-22 情報処理装置

Publications (1)

Publication Number Publication Date
JPH0962502A true JPH0962502A (ja) 1997-03-07

Family

ID=16634777

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21317495A Pending JPH0962502A (ja) 1995-08-22 1995-08-22 情報処理装置

Country Status (1)

Country Link
JP (1) JPH0962502A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004090232A (ja) * 2002-08-29 2004-03-25 Canon Inc 記録装置及び記録装置の制御方法
EP3572932A4 (en) * 2017-02-28 2020-12-23 Nippon Telegraph and Telephone Corporation COMMUNICATION PROCESSING DEVICE, INFORMATION PROCESSING DEVICE AND COMMUNICATION PROCESSING DEVICE CONTROL PROCESS

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004090232A (ja) * 2002-08-29 2004-03-25 Canon Inc 記録装置及び記録装置の制御方法
EP3572932A4 (en) * 2017-02-28 2020-12-23 Nippon Telegraph and Telephone Corporation COMMUNICATION PROCESSING DEVICE, INFORMATION PROCESSING DEVICE AND COMMUNICATION PROCESSING DEVICE CONTROL PROCESS
US11360758B2 (en) 2017-02-28 2022-06-14 Nippon Telegraph And Telephone Corporation Communication processing device, information processing device, and communication processing device control method

Similar Documents

Publication Publication Date Title
RU2220442C2 (ru) Полное устранение избыточной загрузки для архитектур, поддерживающих спекуляцию по управлению и данным
US6529985B1 (en) Selective interception of system calls
US6219783B1 (en) Method and apparatus for executing a flush RS instruction to synchronize a register stack with instructions executed by a processor
CN101183331B (zh) 一种任务栈溢出检测方法、装置及计算机系统
KR100307857B1 (ko) 전자장치
JP2006196018A (ja) Biosをホスト・コンピュータに提供する方法と配置
US6108100A (en) Apparatus and method for end-user performance upgrade
JPH1115673A5 (ja)
US20080010432A1 (en) System and Method for Thread Creation and Memory Management In An Object-Oriented Programming Environment
JPH0962502A (ja) 情報処理装置
JPH07295866A (ja) データ処理装置
JP3918434B2 (ja) 情報処理装置
JP2001265620A (ja) Romのプログラムデバッグ方式
JP2555920B2 (ja) オンラインリアルタイム処理装置
CN1333340C (zh) 程序转换设备与处理器
JP3691986B2 (ja) プログラマブルコントローラ
JP2585818B2 (ja) プログラムの呼び出し処理装置
US6112292A (en) Code sequence for asynchronous backing store switch utilizing both the cover and LOADRS instructions
JPH09146772A (ja) 手続き呼出し方法
JPH07191856A (ja) 情報処理装置
JPH11259308A (ja) プログラマブルコントローラ
JPH08286948A (ja) ソフトウエア開発支援装置および方法
KR100260444B1 (ko) 전송장치의 메모리 영역 운용방법
KR950005242B1 (ko) 범용 운영체제에서의 칠(chill) 병렬 처리를 위한 공유변수 처리 방법
Kim et al. Procedure-Based On-Line Program Replacement