JPH11514119A - 転送可能および転送不可能なプログラム部分を有するプログラムを移送するための方法 - Google Patents

転送可能および転送不可能なプログラム部分を有するプログラムを移送するための方法

Info

Publication number
JPH11514119A
JPH11514119A JP10504636A JP50463698A JPH11514119A JP H11514119 A JPH11514119 A JP H11514119A JP 10504636 A JP10504636 A JP 10504636A JP 50463698 A JP50463698 A JP 50463698A JP H11514119 A JPH11514119 A JP H11514119A
Authority
JP
Japan
Prior art keywords
program
hardware
transferable
code
target hardware
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
JP10504636A
Other languages
English (en)
Inventor
シュターデル、マンフレート
ウェーバー、クリスチアン
Original Assignee
シーメンス ニクスドルフ インフオルマチオーンスジステーメ アクチエンゲゼルシヤフト
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 シーメンス ニクスドルフ インフオルマチオーンスジステーメ アクチエンゲゼルシヤフト filed Critical シーメンス ニクスドルフ インフオルマチオーンスジステーメ アクチエンゲゼルシヤフト
Publication of JPH11514119A publication Critical patent/JPH11514119A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/3017Runtime instruction translation, e.g. macros
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/52Binary to binary
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 本発明は、転送不可能なプログラム部分と相異なる計算機アーキテクチャを有する目的ハードウェア上に転送可能なプログラム部分(A、B、C、D)とから成る原始ハードウェアに対するプログラムコードを目的ハードウェア上に移送するのに用いられ、従来の技術にくらべて改善された方法を示す。その際に、転送不可能なプログラム部分に対する特別な起動ルーチンの費用のかかる手動の実行と、目的ハードウェア上の保護されたメモリ範囲の使用とが省略される。目的ハードウェアに対する転送可能なプログラム部分(C、D)はそのためにそれぞれ再コンパイルされ、またこれらのプログラム部分が他のプログラム部分からエントリされ得るすべてのエントリ点が求められる。これらのエントリ点において、再コンパイルされたコードのなかにそれぞれ特別なビットパターン(NOP)が発生され、このビットパターンは一方では目的ハードウェアのダミー命令を示すが、他方では原始ハードウェアに対する有効なオペレーションを示さない。さらに、非ローカルな分岐からのすべての可能性のある離脱点において、ラン時点で相応の飛越しの飛越し宛て先を、そこに特別なビットパターン(NOP)が存在しているか否かに関して検査するプログラムコードが発生される。この検査の結果が否定であれば、エミュレータ(EM)が能動化され、このエミュレータがその結果として原始ハードウェアに対する転送不可能なコード(A、B)として存在しているエントリされた目的ハードウェア上のプログラム部分をエミュレートする。エミュレーションの際に同じくすべての可能性のある非ローカルな飛越しの際に、目的アドレスに特別なビットパターン(NOP)が存在しているか否かが検査され、また場合によってはエミュレーションが終了される。

Description

【発明の詳細な説明】 転送可能および転送不可能なプログラム部分を有するプログラムを移送するた めの方法 本発明は、原始ハードウェアに対して存在するプログラムコードを原始ハード ウェアと異なるアーキテクチャを有する目的ハードウェアに対するプログラムコ ードに移送するための方法であって、移送すべきプログラムコードが転送可能お よび転送不可能なプログラム部分から成っている場合に用いられる方法に関する 。 各々の規模の計算機設備の能力への増大する要求は、しばしば新しい計算機世 代への、たとえばRISCアーキテクチャを有する計算機への、切換を必要とす る。しかし、この計算機のより高い能力を、既存の膨大かつ貴重なソフトウェア ベースを放棄することなしに、利用し得るためには、オペレーティングシステム 、アプリケーション、音声コンパイラーなどに対する既存のプログラムの転用が 必要である。標準化された標準言語の原始コードのなかに存在するこれらのプロ グラムの部分は、たいてい簡単な再コンパイリングにより、ここで目的ハードウ ェアと呼ばれる新しい計算機に移送され得る。それに対して、ハードウェアに関 係する、たとえばアセンブラー言語で書かれているプログラム部分はたいてい費 用のかかる方法によりアセンブラー‐またはオブジェクトコードレベル上で目的 ハードウェアに対する相応のプログラムコードに変換されるか、新しい計算機上 でラン時点でエミュレーションの枠内で実行されなければならない。その際に、 エミュレーションのもとでのプログラムの実行速度が目的ハードウェアに対して 再コンパイルされた同一のプログラムの際よりも何倍も長くなるという欠点があ る。しばしばプログラムの構成要素の大部分は再コンパイリングにより目的ハー ドウェア上に伝送され得るので、これらの転送可能なハードウェア固有のプログ ラム部分ならびに残留するハードウェア固有のプログラム部分を、プログラムの 転送不可能な部分のみがエミュレーションを受ければよいように、目的ハードウ ェア上で進行可能なプログラムコードに接続することが望ましい。 これまでの、例えばR.L.Sites 、A.Chernoff、M.B.Kirk、M.P.Marks 、S.G.Ro binson著「2進翻訳(Dinary Translation)」、Comm.ACM、第3巻、第 2号、1993年2月から公知の方法は一般に下記の2つの試みの1つに基づい ている。 1)進行可能なプログラム内で転送不可能な、原始ハードウェアに対するコー ドとして存在するプログラム部分から直接に呼出し可能であるべき再コンパイル された部分プログラムに対しては、手動でいわゆる起動ルーチンが実行される。 これらのルーチンは次いで移送されるプログラムコードのラン時点で再コンパイ ルされたプログラム部分からエミュレートされたプログラム部分への(またはそ の逆の)プログラムの流れの切換のために必要なすべての変換、切換などを行う 。しかし、その際に一般に起動ルーチンの実行のためのプログラミング費用が高 いことが欠点としてあげられる。 2)エミュレートすべき、原始ハードウェアのコード内に書かれたプログラム 部分は、目的ハードウェア上で特別に保護されているメモリ範囲のなかに、また 再コンパイルされたプログラム部分は相応に保護されていない範囲のなかに格納 される。次いでラン時点で再コンパイルされたプログラム部分から原始ハードウ ェアのコード内の保護されて格納されているプログラム部分のなかへの飛越しが 行われると、信号化(一般にハードウェア割込み)がレリーズされ、またそれに よって相応のエントリされたプログラム部分を実行するエミュレータが呼び出さ れる。エミュレーションはその後に、プログラム経過中に、保護されていないメ モリ範囲内に位置しており、従ってまた目的ハードウェアに対して再コンパイル されたプログラムコードに属するアドレスがエントリされると直ちに終了される 。 これらの方法に対しては(たとえばDEC‐アルファ‐ハードウェアのような )目的ハードウェアが、特別なメモリ範囲を、そのなかに記憶されているデータ シーケンスを命令シーケンスとして解釈しかつ実行する試みが信号発生に通ずる ように保護する可能性を提供しなければならない。しかしこれはあらゆる計算機 で実現できないことである。さらにその際に、再コンパイルされたプログラム部 分とエミュレートされたプログラム部分との間の切換わりの際に行われる直接実 行とエミュレーションとの間の移行(一般に割込み処理)がエミュレーションの 直接的な能動化に比較して明らかに遅いという欠点がある。 従って、本発明の課題は、原始ハードウェアに対して存在するプログラムコー ドを原始ハードウェアと異なるアーキテクチャを有する目的ハードウェアに対す るプログラムコードに移送するための方法であって、移送すべきプログラムコー ドが転送可能および転送不可能なプログラム部分から成っている場合に用いられ る方法において、上記の公知の方法にくらべて改善され、ており、また上記の欠 点を回避する方法を提供することである。 この課題は、本発明によれば、請求項1にあげられている特徴を有する方法に より解決される。 その際に、原始ハードウェアに対して書かれたプログラムの、与えられた目的 ハードウェア上に転送可能な原始コードの形態で(たとえば標準化された標準言 語で)存在している部分が目的ハードウェアに対して翻訳(再コンパイル)され る。再コンパイリングの際に、転送可能な原始コードのなかに生ずる、他のプロ グラム部分からエントリされ得る、可能性のあるすべてのエントリ個所が求めら れる。これにはたとえばサブプログラムエントリ後の復帰点も属する。これらの 個所において次いで目的ハードウェアに対する再コンパイルされたプログラムコ ードの発生の際に、一方では目的ハードウェアのダミー命令(nop=ノーオペ レーション)を示すが、他方では原始ハードウェアに対する有効なオペレーショ ンを示さない特別なビットパターンが挿入される。さらに、転送可能なプログラ ム部分の再コンパイリングの際に、非ローカルな、すなわちこのプログラム部分 から出る分岐のすべての可能性のある離脱点が求められる。再コンパイルされた プログラムのなかで相応の個所においてコードが発生され、このコードが、目的 ハードウェア上でのその実行の際に相応の非ローカルな分岐の飛越し宛て先が、 そこに特別なビットパターンが存在しているか否かに関して検査する。検査の結 果が肯定であれば、エントリされたプログラム部分は同じく伝送された、従って また直接に目的ハードウェア上で実行可能なプログラム部分に属し、またプログ ラム実行がそこで妨げられずに継続され得る。しかし、検査の結果が否定であれ ば、エミュレータが能動化され、このエミュレータが、その結果として原始ハー ドウェアに対する転送不可能なコードとして存在している、エントリされたプロ グラム部分を目的ハードウェア上でエミュレートする。エミュレーションの際に 次いで同じくすべての可能性のある非ローカルな飛越しの際に、目的アドレスに 特別なビットパターンが存在しているか否かが検査される。この検査の結果が肯 定であれば、飛越し宛て先は再コンパイルされたコードのなかのプログラム個所 であり、また(ゆっくりした)エミュレーションがその結果として終了される。 この検査の結果が否定であれば、別の非ローカルな分岐が生ずるまで、またはプ ログラム終端が到達されるまで、エミュレーションが相応に継続されなければな らない。 本発明による方法はこうして、転送可能および転送不可能なプログラム部分か ら成る原始ハードウェアに対するプログラムコードを相異なる計算機アーキテク チャを有する目的ハードウェア上に簡単かつ効率的に移送することを可能にする 。その際に、特別なビットパターン、飛越し個所を求めかつ検査するための命令 の自動的な実行、および直接的な命令実行と再コンパイルされたコードのなかの エミュレートされた命令実行との間の自動的な移行により、原始コードの転送不 可能なプログラム部分に対する起動ルーチンのたいてい費用のかかる手動による 実行が省略される。本方法は、そのつどの目的ハードウェア上に実行保護された メモリ範囲が設けられているか否かに無関係に、使用可能であり、従ってまた特 別な計算機形式に制限されていない。 本発明による方法の有利な実施形態は従属請求項の対象である。 本発明の実施形態によれば、移送された、目的ハードウェア上で進行可能なプ ログラムコードのなかに、原始ハードウェアに対する転送可能なプログラムコー ドの再コンパイリングから生ずるものではなく、既に目的ハードウェアに対する 目的コードの形態で存在しており、従ってまた特別なビットパターンを含んでい ないプログラム部分、たとえばライブラリからの特別なルーチン、も受け入れら れる。これらのプログラム部分は、それらが再コンパイルまたはエミュレートさ れたプログラム部分との結び付きを形成する相応の起動ルーチンを設けられるこ とによって、進行可能なプログラムコードのなかに受け入れられる。このような 既に目的ハードウェアに対するコードとして存在しているプログラム部分の結び 入れはなかんずく、それが原始ハードウェアのコードのなかの相応のルーチンを 置換する、目的ハードウェアに対して特別に最適化された、たとえば複雑な数学 的ルーチンであるときに有利である。原始コードのなかに原始ハードウェア上で 転送不可能なコードとして実現されている標準ライブラリルーチンが呼び出され る場合に対しても、目的ハードウェアに対する相応のライブラリからの等価なル ーチンの使用は目的にかなっている。 以下、本発明による方法の詳細を1つの例について図面を参照して一層詳細に 説明する。 図1は目的ハードウェア上で進行可能なプログラムコードへの転送不可能およ び転送可能なプログラム部分の結び付きの概要を、 図2は再コンパイルされたプログラム部分からの非ローカルな飛越しの際のプ ログラムの流れを制御するための流れ図を、 図3はエミュレートされたプログラム部分からの非ローカルな飛越しの際のプ ログラムの流れを制御するための流れ図を示す。 移送のための本発明による方法の基本原理は図1中に例として4つのプログラ ム部分A、B、C、Dを含んでいるプログラムに対して示されている。両プログ ラム部分AおよびBはその際に目的ハードウェア上に転送可能でない。なぜなら ば、例えば、それに対しては原始コードが転送可能な標準言語の形態で存在しな いからである。それに対して他の両プログラム部分CおよびDは転送可能であり 、従ってまた本発明により目的ハードウェアに対して変換(再コンパイル)され る。再コンパイリングの際に転送可能なプログラムのなかへの飛越しのすべての 可能性のあるエントリ点が求められ、また変換されたコードのなかでこれらの個 所においてそれぞれ特別のビットパターンNOPが挿入される。命令として解釈 されてこのビットパターンNOPは目的ハードウェア上ではダミー命令であるが 、原始ハードウェア上では有効な命令ではない。すべての4つのプログラム部分 A、B,CおよびDは原始ハードウェアに対するプログラムの移送の際にアセン ブルルーチン(バインダー)BINにより目的ハードウェア上で進行可能なプロ グラムコードPCに結び付けられ、このプログラムコードには目的ハードウェア 上で原始ハードウェアのコード内に存在する両プログラム部分AおよびBのエミ ュレートするためのエミュレータEMも付け加えられる。移送されるプログラム コードPCのラン時点でコントロールフローが再コンパイルされたプログラム部 分C またはDから直接に原始ハードウェアから引き継がれたプログラム部分Aまたは Bへ切換わると、エントリされる個所において特別な、原始ハードウェアのコー ド内で全く許されないビットパターンNOPが存在せずに、他のビットパターン BM1またはBM2が存在する。それに応じて飛越し宛て先において見出された ビットパターンの検査の後に、エントリされた、転送されないプログラム部分A またはBを実行するため、エミュレータEMが呼び出される。エミュレーション は、特別なビットバターンNOPが存在する飛越し宛て先へのコントロールフロ ーの分岐が行われるまで、継続される。従って、エントリされるプログラム部分 は目的ハードウェア上で直接にエミュレーションなしに実行される再コンパイル されたプログラム部分CまたはDである。 図2には流れ図により再コンパイルされたプログラム部分CまたはDからの非 ローカルな飛越しの場合に対して目的ハードウェア上の移送されるプログラムコ ードPCの実行の際のコントロールフローの経過が示されている。目的アドレス において存在するビットパターンは読まれ、特別なビットパターンとの合致に関 して検査される。両ビットパターンが同一であれば、次いで再コンパイルされた プログラム部分CまたはDのなかに位置している指定された飛越し宛て先への飛 越しが行われる。他の場合には飛越し宛て先は原始ハードウェアから引き継がれ るプログラム部分AまたはBのなかに位置し、その結果としてエミュレーション が能動化される。 エミュレートされたプログラム部分AまたはBからの非ローカルな飛越しの際 のコントロールフローの経過に対する逆の場合が図3に示されている。飛越し宛 て先においで特別なビットバターンNOPが存在するならば、エントリされたプ ログラム部分は再コンパイルされたプログラム部分CまたはDであり、従ってエ ミュレーションは終了され得る。他の場合には、エントリされたプログラム部分 は同じくエミュレートされなければならない。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ウェーバー、クリスチアン ドイツ連邦共和国 デー―85586 ポイン グ リンダッヒャー シュトラーセ 3 アー 【要約の続き】 越し宛て先を、そこに特別なビットパターン(NOP) が存在しているか否かに関して検査するプログラムコー ドが発生される。この検査の結果が否定であれば、エミ ュレータ(EM)が能動化され、このエミュレータがそ の結果として原始ハードウェアに対する転送不可能なコ ード(A、B)として存在しているエントリされた目的 ハードウェア上のプログラム部分をエミュレートする。 エミュレーションの際に同じくすべての可能性のある非 ローカルな飛越しの際に、目的アドレスに特別なビット パターン(NOP)が存在しているか否かが検査され、 また場合によってはエミュレーションが終了される。

Claims (1)

  1. 【特許請求の範囲】 1.原始ハードウェアに対して存在するプログラムコードを原始ハードウェアと 異なるアーキテクチャを有する目的ハードウェアに対するプログラムコード(P C)に移送するための方法であって、移送すべきプログラムコードが転送可能お よび転送不可能なプログラム部分(A、BまたはC、D)から成っている場合に 用いられる方法において、 −転送可能なプログラム部分(C、D)が目的ハードウェアに対するコードに変 換され、またその際に −これらの転送可能なプログラム部分(C、D)が他のプログラム部分(A、 B、C、D)からエントリされ得るすべての可能なエントリ点が求められ、 −これらの転送可能なプログラム部分(C、D)のなかのすべてのこのような エントリ点において、一方では目的ハードウェアのダミー命令を表し、他方では 原始ハードウェアに対する有効なオペレーションを生じない特別なビットパター ン(NOP)が発生され、 −非ローカルの、これらの転送可能なプログラム部分(C、D)の1つから外 に通ずる分岐のすべての可能性のある離脱点において、ラン時点で目的ハードウ ェア上で相応の離脱の分岐宛て先を、そこに特別なビットパターン(NOP)が 存在するかどうかに関して検査するプログラムコードが発生され、存在しない場 合には、結果として原始ハードウェアに対する転送不可能なコードとして存在す る、エントリされたプログラム部分(A、B)を目的ハードウェア上でエミュレ ートするエミュレータ(EM)を能動化し、その際に −エミュレーションの際に同じくエミュレートされたプログラム部分からのす べての可能性のある非ローカルの離脱点において、目的アドレスに特別なビット パターン(NOP)が存在するかどうかが検査され、存在する場合には、エミュ レーションが終了される ことを特徴とする方法。 2.目的ハードウェア上で進行可能なプログラムコード(PC)において、目的 ハードウェアに対する目的コードの形態でも存在し、原始ハードウェアに対する 転送可能なプログラムコードの翻訳から生ぜず従ってそれらの命令シーケンスが 特別なビットパターン(NOP)を含んでいないプログラム部分が、これらのプ ログラム部分が場合によっては再コンパイルまたはエミュレートされたプログラ ム部分(A、B、C、D)への結び付きを形成する起動ルーチンを設けられるこ とによって、引き継がれることを特徴とする請求項1記載の方法。
JP10504636A 1996-07-09 1997-06-16 転送可能および転送不可能なプログラム部分を有するプログラムを移送するための方法 Pending JPH11514119A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE19627666.7 1996-07-09
DE19627666 1996-07-09
PCT/DE1997/001220 WO1998001805A1 (de) 1996-07-09 1997-06-16 Verfahren zur migration von programmen mit portierbaren und nicht-portierbaren programmteilen

Publications (1)

Publication Number Publication Date
JPH11514119A true JPH11514119A (ja) 1999-11-30

Family

ID=7799357

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10504636A Pending JPH11514119A (ja) 1996-07-09 1997-06-16 転送可能および転送不可能なプログラム部分を有するプログラムを移送するための方法

Country Status (5)

Country Link
US (1) US6128590A (ja)
EP (1) EP0910825B1 (ja)
JP (1) JPH11514119A (ja)
DE (1) DE59712827D1 (ja)
WO (1) WO1998001805A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002536712A (ja) * 1999-01-28 2002-10-29 エーティーアイ インターナショナル エスアールエル 第2のアーキテクチャのコンピュータにおける第1のコンピュータアーキテクチャ用プログラムの実行
JP2014206948A (ja) * 2013-04-16 2014-10-30 株式会社東芝 エントリーポイント抽出装置

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19908866C1 (de) * 1999-03-01 2000-09-28 Re Start Ges Fuer Back Up Syst Verfahren zum Übertragen eines Softwaresystems auf andere Hardwareplattformen
US7080159B2 (en) * 2000-12-15 2006-07-18 Ntt Docomo, Inc. Method and system for effecting migration of application among heterogeneous devices
US6842905B2 (en) * 2001-03-29 2005-01-11 International Business Machines Corporation Method and system for implementing collection program interface for accessing a collection of data associated with a legacy enumeration application interface
US7937704B2 (en) * 2002-06-20 2011-05-03 British Telecommunications Public Limited Company Distributed computer
GB0230331D0 (en) * 2002-12-31 2003-02-05 British Telecomm Method and apparatus for operating a computer network
GB0412655D0 (en) * 2004-06-07 2004-07-07 British Telecomm Distributed storage network
US7584459B2 (en) * 2005-01-14 2009-09-01 International Business Machines Corporation Method for providing computing-environment control of a resource to be accessed by program code
US9058193B2 (en) * 2013-11-14 2015-06-16 Google Inc. Methods and systems for providing compatibility of applications with multiple versions of an operating system
US9348625B2 (en) 2014-05-23 2016-05-24 Google Inc. Application access to native and bundled libraries

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2122802A5 (ja) * 1971-01-21 1972-09-01 Ibm France
US5313614A (en) * 1988-12-06 1994-05-17 At&T Bell Laboratories Method and apparatus for direct conversion of programs in object code form between different hardware architecture computer systems
MX9200935A (es) * 1991-03-07 1993-03-01 Digital Equipment Corp Sistema y metodo para detectar llamadas de instruccion de dominio cruzado en un sistema de computadora
US5841670A (en) * 1994-03-09 1998-11-24 Texas Instruments Incorporated Emulation devices, systems and methods with distributed control of clock domains
US5621651A (en) * 1994-03-09 1997-04-15 Texas Instruments Incorporated Emulation devices, systems and methods with distributed control of test interfaces in clock domains
US5664231A (en) * 1994-04-29 1997-09-02 Tps Electronics PCMCIA interface card for coupling input devices such as barcode scanning engines to personal digital assistants and palmtop computers
US5560013A (en) * 1994-12-06 1996-09-24 International Business Machines Corporation Method of using a target processor to execute programs of a source architecture that uses multiple address spaces

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002536712A (ja) * 1999-01-28 2002-10-29 エーティーアイ インターナショナル エスアールエル 第2のアーキテクチャのコンピュータにおける第1のコンピュータアーキテクチャ用プログラムの実行
JP2014206948A (ja) * 2013-04-16 2014-10-30 株式会社東芝 エントリーポイント抽出装置

Also Published As

Publication number Publication date
EP0910825A1 (de) 1999-04-28
WO1998001805A1 (de) 1998-01-15
DE59712827D1 (de) 2007-04-26
US6128590A (en) 2000-10-03
EP0910825B1 (de) 2007-03-14

Similar Documents

Publication Publication Date Title
AU2004200608B2 (en) Extreme pipeline and optimized reordering technology
US6964039B2 (en) Method to create optimized machine code through combined verification and translation of JAVA™ bytecode
US6247172B1 (en) Method for a translation system that aggressively optimizes and preserves full synchronous exception state
EP1074910A1 (en) Method and apparatus for multiplatform instruction set architecture
US20070006178A1 (en) Function-level just-in-time translation engine with multiple pass optimization
CA2249042A1 (en) Method for generating a java bytecode data flow graph
Cifuentes et al. The design of a resourceable and retargetable binary translator
US7694289B2 (en) Method for embedding object codes in source codes
KR101407629B1 (ko) 자바 변환 가속 장치 및 방법
JPH11514119A (ja) 転送可能および転送不可能なプログラム部分を有するプログラムを移送するための方法
US6625807B1 (en) Apparatus and method for efficiently obtaining and utilizing register usage information during software binary translation
Cifuentes et al. Experience in the design, implementation and use of a retargetable static binary translation framework
US20030110478A1 (en) Portable run-time code synthesis in a caching dynamic translator
US7219337B2 (en) Direct instructions rendering emulation computer technique
US6978451B2 (en) Method for fast compilation of preverified JAVA bytecode to high quality native machine code
US7219335B1 (en) Method and apparatus for stack emulation during binary translation
US6792600B1 (en) Method and apparatus for just in time compilation of instructions
AU651682B2 (en) Improved system and method for detecting cross-domain instruction calls and data references especiallly adapted for code interface jacketing in a multi-code execution and debugging system within a multi-architecture environment
JP3889227B2 (ja) プログラム実行装置、プログラム実行方法、記録媒体、及び制御プログラム
Hütter Mixter: Towards Simultaneous Emulation and Virtualization
CN112162736A (zh) 一种在相同cpu指令集设备间实现软件跨平台二进制兼容的装置和方法
JPH07248923A (ja) コンパイラ
Cifuentes et al. A transformational approach to binary translation of delayed branches with applications to SPARC® and PA-RISC instructions sets
JPH1083311A (ja) シミュレータ
Van Emmerik et al. The Design of a Resourceable and Retargetable Binary Translator