JPH05134880A - デイジタル計算機 - Google Patents
デイジタル計算機Info
- Publication number
- JPH05134880A JPH05134880A JP3134237A JP13423791A JPH05134880A JP H05134880 A JPH05134880 A JP H05134880A JP 3134237 A JP3134237 A JP 3134237A JP 13423791 A JP13423791 A JP 13423791A JP H05134880 A JPH05134880 A JP H05134880A
- Authority
- JP
- Japan
- Prior art keywords
- computer
- code
- program
- source code
- source
- 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
- 238000012937 correction Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 10
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Landscapes
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
Abstract
(57)【要約】
【目的】 本発明はディジタル計算機に関し、異なるア
ーキテクチャの計算機同志でプログラムの互換性を維持
することができるディジタル計算機を提供することを目
的としている。 【構成】 外部計算機からのオブジェクトコードを入力
してそのオブジェクトコードに対応するソースコードあ
るいはそれに準じる中間コードに逆変換する逆コンパイ
ル装置11と、該逆コンパイル装置11の出力を受け
て、ソースコードあるいはそれに準じる中間コードを自
装置用のソースコードあるいはそれに準じる中間コード
に変換する修正装置12と、該修正装置12の出力を受
けてコンパイルするコンパイル装置13とを含んで構成
される。
ーキテクチャの計算機同志でプログラムの互換性を維持
することができるディジタル計算機を提供することを目
的としている。 【構成】 外部計算機からのオブジェクトコードを入力
してそのオブジェクトコードに対応するソースコードあ
るいはそれに準じる中間コードに逆変換する逆コンパイ
ル装置11と、該逆コンパイル装置11の出力を受け
て、ソースコードあるいはそれに準じる中間コードを自
装置用のソースコードあるいはそれに準じる中間コード
に変換する修正装置12と、該修正装置12の出力を受
けてコンパイルするコンパイル装置13とを含んで構成
される。
Description
【0001】
【産業上の利用分野】本発明はディジタル計算機に関
し、更に詳しくは異なるアーキテクチャの計算機同志の
プログラムの互換性維持を図ったディジタル計算機に関
する。
し、更に詳しくは異なるアーキテクチャの計算機同志の
プログラムの互換性維持を図ったディジタル計算機に関
する。
【0002】計算機のアーキテクチャが異なると、同じ
アプリケーションプログラムであっても、それぞれのア
ーキテクチャに対応したプログラム(オブジェクトプロ
グラム:実行プログラム)を購入しなければならず、非
常に不便であった。そこで、アーキテクチャが異なって
いてもプログラムの互換性を維持することのできるディ
ジタル計算機が必要とされてきている。
アプリケーションプログラムであっても、それぞれのア
ーキテクチャに対応したプログラム(オブジェクトプロ
グラム:実行プログラム)を購入しなければならず、非
常に不便であった。そこで、アーキテクチャが異なって
いてもプログラムの互換性を維持することのできるディ
ジタル計算機が必要とされてきている。
【0003】
【従来の技術】図5は従来のプログラムの移植形態を示
す図である。今、計算機Aと計算機Bとがあるものと
し、これら計算機はそのアーキテクチャが異なっている
ものとする。このようにアーキテクチャが異なっている
計算機同志では、プログラムの互換性はない。従って、
このような場合には、図5に示すように、計算機A用ソ
ースプログラム1にオペレータ2が修正を加えて計算機
B用のソースプログラム3を作っている。つまり、異な
るアーキテクチャの計算機間で同一のプログラムの機能
を実現する場合には、ソースプログラムを媒介にして、
人手で移植作業を行っている。
す図である。今、計算機Aと計算機Bとがあるものと
し、これら計算機はそのアーキテクチャが異なっている
ものとする。このようにアーキテクチャが異なっている
計算機同志では、プログラムの互換性はない。従って、
このような場合には、図5に示すように、計算機A用ソ
ースプログラム1にオペレータ2が修正を加えて計算機
B用のソースプログラム3を作っている。つまり、異な
るアーキテクチャの計算機間で同一のプログラムの機能
を実現する場合には、ソースプログラムを媒介にして、
人手で移植作業を行っている。
【0004】
【発明が解決しようとする課題】図6に示すように、メ
ーカ4が計算機A用に開発した市販のアプリケーション
プログラムをユーザ5が使用する場合について考える。
市販のアプリケーションプログラムは、通常オブジェク
ト・コード(object code)で記述されてい
る。従って、このアプリケーションプログラムを購入し
たユーザ5は、計算機Aにしかこのプログラムを用いる
ことはできず、他のアーキテクチャの異なる計算機Bで
このプログラムを実行させることは不可能であった。
ーカ4が計算機A用に開発した市販のアプリケーション
プログラムをユーザ5が使用する場合について考える。
市販のアプリケーションプログラムは、通常オブジェク
ト・コード(object code)で記述されてい
る。従って、このアプリケーションプログラムを購入し
たユーザ5は、計算機Aにしかこのプログラムを用いる
ことはできず、他のアーキテクチャの異なる計算機Bで
このプログラムを実行させることは不可能であった。
【0005】また、図7に示すように計算機A用のソー
スプログラムを計算機B用に移植する場合について考え
る。プログラマ6が計算機A用のソースプログラムを作
成し、そのプログラムを計算機Bでも使用するものとす
る。このままでは、使用できないので、プログラムマ7
が修正し、コンパイルし、実行プログラム(オブジェク
トプログラム)を作成している。
スプログラムを計算機B用に移植する場合について考え
る。プログラマ6が計算機A用のソースプログラムを作
成し、そのプログラムを計算機Bでも使用するものとす
る。このままでは、使用できないので、プログラムマ7
が修正し、コンパイルし、実行プログラム(オブジェク
トプログラム)を作成している。
【0006】この場合、計算機Aから計算機Bに移植す
る途中で、第3者8がこのソースプログラムに故意に修
正を加える可能性がある。このため、プログラムの信頼
性が失われるという問題があった。
る途中で、第3者8がこのソースプログラムに故意に修
正を加える可能性がある。このため、プログラムの信頼
性が失われるという問題があった。
【0007】本発明はこのような課題に鑑みてなされた
ものであって、異なるアーキテクチャの計算機同志でプ
ログラムの互換性を維持することができるディジタル計
算機を提供することを目的としている。
ものであって、異なるアーキテクチャの計算機同志でプ
ログラムの互換性を維持することができるディジタル計
算機を提供することを目的としている。
【0008】
【課題を解決するための手段】図1は本発明の原理ブロ
ック図である。図に示す装置全体で、ディジタル計算機
10を構成している。図において、11は外部計算機か
らのオブジェクトコードを入力してそのオブジェクトコ
ードに対応するソースコードあるいはそれに準じる中間
コードに変換する逆コンパイル装置、12は該逆コンパ
イル装置11の出力を受けて、ソースコードあるいはそ
れに準じる中間コードを自装置用のソースコードあるい
はそれに準じる中間コードに変換する修正装置、13は
該修正装置12の出力をコンパイルした自装置用のオブ
ジェクトコードを生成するコンパイル装置、14はコン
パイルされたオブジェクトコード・プログラムを実行す
る実行装置、15は記憶装置である。
ック図である。図に示す装置全体で、ディジタル計算機
10を構成している。図において、11は外部計算機か
らのオブジェクトコードを入力してそのオブジェクトコ
ードに対応するソースコードあるいはそれに準じる中間
コードに変換する逆コンパイル装置、12は該逆コンパ
イル装置11の出力を受けて、ソースコードあるいはそ
れに準じる中間コードを自装置用のソースコードあるい
はそれに準じる中間コードに変換する修正装置、13は
該修正装置12の出力をコンパイルした自装置用のオブ
ジェクトコードを生成するコンパイル装置、14はコン
パイルされたオブジェクトコード・プログラムを実行す
る実行装置、15は記憶装置である。
【0009】
【作用】逆コンパイル装置11により、入力されたオブ
ジェクトコードに対応するソースコードあるいはそれに
準じる中間コードに変換し、そのソースコードあるいは
それに準じる中間コードを修正装置12により自装置用
のソースコードあるいはそれに準じる中間コードに変換
する。ここまで、変換されたら、通常のコンパイル装置
13により、オブジェクトコードに変換する。コンパイ
ル装置13は、自装置又は外部装置の区別なくコンパイ
ルすることができる。このように、本発明によれば、ア
ーキテクチャの異なる計算機用のオブジェクトコード
を、いったんソースコードあるいはそれに準じる中間コ
ードに逆変換し、その後自装置用のソースコードあるい
はそれに準じる中間コードに変換することができるの
で、異なるアーキテクチャの計算機同志でプログラムの
互換性を維持することができるディジタル計算機を提供
することができる。
ジェクトコードに対応するソースコードあるいはそれに
準じる中間コードに変換し、そのソースコードあるいは
それに準じる中間コードを修正装置12により自装置用
のソースコードあるいはそれに準じる中間コードに変換
する。ここまで、変換されたら、通常のコンパイル装置
13により、オブジェクトコードに変換する。コンパイ
ル装置13は、自装置又は外部装置の区別なくコンパイ
ルすることができる。このように、本発明によれば、ア
ーキテクチャの異なる計算機用のオブジェクトコード
を、いったんソースコードあるいはそれに準じる中間コ
ードに逆変換し、その後自装置用のソースコードあるい
はそれに準じる中間コードに変換することができるの
で、異なるアーキテクチャの計算機同志でプログラムの
互換性を維持することができるディジタル計算機を提供
することができる。
【0010】
【実施例】以下、図面を参照して本発明の実施例を詳細
に説明する。
に説明する。
【0011】図2は本発明の一実施例を示す構成ブロッ
ク図である。図1と同一のものは、同一の符号を付して
示す。図に示すシステムは、図1に示すシステムが2個
相互接続されたシステムを構成しており、プログラマ/
ユーザ30により作成された計算機A用のアプリケーシ
ョンプログラム(オブジェクトコード)と、プログラマ
/ユーザ31により作成された計算機B用のアプリケー
ションプログラムがあるものとする。
ク図である。図1と同一のものは、同一の符号を付して
示す。図に示すシステムは、図1に示すシステムが2個
相互接続されたシステムを構成しており、プログラマ/
ユーザ30により作成された計算機A用のアプリケーシ
ョンプログラム(オブジェクトコード)と、プログラマ
/ユーザ31により作成された計算機B用のアプリケー
ションプログラムがあるものとする。
【0012】今、計算機B用のオブジェクトコードを計
算機A側に移植する場合について考える。計算機Bの記
憶装置15に格納されているオブジェクトコードは、バ
スを介して計算機Aの逆コンパイル装置11に入る。逆
コンパイル装置11は、入力されたオブジェクトコード
に対応するソースコードあるいはそれに準じる中間コー
ドに変換する。
算機A側に移植する場合について考える。計算機Bの記
憶装置15に格納されているオブジェクトコードは、バ
スを介して計算機Aの逆コンパイル装置11に入る。逆
コンパイル装置11は、入力されたオブジェクトコード
に対応するソースコードあるいはそれに準じる中間コー
ドに変換する。
【0013】修正装置12は、計算機B用のソースコー
ドあるいはそれに準じる中間コードを自装置(計算機
A)用のソーストコードに変換する。ここまでの処理が
終了したら、後は通常のソースコードあるいはそれに準
じる中間コードのコンパイル作業と同じである。即ち、
コンパイル装置13により作成されたオブジェクトコー
ドは、実行装置14により実行される。
ドあるいはそれに準じる中間コードを自装置(計算機
A)用のソーストコードに変換する。ここまでの処理が
終了したら、後は通常のソースコードあるいはそれに準
じる中間コードのコンパイル作業と同じである。即ち、
コンパイル装置13により作成されたオブジェクトコー
ドは、実行装置14により実行される。
【0014】以上、計算機B用のオブジェクトコードを
計算機Aに移植した場合について説明したが、逆に計算
機A用のオブジェクトコードを計算機Bに移植する場合
についても全く同様である。本発明によれば、オブジェ
クトコードで計算機相互間のプログラムコードのやりと
りを行うので、図7に示すように第3者による悪意の修
正は起こり得ない。
計算機Aに移植した場合について説明したが、逆に計算
機A用のオブジェクトコードを計算機Bに移植する場合
についても全く同様である。本発明によれば、オブジェ
クトコードで計算機相互間のプログラムコードのやりと
りを行うので、図7に示すように第3者による悪意の修
正は起こり得ない。
【0015】次に、並列計算機に本発明を適用した場合
について説明する。図3は並列計算機に本発明を適用し
た例を示す図である。並列計算機の場合には、そのプロ
セッサ(MPU)数により実行プログラムが異なるた
め、従来は図4に示すようにソースコードあるいはそれ
に準じる中間コードを媒介にしてコンパイル時にプロセ
ッサのリンク情報を指定して並列化していた。例えば、
TransputerというMPUチップを用いた並列
計算機は、このような方法を採用している。
について説明する。図3は並列計算機に本発明を適用し
た例を示す図である。並列計算機の場合には、そのプロ
セッサ(MPU)数により実行プログラムが異なるた
め、従来は図4に示すようにソースコードあるいはそれ
に準じる中間コードを媒介にしてコンパイル時にプロセ
ッサのリンク情報を指定して並列化していた。例えば、
TransputerというMPUチップを用いた並列
計算機は、このような方法を採用している。
【0016】図4は、計算機40(計算機A)と計算機
41(計算機B)とがソースコードあるいはそれに準じ
る中間コードを媒介にして接続される場合を示す。計算
機Aは4MPUを搭載し、計算機Bは6MPUを搭載し
ている。図の□がMPUである。この場合には、見掛け
上オブジェクトコードの互換性はなく、第3者(プログ
ラマ42)が容易にコードの変更ができる。
41(計算機B)とがソースコードあるいはそれに準じ
る中間コードを媒介にして接続される場合を示す。計算
機Aは4MPUを搭載し、計算機Bは6MPUを搭載し
ている。図の□がMPUである。この場合には、見掛け
上オブジェクトコードの互換性はなく、第3者(プログ
ラマ42)が容易にコードの変更ができる。
【0017】これに対して、図3に示す本発明装置の場
合には、4MPU用のプログラムを6MPU計算機41
でも動作させるために、オブジェクトコードで計算機A
から計算機Bに渡す。計算機Bでは、逆コンパイル装置
11が4MPU用のオブジェクトプログラムをソースコ
ードとプロセッサのリンク情報に変換し、修正装置12
(図示せず、図2参照)により自装置用のプロセッサの
リンク情報に変換する。そして、続くコンパイル装置1
3が自装置のプロセッサ・リンク情報をパラメータにし
てオブジェクトコードに変換しなおす。変換されたオブ
ジェクトプログラムは、実行部17Aにより実行され
る。
合には、4MPU用のプログラムを6MPU計算機41
でも動作させるために、オブジェクトコードで計算機A
から計算機Bに渡す。計算機Bでは、逆コンパイル装置
11が4MPU用のオブジェクトプログラムをソースコ
ードとプロセッサのリンク情報に変換し、修正装置12
(図示せず、図2参照)により自装置用のプロセッサの
リンク情報に変換する。そして、続くコンパイル装置1
3が自装置のプロセッサ・リンク情報をパラメータにし
てオブジェクトコードに変換しなおす。変換されたオブ
ジェクトプログラムは、実行部17Aにより実行され
る。
【0018】このようにして、本発明によれば原理的に
互換性を維持できる。本発明の場合には、見掛け上オブ
ジェクトコードに互換性があり、オブジェクトコードの
ため、第3者が容易にコードの変更を行うことができな
いので、プログラムの信頼性も保てる。
互換性を維持できる。本発明の場合には、見掛け上オブ
ジェクトコードに互換性があり、オブジェクトコードの
ため、第3者が容易にコードの変更を行うことができな
いので、プログラムの信頼性も保てる。
【0019】
【発明の効果】以上、詳細に説明したように、本発明に
よれば、計算機本体の中にアーキテクチャの異なる他の
計算機からのオブジェクトコードをソースコードあるい
はそれに準じる中間コードに一旦逆変換する逆コンパイ
ル装置と、そのソースコードあるいはそれに準じる中間
コードを自装置用のソースコードあるいはそれに準じる
中間コードに変換する修正装置を設けることにより、異
なるアーキテクチャの計算機同志でプログラムの互換性
を維持することができるディジタル計算機を提供するこ
とができ、実用上の効果が大きい。
よれば、計算機本体の中にアーキテクチャの異なる他の
計算機からのオブジェクトコードをソースコードあるい
はそれに準じる中間コードに一旦逆変換する逆コンパイ
ル装置と、そのソースコードあるいはそれに準じる中間
コードを自装置用のソースコードあるいはそれに準じる
中間コードに変換する修正装置を設けることにより、異
なるアーキテクチャの計算機同志でプログラムの互換性
を維持することができるディジタル計算機を提供するこ
とができ、実用上の効果が大きい。
【図1】本発明の原理ブロック図である。
【図2】本発明の一実施例を示す構成ブロック図であ
る。
る。
【図3】並列計算機に本発明を適用した例を示す図であ
る。
る。
【図4】従来方式の説明図である。
【図5】従来のプログラムの移植形態を示す図である。
【図6】通常の市販アプリケーションプログラムの利用
形態を示す図である。
形態を示す図である。
【図7】計算機Aから計算機Bへのプログラムの移植を
示す図である。
示す図である。
10 ディジタル計算機 11 逆コンパイル装置 12 修正装置 13 コンパイル装置 14 実行装置 15 記憶装置
Claims (1)
- 【請求項1】 外部計算機からのオブジェクトコードを
入力してそのオブジェクトコードに対応するソースコー
ドあるいはそれに準じる中間コードに逆変換する逆コン
パイル装置(11)と、 該逆コンパイル装置(11)の出力を受けて、ソースコ
ードあるいはそれに準じる中間コードを自装置用のソー
スコードあるいはそれに準じる中間コードに変換する修
正装置(12)と、 該修正装置(12)の出力を受けてコンパイルするコン
パイル装置(13)とを含んで構成されるディジタル計
算機。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3134237A JPH05134880A (ja) | 1991-06-05 | 1991-06-05 | デイジタル計算機 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3134237A JPH05134880A (ja) | 1991-06-05 | 1991-06-05 | デイジタル計算機 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05134880A true JPH05134880A (ja) | 1993-06-01 |
Family
ID=15123628
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3134237A Pending JPH05134880A (ja) | 1991-06-05 | 1991-06-05 | デイジタル計算機 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05134880A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5041467A (en) * | 1989-09-08 | 1991-08-20 | Dai-Ichi Kogyo Seiyaku Co., Ltd. | Method for production of particulate polymers |
JPH10103970A (ja) * | 1996-09-26 | 1998-04-24 | Hitachi Ltd | ナビゲーションシステム及びナビゲーション用の情報媒体 |
JP2015201132A (ja) * | 2014-04-10 | 2015-11-12 | 株式会社ジェイテクト | プログラマブルロジックコントローラ用プログラムの作成支援装置及びプログラマブルロジックコントローラ用プログラムの作成支援方法 |
JP2022522880A (ja) * | 2019-03-04 | 2022-04-20 | フジツウ テクノロジー ソリューションズ インタレクチュアル プロパティ ゲーエムベーハー | プログラム論理の表現を生成する方法、逆コンパイル装置、再コンパイルシステムおよびコンピュータプログラム製品 |
-
1991
- 1991-06-05 JP JP3134237A patent/JPH05134880A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5041467A (en) * | 1989-09-08 | 1991-08-20 | Dai-Ichi Kogyo Seiyaku Co., Ltd. | Method for production of particulate polymers |
JPH10103970A (ja) * | 1996-09-26 | 1998-04-24 | Hitachi Ltd | ナビゲーションシステム及びナビゲーション用の情報媒体 |
JP2015201132A (ja) * | 2014-04-10 | 2015-11-12 | 株式会社ジェイテクト | プログラマブルロジックコントローラ用プログラムの作成支援装置及びプログラマブルロジックコントローラ用プログラムの作成支援方法 |
JP2022522880A (ja) * | 2019-03-04 | 2022-04-20 | フジツウ テクノロジー ソリューションズ インタレクチュアル プロパティ ゲーエムベーハー | プログラム論理の表現を生成する方法、逆コンパイル装置、再コンパイルシステムおよびコンピュータプログラム製品 |
US11748076B2 (en) | 2019-03-04 | 2023-09-05 | Fujitsu Technology Solutions Gmbh | Method of generating a representation of a program logic, decompilation apparatus, recompilation system and computer program products |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5072599B2 (ja) | 異種混合アーキテクチャからの複数のオブジェクトファイルを一組のファイルに統合する方法 | |
US6175935B1 (en) | Software debugging method and recording medium to which debugging program has been recorded | |
JPH05134880A (ja) | デイジタル計算機 | |
JPH03229352A (ja) | プログラム変更方法 | |
JPH04314133A (ja) | 情報処理装置 | |
US20090199166A1 (en) | Program converting device | |
JPH03240837A (ja) | デバッグ情報生成装置 | |
KR0169909B1 (ko) | 목표 프로세서용 어셈블리 코드 생성기를 작성하는 방법 | |
JP2812302B2 (ja) | プログラム開発装置 | |
JPH01259424A (ja) | ソフトウエア自動生成装置 | |
KR0169908B1 (ko) | 중간코드를 이용한 컴파일러의 후위처리기 및 그 후위처리기의 어셈블리 코드 생성방법 | |
KR100388943B1 (ko) | 디지털 신호 처리 프로세서의 즉시 데이터 처리 장치 | |
JPH0452987B2 (ja) | ||
JPH03255535A (ja) | 中央処理装置 | |
JPH03179529A (ja) | 言語翻訳システム | |
JPH01128136A (ja) | コンパイル処理装置 | |
JPH02284225A (ja) | 演算処理装置 | |
JPH0695307B2 (ja) | 言語処理プリプロセッサ | |
JPH113225A (ja) | 情報処理装置 | |
Yu | Hpsimc: ahpl simulator implemented in c language (parser, software) | |
JPH04145536A (ja) | プログラム変換処理システムにおけるアドレス再配置処理方式 | |
JPH04312122A (ja) | プログラム作成装置 | |
JP2001014172A (ja) | プログラム変換装置 | |
JPH03252820A (ja) | 最適オブジェクト生成処理方式 | |
JPH0212525A (ja) | プログラム編集結合装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20000328 |