JPH05204617A - 特定のコンピュータ・ハードウェア・アーキテクチャのために作成されたソフトウェアのバージョンの互換性を確保する装置および方法 - Google Patents

特定のコンピュータ・ハードウェア・アーキテクチャのために作成されたソフトウェアのバージョンの互換性を確保する装置および方法

Info

Publication number
JPH05204617A
JPH05204617A JP4181600A JP18160092A JPH05204617A JP H05204617 A JPH05204617 A JP H05204617A JP 4181600 A JP4181600 A JP 4181600A JP 18160092 A JP18160092 A JP 18160092A JP H05204617 A JPH05204617 A JP H05204617A
Authority
JP
Japan
Prior art keywords
hardware
version
software
comparison
indication
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.)
Granted
Application number
JP4181600A
Other languages
English (en)
Other versions
JP3227542B2 (ja
Inventor
Curtis Priem
カーティス・プリーム
Chris Malachowsky
クリス・マラコウスキー
Bruce Mcintyre
ブルース・マッキンタイアー
Mofato Gay
ガイ・モファット
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.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
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 Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of JPH05204617A publication Critical patent/JPH05204617A/ja
Application granted granted Critical
Publication of JP3227542B2 publication Critical patent/JP3227542B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • 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/445Program loading or initiating
    • G06F9/44536Selecting among different versions
    • G06F9/44542Retargetable
    • 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/45533Hypervisors; Virtual machine monitors
    • G06F9/45537Provision of facilities of other operating environments, e.g. WINE

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【目的】 新しい機能を実行するアーキテクチャの新し
いバージョンが、そのアーキテクチャに対するソフトウ
ェアの古いバージョンと新しいバージョンの両方を走ら
せることができるようにする方法と装置を得ることであ
る。 【構成】 この装置は、ハードウェア・バージョン・レ
ジスタと、フトウェアの特定のバージョンを動作させる
ために用いられるハードウェアのバージョンの指示を提
供する装置と、ソフトウェア・バージョン・レジスタ
と、ハードウェアの特定のバージョンで走っているソフ
トウェアのバージョンの指示を提供する装置と、ハード
ウェアのバージョンとソフトウェアのバージョンを比較
する装置と、比較結果に応答して、ソフトウェアのバー
ジョンがハードウェアのバージョンで正しく走るよう
に、ハードウェア内のデフォールトおよび可能化回路を
セットする装置とを含む。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はコンピュータ回路に関す
るものであり、更に詳しくいえば、新しい機能を実行す
るアーキテクチャの新しいバージョンが、そのアーキテ
クチャに対するソフトウェアの新,旧双方のバージョン
で実行できる方法および装置に関するものである。
【0002】
【従来の技術】コンピュータ回路が設計される時は、そ
のコンピュータ回路へはある機能が与えられる。時間ま
たは費用の制約のために、または製品が経済的に成功す
るかどうかはわからないから、設計者が目論む機能の全
てより少ない機能が含まれない。省されたそれらの機能
はハードウェアの後のバージョンでしばしば実現され
る。多少類似するやり方で、ユーザーがそれらの機能に
ついて要求したとき、機能を実現する方法が発見された
とき、または機能を実現する手段が得られた時に、新し
い機能がコンピュータ・ハードウェアに含ませられる。
それらの理由およびその他の理由から、成功したハード
ウェアの設計は何回も改良される。そして後で行われる
改良ほど以前の改良よりも多くの機能を提供する。コン
ピュータ装置のための特定のアーキテクチャの最初のバ
ージョンが現れると、ハードウェアが実現する諸機能を
使用するために、ソフトウェアの最初のバージョンが書
かれる。ハードウェアの後のバージョンが追加の機能を
付加されて発表されると、それらの新しい機能を使用す
るためにソフトウェアの新しいバージョンも発表され
る。ソフトウェアの以前のバージョンを新しいハードウ
ェア・バージョンで走らせることができるように、ハー
ドウェアの設計者は設計したハードウェアがソフトウェ
アの以前のバージョンの全てを使用できるようにするこ
とを試みる。それを行うことができなければ、ハードウ
ェアが大量に販売される前にソフトウェアが開発される
ことをハードウェアは待たねばならない。ハードウェア
の種々の改良を行ったやり方のために、その互換性が可
能でないことが時にある。後の製品との間の互換性が失
われたことにより、優れた製品が販売的に失敗するよう
になったことも知られている。
【0003】同様に、後で改良されたハードウェアの諸
機能を用いるソフトウェアの後の各バージョンを以前の
ハードウェアで走らせることができて、より大量に売れ
るように、プログラマはハードウェアの以前のバージョ
ンにそのソフトウェアが使用できるようにすることを試
みる。しかしそれは可能でないこともあり、そうすると
ソフトウェアの市場は市場に出ている少数の新しいハー
ドウェアに限られることになる。
【0004】
【発明が解決しようとする課題】したがって、本発明の
目的は、ハードウェアの新しいバージョンに、そのハー
ドウェアの古いバージョンのために作成されたソフトウ
ェアのバージョンを使用できるようにするための方法と
装置を得ることである。本発明の別の目的は、ハードウ
ェアの特定のバージョンで使用できるソフトウェアを決
定できるようにし、かつハードウェアをそのソフトウェ
アで動かせるように構成できるようにする方法と装置を
得ることである。
【0005】
【課題を解決するための手段】本発明のそれらの目的お
よびその他の目的は、ハードウェア・バージョン・レジ
スタと、ソフトウェアの特定のバージョンを実行させる
ために利用されるハードウェアのバージョンの指示を提
供する手段と、ソフトウェア・バージョン・レジスタ
と、実行されるソフトウェアが設計されるハードウェア
のバージョンの指示を提供する手段と、ハードウェアの
バージョンの指示と実行されるソフトウェアが設計され
るハードウェアのバージョンの指示とを比較する手段
と、比較の結果に応答して、ハードウェアがソフトウェ
アより新しいものであるならば、ハードウェア内のデフ
ォールトおよびイネイブリング回路をセットする手段
と、比較の結果に応答し、機能に対してのみ、ソフトウ
ェアにハードウェアを参照させ、ソフトウェアのバージ
ョンがハードウェアのバージョンで正しく走るように、
ハードウェア内にない機能をエミュレートする手段と、
を備える特定のコンピュータ・ハードウェア・アーキテ
クチャに対して作成されたソフトウェアの互換性を確保
する装置で実現される。
【0006】以下に記す詳細な説明のある部分は、コン
ピュータ・メモリ内のデータ・ビットについてのオペレ
ーションの記号表現に関して行う。それらの説明および
表現は、データ処理技術の分野における専門家が、自己
の業績をその分野における他の専門家へ最も効果的に伝
えるために用いる手段である。通常は、それらの量は記
憶、転送、組合わせ、比較およびその他の操作を行うこ
とができる電気信号または磁気信号の形をとるが、必ず
しもそうする必要はない。主として一般的に用いられる
という理由から、それらの信号をビット、値、素子、記
号、キャラクタ、項、数等と呼ぶことが時には判明して
いる。しかし、それら全ての用語および類似の用語は、
適切な物理量に関連づけるべきであること、およびそれ
らの量につけられる便利なレッテルに過ぎないことを記
憶すべきである。
【0007】更に、実行される操作は加算または比較の
ような用語でしばしば呼ばれるが、それらの加算または
比較は人により行われる精神作業に一般に関連するもの
である。本発明の部分を構成するここで述べるオペレー
ションのいずれかにおけるほとんどの場合に、人のその
ような技能は必要ではないか、望ましくない。オペレー
ションは機械オペレーションである。本発明のオペレー
ションを実行するために有用なマシンは、汎用デジタル
・コンピュータまたは他の類似の装置を含む。あらゆる
場合に、コンピュータを動作させる際の方法オペレーシ
ョンとコンピュータ自体のオペレーションの間の区別を
記憶せねばならない。本発明は、他の希望の物理的信号
を発生するために、電気信号またはその他の(たとえば
機械的、化学的)物理的信号の処理においてコンピュー
タを動作させるための装置および方法ステップに関する
ものである。
【0008】あるソフトウェア・プログラムがあるコン
ピュータ・ハードウェアの種々の機能を利用できるよう
にするために、そのプログラムはそれが取扱うハードウ
ェアの特定のバージョンを理解せねばならない。これを
行うために、いくつかの製造者たちは、要求に応じてハ
ードウェア・バージョンの番号を提供するレジスタをハ
ードウェアに設ける。一般に、それらのレジスタはハー
ドワイヤされた読出し専用レジスタであって、ソフトウ
ェアからの指令により読出すことができる。ハードウェ
ア・バージョン・レジスタに含まれているデータは、特
定のハードウェア部分と、そのハードウェアのバージョ
ンとを指示する。
【0009】そのようなレジスタを設けることにより、
ソフトウェアの新しいバージョンはハードウェアのバー
ジョンの読出しと、利用可能なハードウェアのバージョ
ンの機能性に従っての実行とを行うことができるように
される。すなわち、ソフトウェアを実行するハードウェ
アのバージョンを見ているそのソフトウェアは、そのハ
ードウェアで行われるようにされている機能だけを実行
できる。これは非常に重要である。というのは、古いハ
ードウェアでは走らず、そのハードウェアを非適切に動
作させることがある機能をソフトウェアが試みないよう
に、ソフトウェアを作成できるからである。
【0010】他方、用いられているハードウェアよりも
古いバージョンのハードウェアで実行するためにソフト
ウェアのバージョンが開発されたとすると、そのハード
ウェア・バージョンが知らないより新しいバージョン番
号を読取っても、それによりソフトウェアをそのより新
しいバージョンに適用できるような情報は与えられな
い。ソフトウェアは新しいハードウェアで実現できるか
もしれない機能についての知識を持つことはできない。
【0011】更に、ハードウェアの古いバージョンで走
らされるように構成されたソフトウェアにより与えられ
た指令へ不正確に応答するように、ハードウェアの新し
いバージョンが古いバージョンから変更されたものとす
ると、その新しいバージョンはその古いソフトウェアで
は走ることはできない。そうするとそのハードウェアの
売れ行きは大幅に落ち込むことがある。ソフトウェアの
互換性を保ちながらハードウェアの新しい機能を実現す
ることは時には非常に困難であるから、それはしばしば
費用が非常にかかることもある。しかし、ハードウェア
を大量に販売することは得であるから、互換性を維持す
るためにはハードウェアの設計者は通常何でもする。
【0012】ハードウェアの初期のバージョンは、ハー
ドウェアのより新しいバージョンにおいてどのような変
更が加えられるかを知ることができないことは明かであ
るから、ソフトウェアの古いバージョンに対する互換性
に対して適合できるのは新しいハードウェアにおいての
みであることは明かであろう。
【0013】この問題に対する簡単でうまい解決策が発
見されている。ハードウェアの全てのバージョンに、ソ
フトウェアのバージョン番号を記憶するレジスタを設け
ることにより、そのソフトウェア・バージョン番号と、
ハードウェア・バージョン・レジスタにおいてハードワ
イヤされているハードウェア・バージョンとを比較でき
る。ソフトウェア・バージョン番号は、そのソフトウェ
アの作成対象であるハードウェアのバージョンを指示す
るソフトウェアにより提供される値である。ソフトウェ
アとハードウェアのいずれを後で開発するかに応じて、
比較は、実現するために作成されるソフトウェアが対象
とするハードウェアの機能と、不正確に応答するかも知
れない他の機能とを不能にすることを許す。
【0014】たとえば、ソフトウェアが古いハードウェ
ア・バージョンで走る新しいバージョンであるとする
と、ソフトウェアによる比較により、ソフトウェア・バ
ージョン・レジスタ内のバージョン番号がハードウェア
・バージョン番号・レジスタ内のバージョン番号より大
きいことを示す。この違いは、ソフトウェアのどの機能
がハードウェアで実現されず、したがってそのハードウ
ェアで走ることができないことを示す。この比較は、ソ
フトウェアが走っているハードウェアのバージョンに対
するある指定をなくすことににより、そのソフトウェア
にハードウェアのそのバージョンを適応させる。ソフト
ウェアは、値を記憶させてあるハードウェア・オペレー
ションを実行すべきではないことを指示することによ
り、それを行うことができる。その場合には、ソフトウ
ェアは、ハードウェアのオペレーションのうち、古いハ
ードウェアの部分ではなくて、新しいソフトウェアの機
能として含まれているオペレーションをエミュレートす
るためのプロセスを提供する。そうすると、比較が行わ
れた時に、その機能を実行できないことをソフトウェア
は認識するから、その機能をハードウェアで試みること
はしない。その代わりに、機能が試みられる時は、ソフ
トウェアは、失われたハードウェア機能をエミュレート
するソフトウェア・プロセスへソフトウェアは常に移動
する。
【0015】ソフトウェアが、古いハードウェア・バー
ジョンで走っている新しいバージョンであるならば、バ
ージョン番号を比較してもハードウェアのオペレーショ
ンには何ら影響を及ぼさない。ハードウェアはそれが常
に提供している機能の全ての提供を続けるだけである。
必要な全ての調整は新しいソフトウェアにより注意され
る。他方、ハードウェアが新しいバージョンで、ソフト
ウェアが古いバージョンの場合には、比較によってハー
ドウェアは、古いソフトウェアが見ることを予測するよ
うなハードウェアであるかのようにハードウェア自身を
構成させる。ハードウェアは、古いソフトウェアが実行
できないそれらの新しい機能を不能にすることにより、
それを行う。典型的には、これは状態をセットし、それ
らの古いソフトウェア機能を不能状態にするために、ハ
ードウェア内の論理を用いることにより行われる。ハー
ドウェアが新しいバージョンで、ソフトウェアが古いバ
ージョンである場合には、比較は古いソフトウェア・バ
ージョンに何の影響も及ぼさない。そのソフトウェア
は、それの設計対象であるハードウェアの古いバージョ
ンで典型的に走るように単に走る。
【0016】最後に、そのソフトウェアが2つのレジス
タ内の値が等しいように、ハードウェアのその特定のバ
ージョンに対してとくに構成されたバージョンであると
すると、比較はハードウェアとソフトウェアのいずれか
にも影響を及ぼさない。各々は走ることを予測されてい
る典型的なやり方で走る。
【0017】
【実施例】図1は一対のレジスタ10と12を示す。レ
ジスタ10は、電力がハードウェアへ供給された時に特
定のハードウェアの値を記憶するためにハードワイヤさ
れた、読出し専用レジスタで構成できる。その値はハー
ドウェアのバージョンを指示できる。わかるように、1
6種類のバージョンを指示できるように、4ビット位置
が設けられる。他方、ソフトウェアの特定のバージョン
により供給される値を記憶するためにレジスタ12を使
用できる。また、ソフトウェアの16種類のバージョン
を記憶できるように4ビット位置が設けられる。本発明
の好適な実施例においては、その値は、ソフトウェアの
設計対象であるハードウェアのバージョンを指示する。
他方、その値はソフトウェアの実際のバージョンと、ど
の機能がどの機能により提供されるかを指示するために
供給されるルックアップ・テーブルとを示すこともあ
る。
【0018】レジスタ10と12に記憶されている各値
はハードウェア比較回路14へ供給される。ハードウェ
アは、比較器を用いて比較を行わせる回路を含む。ハー
ドウェアのバージョンが、そのソフトウェアのバージョ
ンよりも新しいと、ハードウェアはその比較を用いて、
ハードウェアがあたかもそのソフトウェアの作成対象で
あるハードウェアであるように、デフォールト値をセッ
トし、ある機能を不能状態にする信号を発生する(たと
えば、状態マシンまたは組合わせ論理を用いて)。比較
の結果が図に比較器14からの種々の信号として示され
ている。ソフトウェアが、それの設計対象であるハード
ウェアのバージョンよりも新しい場合には、ハードウェ
アはそれの正常なやり方で単に作用する。
【0019】利用できるハードウェアよりも新しいハー
ドウェア・バージョン用のソフトウェアが設計された場
合には、ソフトウェアはレジスタ10内の値を読出す。
そのソフトウェアが後のハードウェア・バージョンのた
めに設計されたものであることがわかったとすると、ソ
フトウェアは、古いハードウェア・バージョンが実行で
きないオペレーションを不能にし、それらの機能を代わ
りにソフトウェアでエミュレートすべきことを指示す
る。ハードウェア・バージョンが、ソフトウェアの設計
対象であるハードウェア・バージョンよりも新しいこと
をそのソフトウェアが知った時は、そのソフトウェアは
それの正常な機能を実行するだけである。いずれにして
も、この装置により、ソフトウェアの任意のバージョン
を、2つのレジスタを含むハードウェアの任意のバージ
ョンで走らせることができる。
【0020】ソフトウェア・バージョン番号を保持する
ために用いられるレジスタは、プログラムのオペレーシ
ョン中に読出しと書込みができるものであることがとく
に望ましい。たとえば、このハードウェア回路が、プロ
グラムの出力をコンピュータ出力表示器で表示するため
に使用するグラフィックス・アクセレレータ回路である
とすると、その回路は表示器のいくつかのウインドウに
いくつかのアプリケーション・プログラムを同時に表示
できる。それらのアプリケーション・プログラムのうち
のいくつかはハードウェアのある機能を用いることがで
きるが、他のものはそれらの機能を使用できない。たと
えば、あるプログラム(新しいプログラム)は、フレー
ムのちぎれをなくすために二重バッファできるが、他の
プログラム(古いプログラム)はできないことがある。
ハードウェアが実現できる機能のために適応させられる
プログラムを実行させるためにそのハードウェアが切り
替えられるたびに、そのハードウェアはそれらの機能を
実現できると有用である。これを行うために、ソフトウ
ェア・バージョンの値を、実行中のプログラムが変更さ
れるにつれて変更できねばならない。比較は各変更で行
わねばならない。
【0021】本発明の好適な実施例においは、新しい値
がソフトウェア・バージョン・レジスタへ書込まれるた
びに新たな比較を行うことをハードウェアに要求するこ
とにより、それは行われる。それから、ソフトウェアが
ハードウェアを用いるたびに、それが最初に行うことは
ソフトウェア・バージョン・レジスタに書込んで比較を
行わせることである。同時に、ソフトウェアが自身を構
成できるように、ソフトウェアはハードウェア・バージ
ョン・レジスタを読出す。このようにして、特定のハー
ドウェアで走っているいくつかの各プログラムは、各使
用ごとに比較させて、ハードウェアとソフトウェアを正
しく互換できるようにする。
【0022】あるハードウェアは、図1に示されている
レジスタよりはるかに大きいレジスタを求めることを当
業者は知っているであろう。たとえば、多数のプログラ
ムで動作できる中央処理装置は、バージョン番号はもち
ろん、ソフトウェアの製作者の識別記号を含むために十
分なレジスタを要求することがある。一方、種々のバー
ジョンでただ1つのプログラムで機能できるハードウェ
アはそのように大きいレジスタは不要である。
【0023】図2は、種々のバージョンにおけるソフト
ウェアを特定のソフトウェア・バージョンに適応できる
ようにする、上記オペレーションのステップを示す流れ
図である。プロセスはハードウェアへの電源投入で始ま
るのが普通である。ステップ20においては、ハードウ
ェア・バージョン・レジスタ内のハードウェア・バージ
ョン番号が利用できるようになる。ステップ22におい
ては、実行中のプログラムはソフトウェア・バージョン
番号をソフトウェア・バージョン・レジスタへ書込む。
ステップ24においては、ハードウェア・バージョン・
レジスタとソフトウェア・バージョン・レジスタとに含
まれている値が比較される。ステップ26において、ハ
ードウェアがソフトウェアよりも新しいバージョンであ
るとすると、プログラムの作成対象であるハードウェア
のバージョンであるようにデフォールト値がみえるよう
に、ハードウェアはデフォールト値をセットする。しか
し、比較によってそのソフトウェアが新しいことが判明
すれば、ソフトウェアは、古いソフトウェア・バージョ
ンで実現されないそれらの新しい機能に対する呼出しを
不能にし、それらの機能をソフトウェア・プロセスで実
現すべきことを指示する。
【図面の簡単な説明】
【図1】本発明の実施に用いられるレジスタを示すブロ
ック図である。
【図2】本発明の方法を示す流れ図である。
【符号の説明】
10,12 レジスタ 14 ハードウェア比較回路
───────────────────────────────────────────────────── フロントページの続き (72)発明者 クリス・マラコウスキー アメリカ合衆国 95051 カリフォルニア 州・サンタ クララ・スラッシュ ウェ イ・3725 (72)発明者 ブルース・マッキンタイアー アメリカ合衆国 95014 カリフォルニア 州・カッパチーノ・ナンバー8イー・ロド リゲス アヴェニュ・20090 (72)発明者 ガイ・モファット アメリカ合衆国 94306 カリフォルニア 州・パロ アルト・エル カーメロ・181 エイ

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 ソフトウェアの特定のバージョンを動作
    させるために利用されるハードウェアのバージョンの指
    示を提供する手段と、実行させられるソフトウェアが設
    計されたハードウェアのバージョンの指示を提供する手
    段と、ハードウェアのバージョンの指示と実行させられ
    るソフトウェアが設計された対象であるハードウェアの
    バージョンの指示とを比較する手段と、その比較の結果
    に応答して、ハードウェアがソフトウェアより新しいの
    であれば、ハードウェア内のデフォールトおよびディス
    エイブル回路をセットする手段と、比較の結果に応答し
    て、実現できる機能に対してのみソフトウェアにハード
    ウェアを参照させ、ソフトウェアのバージョンがハード
    ウェアのバージョンで正しく実行するように、ハードウ
    ェア内にない機能をエミュレートする手段と、を備える
    特定のコンピュータ・ハードウェア・アーキテクチャに
    対して作成されたソフトウェアのバージョンの互換性を
    確保する装置。
  2. 【請求項2】 ソフトウェアの特定のバージョンを動作
    させるために利用されるハードウェアのバージョンの指
    示を提供する過程と、実行させられるソフトウェアが設
    計されたハードウェアのバージョンの指示を提供する過
    程と、ハードウェアのバージョンの指示と、実行させら
    れるソフトウェアが設計されたハードウェアのバージョ
    ンの指示とを比較する過程と、その比較の結果に応答し
    て、ハードウェアがソフトウェアより新しいのであれ
    ば、ハードウェア内のデフォールトおよびディスエイブ
    ル回路をセットする過程と、比較の結果に応答して、実
    現できる機能に対してのみソフトウェアにハードウェア
    を参照させ、ソフトウェアのバージョンがハードウェア
    のバージョンで正しく実行するように、ハードウェア内
    にない機能をエミュレートする過程と、を備える特定の
    コンピュータ・ハードウェア・アーキテクチャに対して
    作成されたソフトウェアのバージョンの互換性を確保す
    る方法。
JP18160092A 1991-06-17 1992-06-17 特定のコンピュータ・ハードウェア・アーキテクチャのために作成されたソフトウェアのバージョンの互換性を確保する装置および方法 Expired - Fee Related JP3227542B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US71667291A 1991-06-17 1991-06-17
US716672 1996-09-13

Publications (2)

Publication Number Publication Date
JPH05204617A true JPH05204617A (ja) 1993-08-13
JP3227542B2 JP3227542B2 (ja) 2001-11-12

Family

ID=24878952

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18160092A Expired - Fee Related JP3227542B2 (ja) 1991-06-17 1992-06-17 特定のコンピュータ・ハードウェア・アーキテクチャのために作成されたソフトウェアのバージョンの互換性を確保する装置および方法

Country Status (5)

Country Link
US (1) US5577232A (ja)
EP (1) EP0519695B1 (ja)
JP (1) JP3227542B2 (ja)
KR (1) KR100292005B1 (ja)
DE (1) DE69230117T2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06124194A (ja) * 1992-02-12 1994-05-06 Samsung Electron Co Ltd Cpuロジックの自動切換装置
KR100545111B1 (ko) * 1996-09-10 2006-10-11 소니 가부시끼 가이샤 데이타전송및수신장치및시스템,데이타전송방법,및데이타수신장치의파라미터설정방법

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07295911A (ja) * 1994-04-20 1995-11-10 Canon Inc データ処理装置およびネットワークシステム
US6452629B1 (en) * 1995-03-15 2002-09-17 Canon Kabushiki Kaisha System for installing image sensing program
DE19703894B4 (de) * 1997-02-03 2004-08-19 Robert Bosch Gmbh Verfahren zum Steuern eines Heizgerätes
US5978916A (en) * 1997-11-25 1999-11-02 International Business Machines Corporation Method, system and computer program product for updating region-dependent software using a common update module for multiple regions
US6615344B1 (en) * 1999-09-03 2003-09-02 Infineon Technologies North America Corp. System and method for tracking selectively enabling modules used in an integrated processor using a tracking register providing configuration information to an external pin
US6754848B1 (en) * 1999-09-30 2004-06-22 International Business Machines Corporation Method, system and program products for operationally migrating a cluster through emulation
US6452599B1 (en) * 1999-11-30 2002-09-17 Ati International Srl Method and apparatus for generating a specific computer hardware component exception handler
US6658659B2 (en) * 1999-12-16 2003-12-02 Cisco Technology, Inc. Compatible version module loading
US6677951B2 (en) * 2000-03-03 2004-01-13 Sony Computer Entertainment, Inc. Entertainment apparatus having compatibility and computer system
JP3964142B2 (ja) * 2000-08-15 2007-08-22 株式会社ソニー・コンピュータエンタテインメント エミュレート装置及び部品、情報処理装置、エミュレーション方法、記録媒体、プログラム
DE10110949A1 (de) * 2001-03-07 2002-09-26 Siemens Ag Automatisierte Versions-Analyse von zu einer Softwareapplikation gehörenden Softwarekomponenten
US6968183B2 (en) 2001-11-02 2005-11-22 Telefonaktiebolaget Lm Ericsson (Publ) Determining a multi-module dependent parameter at a telecommunication node
AU2002354094B2 (en) 2001-12-13 2006-10-19 Sony Interactive Entertainment Inc. Methods and apparatus for secure distribution of program content
JP4294488B2 (ja) 2001-12-21 2009-07-15 株式会社ソニー・コンピュータエンタテインメント プログラムのセキュアな配布方法及び装置
US7036005B2 (en) * 2001-12-31 2006-04-25 Intel Corporation Method and apparatus for modifying the contents of revision identification register
US20030167334A1 (en) * 2002-03-04 2003-09-04 Mark Henry Butler Provision of content to a client device
US7065560B2 (en) * 2002-03-12 2006-06-20 Hewlett-Packard Development Company, L.P. Verification of computer program versions based on a selected recipe from a recipe table
US20030191870A1 (en) * 2002-04-02 2003-10-09 Dominic Duggan Method and apparatus for updating software libraries
US6892320B1 (en) * 2002-06-03 2005-05-10 Sun Microsystems, Inc. Method and apparatus for providing multiple-version support for highly available objects
US7100032B2 (en) * 2002-06-28 2006-08-29 Intel Corporation Method and apparatus for identifying hardware compatibility and enabling stable software images
US7363237B1 (en) * 2002-12-31 2008-04-22 Adams Phillip M Enforcement process for correction of hardware and software defects
US20040193609A1 (en) * 2003-03-26 2004-09-30 Sony Corporation Master content directory service server for providing a consolidated network-wide content directory
US20050055352A1 (en) * 2003-09-08 2005-03-10 Sony Corporation Content directory and synchronization bridge
US20050060578A1 (en) * 2003-09-17 2005-03-17 Sony Corporation Method of and system for authentication downloading
US7925790B2 (en) * 2003-09-17 2011-04-12 Sony Corporation Middleware filter agent between server and PDA
US20050060370A1 (en) * 2003-09-17 2005-03-17 Sony Corporation Version based content distribution and synchronization system and method
US7735000B2 (en) * 2003-09-25 2010-06-08 Sony Corporation Information and content exchange document type definitions to support content distribution
JP3915808B2 (ja) * 2003-09-26 2007-05-16 オムロン株式会社 プログラマブルコントローラおよびプログラマブルコントローラシステムならびにcpuユニット
US20050165941A1 (en) * 2004-01-22 2005-07-28 Edward Eytchison Methods and apparatuses for streaming content
US8689113B2 (en) * 2004-01-22 2014-04-01 Sony Corporation Methods and apparatus for presenting content
US20050262337A1 (en) * 2004-05-24 2005-11-24 Siemens Vdo Automotive Corporation Method and device for determining flash software compatibility with hardware
EP1803062A1 (en) * 2004-09-20 2007-07-04 Sony Computer Entertainment Inc. Methods and apparatus for distributing software applications
KR100933389B1 (ko) * 2004-09-20 2009-12-22 소니 컴퓨터 엔터테인먼트 인코포레이티드 소프트웨어 애플리케이션을 에뮬레이트하는 방법 및 장치
JP2006099411A (ja) * 2004-09-29 2006-04-13 Oki Electric Ind Co Ltd ソフトウェアの使用制限方法
US7506336B1 (en) * 2005-06-29 2009-03-17 Emc Corporation System and methods for version compatibility checking
US7783878B2 (en) * 2006-04-28 2010-08-24 Nokia Corporation Methods for decoupling hardware settings from software
JP5368878B2 (ja) * 2009-05-25 2013-12-18 キヤノン株式会社 情報処理装置、製造装置及びデバイス製造方法
US9760113B2 (en) 2015-02-20 2017-09-12 Sony Interactive Entertainment America Llc Backward compatibility through use of spoof clock and fine grain frequency control
CN104978224B (zh) * 2015-07-06 2018-11-20 张兆琦 一种面向多硬件平台的应用程序管理方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4590556A (en) * 1983-01-17 1986-05-20 Tandy Corporation Co-processor combination
US4876639A (en) * 1983-09-20 1989-10-24 Mensch Jr William D Method and circuitry for causing sixteen bit microprocessor to execute eight bit op codes to produce either internal sixteen bit operation or internal eight bit operation in accordance with an emulation bit
US4677548A (en) * 1984-09-26 1987-06-30 Honeywell Information Systems Inc. LSI microprocessor chip with backward pin compatibility and forward expandable functionality
JPS6226535A (ja) * 1985-07-22 1987-02-04 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション プログラム内の変換テ−ブルの修正方法
US4763242A (en) * 1985-10-23 1988-08-09 Hewlett-Packard Company Computer providing flexible processor extension, flexible instruction set extension, and implicit emulation for upward software compatibility
EP0275448A1 (de) * 1986-12-23 1988-07-27 Siemens Aktiengesellschaft Verfahren zur Inbetriebnahme eines programmgesteuerten modular aufgebauten Kommunikationssystems
CA1269177A (en) * 1987-03-13 1990-05-15 Claude Jean Champagne System for maintaining the hardware-software compatibility of modular communication systems
JPH01287738A (ja) * 1988-05-16 1989-11-20 Toshiba Corp マイクロコンピュータ応用装置
US4979106A (en) * 1988-08-29 1990-12-18 Amdahl Corporation Customization of a system control program in response to initialization of a computer system
DE68923864T2 (de) * 1989-04-19 1996-05-02 Ibm Anordnung zur Speicher- und Peripherie-Bausteinauswahl.

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06124194A (ja) * 1992-02-12 1994-05-06 Samsung Electron Co Ltd Cpuロジックの自動切換装置
KR100545111B1 (ko) * 1996-09-10 2006-10-11 소니 가부시끼 가이샤 데이타전송및수신장치및시스템,데이타전송방법,및데이타수신장치의파라미터설정방법

Also Published As

Publication number Publication date
DE69230117D1 (de) 1999-11-18
EP0519695A2 (en) 1992-12-23
US5577232A (en) 1996-11-19
JP3227542B2 (ja) 2001-11-12
EP0519695B1 (en) 1999-10-13
KR930001057A (ko) 1993-01-16
DE69230117T2 (de) 2000-06-15
EP0519695A3 (en) 1993-09-22
KR100292005B1 (ko) 2001-09-17

Similar Documents

Publication Publication Date Title
JPH05204617A (ja) 特定のコンピュータ・ハードウェア・アーキテクチャのために作成されたソフトウェアのバージョンの互換性を確保する装置および方法
JPH11212817A (ja) ハードウェア支援ファームウェア追跡方法及び装置
US20020059570A1 (en) Computer system and method for storing product keys thereof
KR100286197B1 (ko) 데이타 처리 시스템의 프로그래밍 방법
JP3628373B2 (ja) 電力管理ユニット、コンピュータシステム、およびコンピュータシステムの電力管理ユニット内の複数個の構成レジスタをアクセスする方法
US7657897B2 (en) Methods and apparatus for communicating between multiple levels of software components
JP3033713B2 (ja) 仮想計算機エミュレート装置
US5802573A (en) Method and system for detecting the issuance and completion of processor instructions
KR20000008628A (ko) 컴퓨터 시스템의 부팅음악 출력방법
JPS6410854B2 (ja)
JP3405239B2 (ja) 初期値設定変更装置
JP2521020B2 (ja) 情報処理システム
JP2002541582A (ja) エミュレータシステム内のユーザメモリを更新する方法およびシステム
JPH0299379A (ja) プリンタ
JPH10289031A (ja) コンピュータ
JPH04107630A (ja) 中央処理装置
JP2705359B2 (ja) トレース回路
JP3328247B2 (ja) インサーキットエミュレータ及びそのエミュレーション方法
JPS63301338A (ja) 制御メモリ付記憶装置
JP2020173616A (ja) シミュレーション装置、シミュレーション方法及び情報処理装置
JP2012198604A (ja) 情報処理装置の制御方法、制御プログラム及び情報処理装置
JPS59106048A (ja) マイクロプロセツサシステム
JPH07113900B2 (ja) エミュレーション・チップ
JPH0268625A (ja) プログラム修正回路
JPH01253044A (ja) 入出力制御装置

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees