JP2006190318A - エミュレーション装置およびその方法 - Google Patents
エミュレーション装置およびその方法 Download PDFInfo
- Publication number
- JP2006190318A JP2006190318A JP2006035051A JP2006035051A JP2006190318A JP 2006190318 A JP2006190318 A JP 2006190318A JP 2006035051 A JP2006035051 A JP 2006035051A JP 2006035051 A JP2006035051 A JP 2006035051A JP 2006190318 A JP2006190318 A JP 2006190318A
- Authority
- JP
- Japan
- Prior art keywords
- machine
- hard disk
- execution
- emulation
- area
- 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
Links
- 238000000034 method Methods 0.000 title claims description 219
- 238000005192 partition Methods 0.000 claims abstract description 186
- 238000012545 processing Methods 0.000 claims abstract description 170
- 230000002093 peripheral effect Effects 0.000 claims abstract description 75
- 239000000872 buffer Substances 0.000 claims description 87
- 238000003860 storage Methods 0.000 claims description 52
- 238000006243 chemical reaction Methods 0.000 claims description 50
- 238000012546 transfer Methods 0.000 claims description 32
- 238000010348 incorporation Methods 0.000 claims description 18
- 238000009434 installation Methods 0.000 claims description 9
- 238000010276 construction Methods 0.000 claims description 6
- 230000004913 activation Effects 0.000 claims description 5
- 150000002016 disaccharides Chemical class 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 163
- 230000006870 function Effects 0.000 description 54
- 238000010586 diagram Methods 0.000 description 26
- 238000004891 communication Methods 0.000 description 17
- 238000011900 installation process Methods 0.000 description 7
- 230000008707 rearrangement Effects 0.000 description 6
- 239000002131 composite material Substances 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 102100032306 Aurora kinase B Human genes 0.000 description 2
- 101000798306 Homo sapiens Aurora kinase B Proteins 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 235000009991 pite Nutrition 0.000 description 2
- 244000293655 pite Species 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
Images
Abstract
【解決手段】実行マシンに接続されたハードディスク84に、実行マシンのファイルシステムを用いて連続した空き領域を、仮想PCシステムファイル領域として確保する。この仮想PCシステムファイルの中を、ターゲットマシンである仮想PCから見たハードディスクのようにフォーマットしておく。電源を投入すると、DOS/V機のBIOSが展開され、デバイスドライバが読み込まれるところで、エミュレーション装置に処理が移り、カーネルやモジュールが展開される。ハードディスクエミュレータHDMが組み込まれるとき、パーティションが並べ直され、ハードディスクのアドレスのオフセットがディスク情報ブロックに書き込まれ、エミュレーションにおけるアクセスに供される。また、タスクの切換により両BIOSを利用して、周辺機器をアクセスする。
【選択図】図20
Description
少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション装置であって、
該エミュレーション装置のハードディスクエミュレーション部は、
前記ターゲットマシンにおけるハードディスクのアクセス位置の物理アドレスを、前記ターゲットマシンのハードディスクの構成に関する情報を用いて論理アドレスに変換する第1の変換手段と、
その論理アドレスから前記実行マシンのハードディスクの構成に関する情報を用いて、前記実行マシンのハードディスクのアクセス位置の物理アドレスに変換する第2の変換手段と、
前記実行マシンのハードディスクのシステム管理情報をターゲットマシン用のシステム管理情報に変換するシステム管理情報変換部と、
前記第2の変換手段により変換された物理アドレスおよび前記システム管理情報を用いて、前記実行マシンのハードディスクにアクセスする物理アクセス処理部と
を備えたことを要旨とする。
少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション方法であって、
前記ターゲットマシンにおけるハードディスクのアクセス位置の物理アドレスを、前記ターゲットマシンのハードディスクの構成に関する情報を用いて論理アドレスに変換し、
該論理アドレスを、前記実行マシンのハードディスクの構成に関する情報を用いて、前記実行マシンのハードディスクのアクセス位置の物理アドレスに変換し、
該物理アドレスを用いて実行マシンのハードディスクにアクセスすること
を要旨としている。
前記実行マシンのハードディスクのシステム管理領域より所定の情報を取得するシステム管理情報取得部と、
前記取得したシステム管理情報をターゲットマシン用のシステム管理情報に変換する変換テーブルを作成するデータ作成部と、
前記ターゲットマシン用のプログラムのアクセスが前記システム管理情報に対するものである時、前記変換テーブルを参照して前記実行マシンのハードディスクのアクセス位置を取得する手段と
を備えたものとすることができる。
実行マシンの前記ハードディスクのパーティション領域において、前記ターゲットマシンのパーティション領域に対応した形式に書き換えると共に、前記実行マシンのハードディスクのパーティション領域のアドレスを前記ターゲットマシンのパーティション領域のアドレスに変換するパーティション変換テーブルを作成するパーティション領域データ作成部
を備えるものすることができる。この場合には、パーティション領域の形式なども書き換えられており、パーティション領域のアドレス変換テーブルを備えることもあって、パーティションを有するハードディスクに対する処理を、高速にエミュレートすることができる。
少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション装置であって、
前記実行マシンに接続されたハードディスクの記憶領域に、予め前記ターゲットマシンの仮想的なハードディスクに対応した大きさの領域を確保する領域確保手段と、
該確保された領域内に、該領域内のアクセスに必要な情報を記憶するアクセス情報記憶手段と、
前記ターゲットマシンにおけ該仮想的なハードディスクへのアクセスを、該記憶された情報を用いて、前記実行マシンに接続された実際のハードディスクへのアクセスとして実現するハードディスクエミュレーション手段と
を備えたことを要旨とする。
少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション方法であって、
前記実行マシンに接続されたハードディスクの記憶領域に、予め前記ターゲットマシンの仮想的なハードディスクに対応した大きさの領域を確保し、
該確保された領域内に、該領域内のアクセスに必要な情報を記憶し、
前記ターゲットマシンにおけ該仮想的なハードディスクへのアクセスを、該記憶された情報を用いて、前記実行マシンに接続された実際のハードディスクへのアクセスとして実現すること
を要旨としている。
前記ハードディスクエミュレーション手段を、
前記ターゲットマシンにおけるハードディスクのアクセスを、前記仮想的なハードディスクへのアクセスとして、処理を開始する処理開始手段と、
該開始された処理において、前記ターゲットマシンのハードディスクへのアクセス位置の物理アドレスを、前記ターゲットマシンのハードディスクの構成に関する情報を用いて論理アドレスに変換する第1の変換手段と、
その論理アドレスから前記実行マシンのハードディスク情報を用いて、前記実行マシンのハードディスクのアクセス位置の物理アドレスに変換する第2の変換手段と、
該物理アドレスを用いて前記実行マシンのハードディスクにアクセスする物理アクセス処理部と、
前記実行マシンのハードディスクのシステム管理情報を前記ターゲットマシン用のシステム管理情報に変換するシステム管理情報変換部と
を備えたものとすることができる。
少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション装置であって、
前記実行マシンに接続されたハードディスクの記憶領域に、予め前記ターゲットマシンの仮想的なハードディスクに対応した大きさの領域を確保する領域確保手段と、
前記ターゲットマシンのおける仮想的なハードディスクと前記実行マシンに接続されたハードディスクとのパーティションを、該ターゲットマシンからアクセス可能なパーティションの並びに並び替え、該並べ替えたパーティションの情報を記憶するパーティション情報記憶手段と、
前記ターゲットマシンにおけ該仮想的なハードディスクへのアクセスを、該記憶された情報を用いて、前記実行マシンに接続された実際のハードディスクへのアクセスとして実現するハードディスクエミュレーション手段と
を備えたことを要旨とする。
少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション方法であって、
前記実行マシンに接続されたハードディスクの記憶領域に、予め前記ターゲットマシンの仮想的なハードディスクに対応した大きさの領域を確保し、
前記ターゲットマシンのおける仮想的なハードディスクと前記実行マシンに接続されたハードディスクとのパーティションを、該ターゲットマシンからアクセス可能なパーティションの並びに並び替え、該並び替えたパーティションの情報を記憶し、
前記ターゲットマシンにおけ該仮想的なハードディスクへのアクセスを、該記憶された情報を用いて、前記実行マシンに接続された実際のハードディスクへのアクセスとして実現すること
を要旨としている。
少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション装置であって、
前記実行マシンに接続されたハードディスクの記憶領域に、所定の大きさの領域を確保し、該領域を該ターゲットマシンの仮想的なハードディスクとして扱う仮想ディスク確保手段と、
該実行マシンの立ち上げ時に、該実行マシンに用意されたハードディスクアクセス用の処理プログラムを該実行マシンにおいて実行可能に読み込む処理プログラム読込手段と、
該処理プログラムの読み込み後に、該実行マシンのオペレーティングシステムのプログラムの読み込みに代えて、前記仮想ディスク確保手段により確保された領域に記憶された前記ターゲットマシン用のオペレーティングシステムを構築するためのファイルを読み出す読出手段と、
該読み出したファイルを用いて、前記実行マシンに、前記ターゲットマシン用のオペレーティングシステムを構築するシステム構築手段と
を備えたことを要旨とする。
少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション方法であって、
前記実行マシンに接続されたハードディスクの記憶領域に、所定の大きさの領域を確保し、該領域を該ターゲットマシンの仮想的なハードディスクとして扱い、
該実行マシンの立ち上げ時に、該実行マシンに用意されたハードディスクアクセス用の処理プログラムを該実行マシンにおいて実行可能に読み込み、
該処理プログラムの読み込み後に、該実行マシンのオペレーティングシステムのプログラムの読み込みに代えて、前記確保された領域に記憶された前記ターゲットマシン用のオペレーティングシステムを構築するためのファイルを読み出し、
該読み出したファイルを用いて、前記実行マシンに、前記ターゲットマシン用のオペレーティングシステムを構築すること
を要旨としている。
少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション装置であって、
前記実行マシンの起動時に、少なくとも二つのタスクが実行できる論理空間を前記実行マシンに確保するタスク管理手段と、
該確保された一つのタスクに、前記実行マシン用に用意されたBIOSを実行可能に展開する実行マシンBIOS展開手段と、
前記確保された他のタスクに、前記ターゲットマシン用に用意されたBIOSを実行可能に展開するターゲットマシンBIOS展開手段と、
該展開されたターゲットマシン用のBIOSがアプリケーションプログラムから呼び出されたとき、この呼出を取得して、該呼び出されたBIOSと等価な機能を有する前記実行マシン用のBIOSを呼び出す呼出手段と
を備えたことを要旨としている。
少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション方法であって、
前記実行マシンの起動時に、少なくとも二つのタスクが実行できる論理空間を前記実行マシンに確保し、
該確保された一つのタスクに、前記実行マシン用に用意されたBIOSを実行可能に展開し、
前記確保された他のタスクに、前記ターゲットマシン用に用意されたBIOSを実行可能に展開し、
該展開されたターゲットマシン用のBIOSがアプリケーションプログラムから呼び出されたとき、この呼出を取得して、該呼び出されたBIOSと等価な機能を有する前記実行マシン用のBIOSを呼び出すこと
を要旨としている。
前記実行マシン用のBIOSが実行可能に展開された前記一つのタスクに、該展開された実行マシン用のBIOSを利用して該実行マシンに所定のファンクションコールを実現するプログラムを実行可能に読み込む実行マシン処理プログラム読込手段と、
前記ターゲットマシン用のBIOSが実行可能に展開された前記他のタスクに、該展開されたターゲットマシン用のBIOSを利用する該ターゲットマシンのファンクションコールに対応したプログラムを読み込むターゲットマシンプログラム読込手段と
を設けることも可能である。この場合には、第5発明において、BIOSを展開したのに対して、BIOSを利用して実行マシンに所定の所定のファンクションコールを実現することができる。したがって、両マシンに対応するファンクションコールが存在する場合には、これを呼び出す構成とすれば良く、エミュレーションの精度を向上し、かつエミュレーション装置を容易に構成することができる。
少なくとも演算処理部、記憶部、入出力部を備えたコンピュータであり、該コンピュータに用意されたオペレーティングシステムにデバイスドライバを組み込んで動作する周辺装置を備えた実行マシン上で、実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション装置であって、
前記実行マシンに接続された前記周辺機器用のデバイスドライバを実行可能に組み込む第1の組込手段と、
該第1の組込手段による前記デバイスドライバの組込の後で、前記ターゲットマシンに用意されたオペレーティングシステムを実行可能に組み込むオペレーティングシステム組込手段と、
該オペレーティングシステムに、前記周辺機器用の該ターゲットマシンのデバイスドライバの少なくとも呼出側を実行可能に組み込む第2の組込手段と、
前記ターゲットマシンのデバイスドライバの呼出側の呼出を取得し、前記実行マシンのデバイスドライバを起動して、前記周辺装置へのアクセスを実行させる起動手段と
を備えたことを要旨とする。
少なくとも演算処理部、記憶部、入出力部を備えたコンピュータであり、該コンピュータに用意されたオペレーティングシステムにデバイスドライバを組み込んで動作する周辺装置を備えた実行マシン上で、実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション方法であって、
前記実行マシンに接続された前記周辺機器用のデバイスドライバを実行可能に組み込み、
該デバイスドライバの組込の後で、前記ターゲットマシンに用意されたオペレーティングシステムを実行可能に組み込み、
該組み込まれたオペレーティングシステムに、前記周辺機器用の該ターゲットマシンのデバイスドライバの少なくとも呼出側を実行可能に組み込み、
前記ターゲットマシンのデバイスドライバの呼出側の呼出を取得し、前記実行マシンのデバイスドライバを起動して、前記周辺装置へのアクセスを実行させること
を要旨としている。
少なくとも演算処理部、記憶部、入出力部を備えたコンピュータであり、該コンピュータに用意されたオペレーティングシステムにデバイスドライバを組み込んで動作する周辺装置を備えた実行マシン上で、実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション装置であって、
前記実行マシンに接続された前記周辺機器用のデバイスドライバを実行可能に組み込む第1の組込手段と、
該実行マシン用のデバイスドライバを用いた前記周辺機器のアクセスに必要な第1のバッファと、
前記第1の組込手段による組込の後で、前記ターゲットマシンに用意されたオペレーティングシステムを組み込むオペレーティングシステム組込手段と、
該組み込まれたオペレーティングシステムに前記周辺機器用の前記ターゲットマシンのデバイスドライバの少なくとも呼出側を実行可能に組み込む第2の組込手段と、
該ターゲットマシンのデバイスドライバを用いた前記周辺機器のアクセスに必要な第2のバッファと、
前記ターゲットマシンのデバイスドライバの呼出を取得し、前記実行マシンのデバイスドライバを起動して、前記周辺装置へのアクセスを実行させると共に、前記第1のバッファと前記第2のバッファとの間でデータの転送を行なわせる転送手段と
を備えることを要旨とする。
少なくとも演算処理部、記憶部、入出力部を備えたコンピュータであり、該コンピュータに用意されたオペレーティングシステムにデバイスドライバを組み込んで動作する周辺装置を備えた実行マシン上で、実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション方法であって、
前記実行マシンに接続された前記周辺機器用のデバイスドライバを実行可能に組み込み、
該実行マシン用のデバイスドライバを用いた前記周辺機器のアクセスに必要な第1のバッファを用意し、
前記デバイスドライバの組込の後で、前記ターゲットマシンに用意されたオペレーティングシステムを組み込み、
該組み込まれたオペレーティングシステムに前記周辺機器用の前記ターゲットマシンのデバイスドライバの少なくとも呼出側を実行可能に組み込み、
該ターゲットマシンのデバイスドライバを用いた前記周辺機器のアクセスに必要な第2のバッファを用意し、
前記ターゲットマシンのデバイスドライバの呼出を取得し、前記実行マシンのデバイスドライバを起動して、前記周辺装置へのアクセスを実行させると共に、前記第1のバッファと前記第2のバッファとの間でデータの転送を行なわせること
を要旨としている。
仮想PC上のプログラム」とは、アプリケーションプログラムのみならずDOSを含めたあらゆるプログラムである。この時、DOS/V機は、プロテクトモードで動作しており、CPU21に備わったリング保護機能は、特権レベル3とされている。この状態で、仮想的に用意された98用メモリ空間にアプリケーションプログラムAPPがロードされ、仮想PC上でアプリケーションプログラムが実行されている状態を取り上げてエミュレーション装置の働きについて説明する。
〈1〉ページフォールト(メモリが割り当てられていない領域に対するアクセス)
〈2〉一般保護例外(特権命令の実行、I/Oの読み書き、書込保護されたメモリに対する書込命令の実行など)
〈3〉エラー(0除算など)
〈4〉ハード割り込み
これらの要因が生じると、カーネルKRが起動される。この時、各レジスタの値などはすべて保存されているから、カーネルKRは、自己が起動された原因を調べることができる。その結果、アクセスされたアドレスやI/Oが何か、あるいは生じたハード割り込みがいかなる機能に対応しているかを判断し、ディスパッチャDPを呼び出す。ディスパッチャDPを呼び出すアドレスは、図12に示したように、初期化の処理において登録されているから、カーネルKRは、この呼出アドレスADによりディスパッチャDPを呼び出すことができる。なお、カーネルKRに処理が渡った以降は、特権レベルは0に設定される。
・メモリエミュレータMEM
・マウスエミュレータMUM
・グラフィックエミュレータGEM
・テキストエミュレータTEM
・文字フォントエミュレータCFM
・表示エミュレータDEM
・タイマエミュレータTIM
・キーボードエミュレータKEM
・ハードディスクエミュレータHDM
・割り込みコントローラエミュレータIRM
を示したが、これ以外にも、プリンタやRS−232Cによるシリアル通信を司るエミュレータなど、各種の実行モジュールが存在する。
DOS/V機の場合、ハードディスクの先頭パーティションの開始アドレス(物理アドレス)はヘッド番号1,シリンダ番号0,セクタ番号1から始まっている。このDOS/V機での開始アドレス(物理アドレス)をターゲットマシンであるPC−9800機の物理アドレスに変換し、仮想ハードディスクの先頭パーティションの開始アドレス(物理アドレス)とする。得られたこの開始アドレス(物理アドレス)を論理アドレスに変換し、このパーティションの総セクタ数を加算する。即ち、論理アドレス上でパーティションの終了アドレスを求めるのである。この終了アドレス(論理アドレス)を仮想ハードディスクのヘッド数、セクタ数を用いて物理アドレスに変換し、そのパーティションの終了アドレス(物理アドレス)とする。次のパーティションの開始アドレスは、ヘッド番号1、セクタ番号1、シリンダ番号は一つ前のパーティションの終了アドレスのシリンダ番号Nに値1を加えたN+1とする。
ターゲットマシンであるPC−9800機の場合、ハードディスクの最初のパーティションの開始アドレス(物理アドレス)は、ヘッド番号0、シリンダ番号1、セクタ番号0から始まっているので、この開始アドレス(物理アドレス)を仮想ハードディスクの先頭パーティションの開始アドレス(物理アドレス)とする。この開始アドレス(物理アドレス)を論理アドレスに変換し、これに総セクタ数を加算する。加算されたアドレス(論理アドレス)を仮想ハードディスクのヘッド数,セクタ数を用いて物理アドレスに変換し、これをパーティションの終了アドレス(物理アドレス)とする。次のパーティションの開始アドレスは、ヘッド番号0、セクタ番号0、シリンダ番号は一つ前のパーティションの終了アドレスのシリンダ番号Mに値1を加えたM+1とする。
オフセットテーブル作成−その1
先にアドレス調整−その1でアドレス調整が行なわれた仮想ハードディスクのパーティションの開始アドレス(論理アドレス)とアドレス調整される前の仮想ハードディスクのパーティションの開始アドレス(論理アドレス)との差を求め、実際のハードディスクにおけるパーティションの開始アドレスからのオフセットOFS1として、オフセットテーブルデータに記憶する。なお、ハードディスクのドライブ番号の差については、仮想PCシステムファイルの情報の取得(図38)およびパーティションを並び替えた時点(図39)でオフセットテーブルデータに記憶されている。
先にアドレス調整−その2で調整が行なわれた仮想ハードディスクのパーティションの開始アドレス(論理アドレス)とアドレス調整される前の仮想ハードデイスクのパーティションの開始アドレス(論理アドレス)との差を求め、実際のハードディスクにおけるパーティションの開始アドレスからのオフセットOFS2として、先にオフセットテーブルデータに記憶したオフセットOFS1に更に加算する(OFS1+OFS2)。これが終的なオフセットOFSとなる。なお、ドライブ番号についてのオフセットが既に記憶されている点は、上述の通りである。
21…CPU
22…ローカルバス
23…キャッシュメモリ
24…キャッシュコントローラ
25…メインメモリ
30…PCIブリッジ
32…PCIバス
40…コントローラ部
42…ISAバス
44…VGA
46…SCSIコントローラ
48…PCI−ISAブリッジ
50…DMAコントローラ
52…リアルタイムクロック
54…複合I/Oポート
56…サウンドI/O
60…I/O部
62…拡張スロット
64…KEY
66…PIC
68…タイマ
72…キーボード
73…マウス
74…スピーカ
76…CRT
82…フロッピディスク装置
84…ハードディスク
86…パラレルポート
88…プリンタ
90…シリアルポート
92…モデム
96…マイクロフォン
850…周辺装置
852…デバイスドライバ
860…デバイスドライバ
870…CD−ROMROM
872…CD−ROMデバイスドライバ
874…第1バッファ
880…仮想デバイスドライバ
882…MSCDEX
884…第2バッファ
890…変換部
892…転送部
APP…アプリケーションプログラム
An…呼出アドレス
BF1…第1のバッファ
BF2…第2のバッファ
BS…ブリッジシステム
CFM…文字フォントエミュレータ
DEM…表示エミュレータ
DMn…実行モジュール
DP…ディスパッチャ
DT…ディスパッチャテーブル
GEM…グラフィックエミュレータ
IRM…割込コントローラエミュレータ
HDM…ハードディスクエミュレータ
KEM…キーボードエミュレータ
KK1…第1の組込手段
KK2…第2の組込手段
KOS…オペレーティングシステム組込手段
KR…カーネル
MEM…メモリエミュレータ
MUM…マウスエミュレータ
TEM…テキストエミュレータ
TIM…タイマエミュレータ
TRS…転送手段
VSF…仮想システムファイル領域確保部
Claims (27)
- 少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション装置であって、
該エミュレーション装置のハードディスクエミュレーション部は、
前記ターゲットマシンにおけるハードディスクへのアクセス位置の物理アドレスを、前記ターゲットマシンのハードディスクの構成に関する情報を用いて論理アドレスに変換する第1の変換手段と、
その論理アドレスから前記実行マシンのハードディスクの構成に関する情報を用いて、前記実行マシンのハードディスクのアクセス位置の物理アドレスに変換する第2の変換手段と、
前記実行マシンのハードディスクのシステム管理情報をターゲットマシン用のシステム管理情報に変換するシステム管理情報変換部と、
前記第2の変換手段により変換された物理アドレスおよび前記システム管理情報を用いて、実行マシンのハードディスクにアクセスする物理アクセス処理部と
を備えたエミュレーション装置。 - 請求項1記載のエミュレーション装置であって、
前記システム管理情報変換部は、少なくとも、
前記実行マシンのハードディスクのシステム管理領域より所定の情報を取得するシステム管理情報取得部と、
前記取得したシステム管理情報をターゲットマシン用のシステム管理情報に変換する変換テーブルを作成するデータ作成部と、
前記ターゲットマシン用のプログラムのアクセスが前記システム管理情報に対するものである時、前記変換テーブルを参照して前記実行マシンのハードディスクのアクセス位置を取得する手段と
を備えたエミュレーション装置。 - 請求項2記載のエミュレーション装置であって、
前記データ作成部は、
前記実行マシンの前記ハードディスクのパーティション領域において、前記ターゲットマシンのパーティション領域に対応した形式に書き換えると共に、前記実行マシンのハードディスクのパーティション領域のアドレスを前記ターゲットマシンのパーティション領域のアドレスに変換するパーティション変換テーブルを作成するパーティション領域データ作成部
を備えるエミュレーション装置。 - 前記データ作成部は、前記ターゲットマシンから前記実行マシンのハードディスクに対するアクセスが生じたときに、前記変換テーブルを作成する手段である請求項2または3記載のエミュレーション装置。
- 請求項2または3記載のエミュレーション装置であって、
前記データ作成部は、前記実行マシンの前記ハードディスクに対するアクセスに先だって、前記変換テーブルを作成する手段であり、
該変換テーブルを記憶するディスク情報ブロックを備えた
エミュレーション装置。 - 前記ハードディスクのDOSブート領域において、前記ターゲットマシンのDOSブートと異なる部分を書き換えるDOSブート領域データ作成部を備えた請求項2記載のエミュレーション装置。
- 前記ハードディスクのシステム領域において、前記ターゲットマシンのシステムと異なる部分を書き換えるシステム領域データ作成部を備えた請求項2記載のエミュレーション装置。
- 請求項1記載のエミュレーション装置であって、
前記ターゲットマシン用のプログラムのアクセスが前記ターゲットマシンのシステム管理情報に対するものである時、一旦、前記実行マシンのハードディスクに対する物理的なアクセスを行なった後、前記ディスク情報ブロックの対象データに書き換える手段を備えたエミュレーション装置。 - 少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション装置であって、
前記実行マシンに接続されたハードディスクの記憶領域に、予め前記ターゲットマシンの仮想的なハードディスクに対応した大きさの領域を確保する領域確保手段と、
該確保された領域内に、該領域内のアクセスに必要な情報を記憶するアクセス情報記憶手段と、
前記ターゲットマシンにおけ該仮想的なハードディスクへのアクセスを、該記憶された情報を用いて、前記実行マシンに接続された実際のハードディスクへのアクセスとして実現するハードディスクエミュレーション手段と
を備えたエミュレーション装置。 - 請求項9記載のエミュレーション装置であって、
前記ハードディスクエミュレーション手段は、
前記ターゲットマシンにおけるハードディスクのアクセスを、前記仮想的なハードディスクへのアクセスとして、処理を開始する処理開始手段と、
該開始された処理において、前記ターゲットマシンのハードディスクへのアクセス位置の物理アドレスを、前記ターゲットマシンのハードディスクの構成に関する情報を用いて論理アドレスに変換する第1の手段と、
その論理アドレスから前記実行マシンのハードディスク情報を用いて、前記実行マシンのハードディスクのアクセス位置の物理アドレスに変換する第2の手段と、
該物理アドレスを用いて実行マシンのハードディスクにアクセスする物理アクセス処理部と、
前記実行マシンのハードディスクのシステム管理情報をターゲットマシン用のシステム管理情報に変換するシステム管理情報変換部と
を備えたエミュレーション装置。 - 少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション装置であって、
前記実行マシンに接続されたハードディスクの記憶領域に、予め前記ターゲットマシンの仮想的なハードディスクに対応した大きさの領域を確保する領域確保手段と、
前記ターゲットマシンのおける仮想的なハードディスクと前記実行マシンに接続されたハードディスクとのパーティションを、該ターゲットマシンからアクセス可能なパーティションの並びに並び替え、該並べ替えたパーティションの情報を記憶するパーティション情報記憶手段と、
前記ターゲットマシンにおけ該仮想的なハードディスクへのアクセスを、該記憶された情報を用いて、前記実行マシンに接続された実際のハードディスクへのアクセスとして実現するハードディスクエミュレーション手段と
を備えたエミュレーション装置。 - 少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション装置であって、
前記実行マシンに接続されたハードディスクの記憶領域に、所定の大きさの領域を確保し、該領域を該ターゲットマシンの仮想的なハードディスクとして扱う仮想ディスク確保手段と、
該実行マシンの立ち上げ時に、該実行マシンに用意されたハードディスクアクセス用の処理プログラムを該実行マシンにおいて実行可能に読み込む処理プログラム読込手段と、
該処理プログラムの読み込み後に、該実行マシンのオペレーティングシステムのプログラムの読み込みに代えて、前記仮想ディスク確保手段により確保された領域に記憶された前記ターゲットマシン用のオペレーティングシステムを構築するためのファイルを読み出す読出手段と、
該読み出したファイルを用いて、前記実行マシンに、前記ターゲットマシン用のオペレーティングシステムを構築するシステム構築手段と
を備えたエミュレーション装置。 - 前記領域確保手段は、該領域を、前記実行マシンのファイルシステムを用い、該大きさのファイルとして確保する手段である請求項9ないし請求項12のいずれか一つに記載のエミュレーション装置。
- 前記領域確保手段は、該領域を前記実行マシンのハードディスク上の連続した領域として確保する請求項13記載のエミュレーション装置。
- 少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション装置であって、
前記実行マシンの起動時に、少なくとも二つのタスクが実行できる論理空間を前記実行マシンに確保するタスク管理手段と、
該確保された一つのタスクに、前記実行マシン用に用意されたBIOSを実行可能に展開する実行マシンBIOS展開手段と、
前記確保された他のタスクに、前記ターゲットマシン用に用意されたBIOSを実行可能に展開するターゲットマシンBIOS展開手段と、
該展開されたターゲットマシン用のBIOSがアプリケーションプログラムから呼び出されたとき、この呼出を取得して、該呼び出されたBIOSと等価な機能を有する前記実行マシン用のBIOSを呼び出す呼出手段と
を備えたエミュレーション装置。 - 請求項15記載のエミュレーション装置であって、
前記実行マシンに接続されたハードディスクの記憶領域に、所定の大きさの領域を確保し、該領域を該ターゲットマシンの仮想的なハードディスクとして扱う仮想ディスク確保手段と、
前記実行マシン用のBIOSが実行可能に展開された前記一つのタスクに、該展開された実行マシン用のBIOSを利用して該実行マシンに所定のファンクションコールを実現するプログラムを実行可能に読み込む実行マシン処理プログラム読込手段と、
前記ターゲットマシン用のBIOSが実行可能に展開された前記他のタスクに、該展開されたターゲットマシン用のBIOSを利用する該ターゲットマシンのファンクションコールに対応したプログラムを読み込むターゲットマシンプログラム読込手段と
を備えたエミュレーション装置。 - 請求項16記載のエミュレーション装置であって、
前記ターゲットマシンプログラム読込手段によりファンクションコールに対応したプログラムの読み込みの後に、該ターゲットマシン用のオペレーティングシステムを構築するためのファイルを読み出すオペレーティングシステム読出手段と、
該読み出したファイルを用いて、前記実行マシンに、前記ターゲットマシン用のオペレーティングシステムを構築するシステム構築手段と
を備えたエミュレーション装置。 - 少なくとも演算処理部、記憶部、入出力部を備えたコンピュータであり、該コンピュータに用意されたオペレーティングシステムにデバイスドライバを組み込んで動作する周辺装置を備えた実行マシン上で、実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション装置であって、
前記実行マシンに接続された前記周辺機器用のデバイスドライバを実行可能に組み込む第1の組込手段と、
該第1の組込手段による前記デバイスドライバの組込の後で、前記ターゲットマシンに用意されたオペレーティングシステムを実行可能に組み込むオペレーティングシステム組込手段と、
該オペレーティングシステムに、前記周辺機器用の該ターゲットマシンのデバイスドライバの少なくとも呼出側を実行可能に組み込む第2の組込手段と、
前記ターゲットマシンのデバイスドライバの呼出側の呼出を取得し、前記実行マシンのデバイスドライバを起動して、前記周辺装置へのアクセスを実行させる起動手段と
を備えたエミュレーション装置。 - 少なくとも演算処理部、記憶部、入出力部を備えたコンピュータであり、該コンピュータに用意されたオペレーティングシステムにデバイスドライバを組み込んで動作する周辺装置を備えた実行マシン上で、実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション装置であって、
前記実行マシンに接続された前記周辺機器用のデバイスドライバを実行可能に組み込む第1の組込手段と、
該実行マシン用のデバイスドライバを用いた前記周辺機器のアクセスに必要な第1のバッファと、
前記第1の組込手段による組込の後で、前記ターゲットマシンに用意されたオペレーティングシステムを組み込むオペレーティングシステム組込手段と、
該組み込まれたオペレーティングシステムに前記周辺機器用の前記ターゲットマシンのデバイスドライバの少なくとも呼出側を実行可能に組み込む第2の組込手段と、
該ターゲットマシンのデバイスドライバを用いた前記周辺機器のアクセスに必要な第2のバッファと、
前記ターゲットマシンのデバイスドライバの呼出を取得し、前記実行マシンのデバイスドライバを起動して、前記周辺装置へのアクセスを実行させると共に、前記第1のバッファと前記第2のバッファとの間でデータの転送を行なわせる転送手段と
を備えたエミュレーション装置。 - 請求項19記載のエミュレーション装置であって、
前記転送手段は、前記第1のバッファのデータ量と前記第2のバッファのデータ量との差異に基づいて、両バッファ間で所定回数の転送を行なう手段であるエミュレーション装置。 - 少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション方法であって、
前記ターゲットマシンにおけるハードディスクのアクセス位置の物理アドレスを、前記ターゲットマシンのハードディスクの構成に関する情報を用いて論理アドレスに変換し、
該論理アドレスを、前記実行マシンのハードディスクの構成に関する情報を用いて、前記実行マシンのハードディスクのアクセス位置の物理アドレスに変換し、
該物理アドレスを用いて実行マシンのハードディスクにアクセスする
エミュレーション方法。 - 少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション方法であって、
前記実行マシンに接続されたハードディスクの記憶領域に、予め前記ターゲットマシンの仮想的なハードディスクに対応した大きさの領域を確保し、
該確保された領域内に、該領域内のアクセスに必要な情報を記憶し、
前記ターゲットマシンにおけ該仮想的なハードディスクへのアクセスを、該記憶された情報を用いて、前記実行マシンに接続された実際のハードディスクへのアクセスとして実現する
エミュレーション方法。 - 少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション方法であって、
前記実行マシンに接続されたハードディスクの記憶領域に、予め前記ターゲットマシンの仮想的なハードディスクに対応した大きさの領域を確保し、
前記ターゲットマシンのおける仮想的なハードディスクと前記実行マシンに接続されたハードディスクとのパーティションを、該ターゲットマシンからアクセス可能なパーティションの並びに並び替え、該並び替えたパーティションの情報を記憶し、
前記ターゲットマシンにおけ該仮想的なハードディスクへのアクセスを、該記憶された情報を用いて、前記実行マシンに接続された実際のハードディスクへのアクセスとして実現する
エミュレーション方法。 - 少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション方法であって、
前記実行マシンに接続されたハードディスクの記憶領域に、所定の大きさの領域を確保し、該領域を該ターゲットマシンの仮想的なハードディスクとして扱い、
該実行マシンの立ち上げ時に、該実行マシンに用意されたハードディスクアクセス用の処理プログラムを該実行マシンにおいて実行可能に読み込み、
該処理プログラムの読み込み後に、該実行マシンのオペレーティングシステムのプログラムの読み込みに代えて、前記確保された領域に記憶された前記ターゲットマシン用のオペレーティングシステムを構築するためのファイルを読み出し、
該読み出したファイルを用いて、前記実行マシンに、前記ターゲットマシン用のオペレーティングシステムを構築する
エミュレーション方法。 - 少なくとも演算処理部、記憶部、入出力部を備えたコンピュータである実行マシン上で、該実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション方法であって、
前記実行マシンの起動時に、少なくとも二つのタスクが実行できる論理空間を前記実行マシンに確保し、
該確保された一つのタスクに、前記実行マシン用に用意されたBIOSを実行可能に展開し、
前記確保された他のタスクに、前記ターゲットマシン用に用意されたBIOSを実行可能に展開し、
該展開されたターゲットマシン用のBIOSがアプリケーションプログラムから呼び出されたとき、この呼出を取得して、該呼び出されたBIOSと等価な機能を有する前記実行マシン用のBIOSを呼び出す
エミュレーション方法。 - 少なくとも演算処理部、記憶部、入出力部を備えたコンピュータであり、該コンピュータに用意されたオペレーティングシステムにデバイスドライバを組み込んで動作する周辺装置を備えた実行マシン上で、実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション方法であって、
前記実行マシンに接続された前記周辺機器用のデバイスドライバを実行可能に組み込み、
該デバイスドライバの組込の後で、前記ターゲットマシンに用意されたオペレーティングシステムを実行可能に組み込み、
該組み込まれたオペレーティングシステムに、前記周辺機器用の該ターゲットマシンのデバイスドライバの少なくとも呼出側を実行可能に組み込み、
前記ターゲットマシンのデバイスドライバの呼出側の呼出を取得し、前記実行マシンのデバイスドライバを起動して、前記周辺装置へのアクセスを実行させる
エミュレーション方法。 - 少なくとも演算処理部、記憶部、入出力部を備えたコンピュータであり、該コンピュータに用意されたオペレーティングシステムにデバイスドライバを組み込んで動作する周辺装置を備えた実行マシン上で、実行マシンのアーキテクチャとは異なるアーキテクチャを備えたコンピュータであるターゲットマシン用のプログラムを実行させるエミュレーション方法であって、
前記実行マシンに接続された前記周辺機器用のデバイスドライバを実行可能に組み込み、
該実行マシン用のデバイスドライバを用いた前記周辺機器のアクセスに必要な第1のバッファを用意し、
前記デバイスドライバの組込の後で、前記ターゲットマシンに用意されたオペレーティングシステムを組み込み、
該組み込まれたオペレーティングシステムに前記周辺機器用の前記ターゲットマシンのデバイスドライバの少なくとも呼出側を実行可能に組み込み、
該ターゲットマシンのデバイスドライバを用いた前記周辺機器のアクセスに必要な第2のバッファを用意し、
前記ターゲットマシンのデバイスドライバの呼出を取得し、前記実行マシンのデバイスドライバを起動して、前記周辺装置へのアクセスを実行させると共に、第1のバッファと前記第2のバッファとの間でデータの転送を行なわせる
エミュレーション方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006035051A JP3861924B2 (ja) | 1994-12-09 | 2006-02-13 | エミュレーション装置およびその方法 |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP30595794 | 1994-12-09 | ||
| JP26072495 | 1995-09-12 | ||
| JP2006035051A JP3861924B2 (ja) | 1994-12-09 | 2006-02-13 | エミュレーション装置およびその方法 |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP34646195A Division JP3861304B2 (ja) | 1994-12-09 | 1995-12-11 | エミュレーション装置およびその方法 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2006071248A Division JP3861925B2 (ja) | 1994-12-09 | 2006-03-15 | エミュレーション装置およびその方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2006190318A true JP2006190318A (ja) | 2006-07-20 |
| JP3861924B2 JP3861924B2 (ja) | 2006-12-27 |
Family
ID=36797392
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2006035051A Expired - Lifetime JP3861924B2 (ja) | 1994-12-09 | 2006-02-13 | エミュレーション装置およびその方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3861924B2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2008035516A1 (en) | 2006-09-21 | 2008-03-27 | Sony Computer Entertainment Inc. | Emulator |
-
2006
- 2006-02-13 JP JP2006035051A patent/JP3861924B2/ja not_active Expired - Lifetime
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2008035516A1 (en) | 2006-09-21 | 2008-03-27 | Sony Computer Entertainment Inc. | Emulator |
| US8532976B2 (en) | 2006-09-21 | 2013-09-10 | Sony Corporation | Information processing device for managing identifiers for a plurality of connected controllers |
Also Published As
| Publication number | Publication date |
|---|---|
| JP3861924B2 (ja) | 2006-12-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4291964B2 (ja) | 仮想計算機システム | |
| KR100733852B1 (ko) | 계산기 시스템 | |
| US7712104B2 (en) | Multi OS configuration method and computer system | |
| US5835760A (en) | Method and arrangement for providing BIOS to a host computer | |
| JP3212007B2 (ja) | オペレーティング・システム環境の起動方法およびシステム | |
| US5355498A (en) | Method and apparatus for booting a computer system without loading a device driver into memory | |
| US4984149A (en) | Memory access control apparatus | |
| US5062042A (en) | System for managing data which is accessible by file address or disk address via a disk track map | |
| US20020129233A1 (en) | Data processor having bios packing compression/decompression architecture | |
| US4621319A (en) | Personal development system | |
| US5758124A (en) | Computer emulator | |
| US7231512B2 (en) | Technique for reconstituting a pre-boot firmware environment after launch of an operating system | |
| US5963738A (en) | Computer system for reading/writing system configuration using I/O instruction | |
| JPH05151003A (ja) | システム・コントロール・プログラム、及び情報処理システム | |
| US5764956A (en) | Computer peripheral function emulator | |
| JP3861304B2 (ja) | エミュレーション装置およびその方法 | |
| JP3861925B2 (ja) | エミュレーション装置およびその方法 | |
| JP3861924B2 (ja) | エミュレーション装置およびその方法 | |
| JP2001236237A (ja) | マルチos構成方法 | |
| US20020138680A1 (en) | Apparatus and methods for controlling removable media devices using a BIOS abstraction layer | |
| CN121764559A (zh) | 一种系统启动方法及装置 | |
| JPH04227547A (ja) | 情報処理装置 | |
| JPS6097440A (ja) | 仮想多重プロセツサ装置 | |
| JPH08190485A (ja) | エミュレーション装置 | |
| JPH0754469B2 (ja) | 仮想計算機システムのための入出力命令実行装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060613 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060814 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060905 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060918 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101006 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101006 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111006 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121006 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121006 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131006 Year of fee payment: 7 |
|
| EXPY | Cancellation because of completion of term |