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
Links
Landscapes
- Stored Programmes (AREA)
Abstract
(57)【要約】
【目的】マスクROM等に格納された追加書き込み不可
な組込み型システムに組み込まれているプログラムを入
れ換えることの出来る情報処理装置を提供する。 【構成】読み出し専用メモリにプログラムが記憶されて
おり、実行手段により前記プログラムを読み出して前記
プログラムの機能を実行する情報処理装置において、テ
ーブル化された前記プログラムの呼出しアドレスを記憶
する第1の記憶手段と、前記プログラムの呼出しアドレ
スを変更する変更手段と、前記変更手段により変更され
た呼出しアドレスに対応するプログラムを記憶する第2
の記憶手段とを有する情報処理装置とする。 【効果】プログラムの不良修正や機能追加を行う場合に
修正対象となるプログラムに関連する被プログラムに影
響を与えずに当該被プログラムを入れ換えることができ
る。
な組込み型システムに組み込まれているプログラムを入
れ換えることの出来る情報処理装置を提供する。 【構成】読み出し専用メモリにプログラムが記憶されて
おり、実行手段により前記プログラムを読み出して前記
プログラムの機能を実行する情報処理装置において、テ
ーブル化された前記プログラムの呼出しアドレスを記憶
する第1の記憶手段と、前記プログラムの呼出しアドレ
スを変更する変更手段と、前記変更手段により変更され
た呼出しアドレスに対応するプログラムを記憶する第2
の記憶手段とを有する情報処理装置とする。 【効果】プログラムの不良修正や機能追加を行う場合に
修正対象となるプログラムに関連する被プログラムに影
響を与えずに当該被プログラムを入れ換えることができ
る。
Description
【0001】
【産業上の利用分野】本発明は、情報処理装置に関する
ものであり、特に携帯可能な小型の情報処理装置に予め
組み込まれているソフトウェアプログラムを入れ換える
装置に関するものである。
ものであり、特に携帯可能な小型の情報処理装置に予め
組み込まれているソフトウェアプログラムを入れ換える
装置に関するものである。
【0002】
【従来の技術】従来、読み出し専用メモリに記憶されて
いるプログラムに支障が生じたり、プログラムの機能を
拡張したいといった場合に、情報処理装置のプログラム
を入れ換えるためには、プログラムが組み込まれている
読み出し専用メモリを全て入れ換えていた。
いるプログラムに支障が生じたり、プログラムの機能を
拡張したいといった場合に、情報処理装置のプログラム
を入れ換えるためには、プログラムが組み込まれている
読み出し専用メモリを全て入れ換えていた。
【0003】もしくは、読み出し専用メモリではなく、
書き換え可能なメモリ上にプログラムを記憶させてい
た。
書き換え可能なメモリ上にプログラムを記憶させてい
た。
【0004】
【発明が解決しようとする課題】読み出し専用メモリに
プログラムが組み込まれている場合に、そのメモリを入
れ換えるには、メモリの装着が自由に出来る装置が必要
となる。このため、 (1)ハードウェアのメモリ入れ換え機構の装着コスト
の上昇 (2)マスクROMメモリの再作成によるコストの上昇 (3)ハードウェアのメモリ入れ換え機構により装置の
小型化ができなくなる といった問題が生じる。
プログラムが組み込まれている場合に、そのメモリを入
れ換えるには、メモリの装着が自由に出来る装置が必要
となる。このため、 (1)ハードウェアのメモリ入れ換え機構の装着コスト
の上昇 (2)マスクROMメモリの再作成によるコストの上昇 (3)ハードウェアのメモリ入れ換え機構により装置の
小型化ができなくなる といった問題が生じる。
【0005】また、メモリ自体を読み出し専用メモリで
はなく、書き換え可能なメモリにすると、マスクROM
に代表される読み出し専用メモリに比べて、 (1)フラッシュメモリやSRAM使用によるコストの
上昇 (2)フラッシュメモリやSRAMによる電力消費の上
昇 といった問題が生じる。
はなく、書き換え可能なメモリにすると、マスクROM
に代表される読み出し専用メモリに比べて、 (1)フラッシュメモリやSRAM使用によるコストの
上昇 (2)フラッシュメモリやSRAMによる電力消費の上
昇 といった問題が生じる。
【0006】本発明の目的は、簡易で安価な構成で上述
の問題点を解決する情報処理装置を提供することにあ
る。
の問題点を解決する情報処理装置を提供することにあ
る。
【0007】
【課題を解決するための手段】上記目的を達成するため
に、本発明は、読み出し専用メモリにプログラムが記憶
されており、実行手段により前記プログラムを読み出し
て前記プログラムの機能を実行する情報処理装置におい
て、テーブル化された前記プログラムの呼出しアドレス
を記憶する第1の記憶手段と、前記プログラムの呼出し
アドレスを変更する変更手段と、前記変更手段により変
更された呼出しアドレスに対応するプログラムを記憶す
る第2の記憶手段とを有し、前記変更手段により呼出し
アドレスが変更された場合には、前記読み出し専用メモ
リに記憶されているプログラムではなく、第2の記憶手
段に記憶されているプログラムの機能を実行手段が実行
することを特徴とする情報処理装置を提供する。
に、本発明は、読み出し専用メモリにプログラムが記憶
されており、実行手段により前記プログラムを読み出し
て前記プログラムの機能を実行する情報処理装置におい
て、テーブル化された前記プログラムの呼出しアドレス
を記憶する第1の記憶手段と、前記プログラムの呼出し
アドレスを変更する変更手段と、前記変更手段により変
更された呼出しアドレスに対応するプログラムを記憶す
る第2の記憶手段とを有し、前記変更手段により呼出し
アドレスが変更された場合には、前記読み出し専用メモ
リに記憶されているプログラムではなく、第2の記憶手
段に記憶されているプログラムの機能を実行手段が実行
することを特徴とする情報処理装置を提供する。
【0008】
【作用】上述した構成により、本発明では、マスクRO
M等に格納された追加書き込み不可の装置(以下、組み
込み型システムという。)にソフトウェアプログラムを
格納した場合、追加書き込み不可のプログラム(被プロ
グラム)の変更を他のプログラムに影響を与えずに別の
プログラムに入れ換えることができるので、プログラム
の不良修正や機能追加を行う場合に修正対象となるプロ
グラムに関連するプログラムに影響を与えずに当該被プ
ログラムを入れ換えることができる。
M等に格納された追加書き込み不可の装置(以下、組み
込み型システムという。)にソフトウェアプログラムを
格納した場合、追加書き込み不可のプログラム(被プロ
グラム)の変更を他のプログラムに影響を与えずに別の
プログラムに入れ換えることができるので、プログラム
の不良修正や機能追加を行う場合に修正対象となるプロ
グラムに関連するプログラムに影響を与えずに当該被プ
ログラムを入れ換えることができる。
【0009】また、組込み型システム装置に統合された
ソフトウェアシステムに対して被プログラムを別の機能
を持つプログラムに入れ換えて実行することもできるの
で、幾つかの機能を持つ組込み型システムを一つの本装
置で複数種類作ることができる。
ソフトウェアシステムに対して被プログラムを別の機能
を持つプログラムに入れ換えて実行することもできるの
で、幾つかの機能を持つ組込み型システムを一つの本装
置で複数種類作ることができる。
【0010】さらに、組込み型システム装置に任意の時
点で被プログラムを幾つかの別の機能を持つプログラム
へ取り替えながら実行できるので、一つの本装置で複数
の機能が任意の時点で実行できる。
点で被プログラムを幾つかの別の機能を持つプログラム
へ取り替えながら実行できるので、一つの本装置で複数
の機能が任意の時点で実行できる。
【0011】これにより、情報処理装置に予めソフトウ
ェアプログラムを読み出し専用メモリに組み込んでしま
った場合であっても、比較的低いコストでそのプログラ
ムを別の任意のプログラムに入れ換えることが出来る。
ェアプログラムを読み出し専用メモリに組み込んでしま
った場合であっても、比較的低いコストでそのプログラ
ムを別の任意のプログラムに入れ換えることが出来る。
【0012】
【実施例】図1は、本発明にかかる情報処理装置であ
り、1はマイクロプロセサ、2はマイクロプロセサ1と
統合されたプログラムの入っている読み出し専用メモリ
(マスクROM)、3は書き込み可能なメモリ(DRA
M)、4、5はそれぞれ入れ換えるプログラムの入って
いるフラッシュEEPROM、SRAMである。プログ
ラムの入っている記憶装置は、本装置に直接接続される
だけでなく、通信機能を用いることにより、Modem
Unit7を介して別の装置(サーバホスト等)6に
記録させておくこともできる。さらに、マイクロプロセ
サと周辺装置を制御するASIC8がある。
り、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を
定義してコンパイルするとマクロを用いて宣言/定義さ
れた関数はスタブテーブルを介して呼び出されるように
する。
めに、既存のプログラムの修正や修正量を出来るだけ少
なくする必要がある。そのため、スタブを埋め込む場合
とそうでない場合を出来るだけ等価にする為に、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)。
にある記憶装置からプログラムをシステムで書き換え可
能領域の固定アドレスにローディングする(入れ換えプ
ログラムA)。
【0022】(2)任意の時点で、記憶装置3から通信
装置等を用いて書き換え可能領域の固定アドレスにロー
ディングする(入れ換えプログラムB)。
装置等を用いて書き換え可能領域の固定アドレスにロー
ディングする(入れ換えプログラムB)。
【0023】(3)記憶装置2又は3に書き込まれてい
るプログラムを直接使用する(入れ換えプログラム
C)。
るプログラムを直接使用する(入れ換えプログラム
C)。
【0024】また、置き換えるプログラムもこのスタブ
テーブルを用いてアドレス解決することにより、置き換
えるプログラムの中からスタブテーブルに登録されてい
る関数を呼び出すことが出来る。
テーブルを用いてアドレス解決することにより、置き換
えるプログラムの中からスタブテーブルに登録されてい
る関数を呼び出すことが出来る。
【0025】
【発明の効果】本発明により、プログラムの不良修正や
機能追加を行う場合に修正対象となるプログラムに関連
する被プログラムに影響を与えずに当該被プログラムを
入れ換えることができる。
機能追加を行う場合に修正対象となるプログラムに関連
する被プログラムに影響を与えずに当該被プログラムを
入れ換えることができる。
【0026】また、本発明の組込み型システムは安価な
マスクROMを使用し、装置に直接装着するので低コス
トで小型化のシステム装置を実現できる。さらに、任意
の時点でプログラムの呼び出し先を変更できる為、プロ
グラムのテストや機能拡張したプログラムを入れ換える
ことが可能となる。
マスクROMを使用し、装置に直接装着するので低コス
トで小型化のシステム装置を実現できる。さらに、任意
の時点でプログラムの呼び出し先を変更できる為、プロ
グラムのテストや機能拡張したプログラムを入れ換える
ことが可能となる。
【図1】本発明にかかる情報処理装置の概略図である。
【図2】本発明にかかるスタブテーブルの構造である。
1…マイクロプロセサ、2…読み出し専用メモリ、3…
書き込み可能なメモリ、4…フラッシュEEPROM、
5…SRAM、6…サーバホスト、7…ModemUn
it、8…ASIC。
書き込み可能なメモリ、4…フラッシュEEPROM、
5…SRAM、6…サーバホスト、7…ModemUn
it、8…ASIC。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 嶋 康弘 神奈川県横浜市中区尾上町六丁目81番地日 立ソフトウェアエンジニアリング株式会社 内 (72)発明者 斉藤 賢爾 神奈川県横浜市中区尾上町六丁目81番地日 立ソフトウェアエンジニアリング株式会社 内
Claims (2)
- 【請求項1】読み出し専用メモリにプログラムが記憶さ
れており、実行手段により前記プログラムを読み出して
前記プログラムの機能を実行する情報処理装置におい
て、 テーブル化された前記プログラムの呼出しアドレスを記
憶する第1の記憶手段と、 前記プログラムの呼出しアドレスを変更する変更手段
と、 前記変更手段により変更された呼出しアドレスに対応す
るプログラムを記憶する第2の記憶手段とを有し、 前記変更手段により呼出しアドレスが変更された場合に
は、前記読み出し専用メモリに記憶されているプログラ
ムではなく、第2の記憶手段に記憶されているプログラ
ムの機能を実行手段が実行することを特徴とする情報処
理装置。 - 【請求項2】前記第2の記憶手段は、通信網を介して別
の装置に備えられていることを特徴とする請求項1記載
の情報処理装置。
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)
| 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 |
-
1995
- 1995-08-22 JP JP21317495A patent/JPH0962502A/ja active Pending
Cited By (3)
| 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 |