JP2012168851A - Emulator - Google Patents
Emulator Download PDFInfo
- Publication number
- JP2012168851A JP2012168851A JP2011030730A JP2011030730A JP2012168851A JP 2012168851 A JP2012168851 A JP 2012168851A JP 2011030730 A JP2011030730 A JP 2011030730A JP 2011030730 A JP2011030730 A JP 2011030730A JP 2012168851 A JP2012168851 A JP 2012168851A
- Authority
- JP
- Japan
- Prior art keywords
- virtual
- hardware
- information processing
- hard disk
- emulator
- 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
Images
Abstract
Description
本件開示は、エミュレータに関する。 The present disclosure relates to an emulator.
近年の技術進歩の加速化に伴って、特に情報処理関連の装置について開発期間の短縮化が求められている。そのため、自社のみで全ての部品を開発して製造する製造方式は減少し、その一方で、複数社で別々に開発して製造した部品やソフトウェアを集めて1つの装置をくみ上げる製造方式が増加している。大規模な装置の場合には、ソフトウェアも細かいソフトウェア部分に分けて開発製造することも多いので、ソフトウェア部分をくみ上げた後のデバッグが重要である。しかし、多くのソフトウェアは、装置のハードウェア上で実行させてみないとデバッグできず、デバッグに掛かる時間の短縮が困難であった。 With the recent acceleration of technological progress, there is a demand for shortening the development period especially for information processing related devices. As a result, the number of manufacturing methods that develop and manufacture all parts by themselves only decreases. On the other hand, the number of manufacturing methods that collect and develop parts and software that are separately developed and manufactured by multiple companies increases. ing. In the case of a large-scale apparatus, software is often developed and manufactured by dividing it into fine software parts, so debugging after drawing up the software parts is important. However, many software cannot be debugged unless they are executed on the hardware of the apparatus, and it has been difficult to shorten the time required for debugging.
このデバッグの時間を短縮する方法としては、試作装置を多数用意して同時にデバッグを行うことが考えられるが、試作装置が多いことでコストアップに繋がる恐れがある。しかも、ハードウェアに修正(改版)が生じた場合には多数の試作装置も作り直すことになるので、工数が増加してしまう結果、開発期間の短縮化にならない恐れもある。 As a method for shortening the debugging time, it is conceivable to prepare a large number of prototype devices and perform debugging at the same time. However, since there are many prototype devices, there is a possibility that the cost may be increased. In addition, if the hardware is modified (revised), a large number of prototype devices are also recreated, which increases the number of man-hours and may not shorten the development period.
そこで、装置全体あるいは一部分についてハードウェアの動作をソフトウェアで模擬する方法が採用されるようになってきている。このようにハードウェアの動作を模擬するソフトウェアは、一般にエミュレータと称される。そして、このエミュレータ等を用いて、特定条件下などでハードウェアの動作を試すことは、一般にシミュレーションと称される。 Therefore, a method of simulating hardware operation of the entire apparatus or a part of the apparatus with software has been adopted. Such software that simulates the operation of hardware is generally called an emulator. Using the emulator or the like to try the hardware operation under a specific condition is generally called simulation.
エミュレータを試作装置として用いて、装置に搭載予定のソフトウェアをそのエミュレータ上で実行させることによって、実際の装置に搭載したときの動作をシミュレートすることが出来る。そして、そのようなシミュレーションの結果を参照することでソフトウェアのデバッグが可能となる。 By using the emulator as a prototype device and executing the software to be installed in the device on the emulator, the operation when installed in the actual device can be simulated. The software can be debugged by referring to the simulation result.
このようなシミュレーションに関し、効率的なシミュレーションの提案がなされている。この提案では、シミュレーション対象計算機システムが持つメモリ、ハードディスク装置、入出力装置、にそれぞれ相当する実際のハードウェアを用意してシミュレーション実行計算機システムに接続する。また、シミュレーション対象計算機システムが持つCPU等についてはシミュレーション実行計算機システム内のメモリにモデルを構築する。そして、シミュレーション対象計算機システムのシミュレーションに際しては、用意された実際のハードウェアとメモリに構築されたモデルが用いられる。 With respect to such a simulation, an efficient simulation has been proposed. In this proposal, actual hardware corresponding to the memory, hard disk device, and input / output device of the simulation target computer system is prepared and connected to the simulation execution computer system. For the CPU and the like of the computer system to be simulated, a model is built in a memory in the simulation execution computer system. In the simulation of the computer system to be simulated, a model constructed with prepared actual hardware and memory is used.
しかし、実際のハードウェアを用意する上記方法によれば、試作装置を準備する方法と同様な事情でコストアップなどの恐れが生じると考えられる。 However, according to the above method for preparing actual hardware, it is considered that there is a risk of cost increase under the same circumstances as the method for preparing a prototype device.
一方、エミュレータでソフト的に模擬されているハードウェアは、実際のハードウェアが行う全ての動作を再現することは当然無理である。そこで、一般的には、入力と、その入力に反応した出力との対応を定義したいわば関数としてハードウェア要素が用意される。しかしながら、そのように関数として用意されたハードウェア要素では、実際のハードウェアの動作時に生じる動作時間の経過を模擬することが難しい。特に、実際のハードウェアでは、動作時間は一定の遅延ではなくて、動作状況の違いによってばらつきなどを生じるため、そのようなばらつきなども含めて動作時間の模擬が望まれている。 On the other hand, it is naturally impossible for hardware simulated by an emulator to reproduce all operations performed by actual hardware. Therefore, in general, a hardware element is prepared as a function that defines a correspondence between an input and an output in response to the input. However, with such hardware elements prepared as functions, it is difficult to simulate the passage of operating time that occurs during actual hardware operation. In particular, in actual hardware, the operation time is not a fixed delay, but varies due to differences in operation conditions. Therefore, it is desired to simulate the operation time including such variations.
上記事情に鑑み、本件開示は、ハードウェアの動作時間も模擬することが出来るエミュレータを提供することを目的とする。 In view of the above circumstances, it is an object of the present disclosure to provide an emulator that can also simulate the operation time of hardware.
上記目的を達成するエミュレータは、情報処理装置上で実行されることによって、該情報処理装置とは別の装置のハードウェア構造を模擬する。このエミュレータは、上記ハードウェア構造に含まれた構造部分を模擬する仮想的ハードウェア部分を有している。そして、この仮想的ハードウェア部分は、応答部と駆動部とを備えている。 An emulator that achieves the above object simulates the hardware structure of an apparatus different from the information processing apparatus by being executed on the information processing apparatus. This emulator has a virtual hardware part that simulates the structural part included in the hardware structure. And this virtual hardware part is provided with the response part and the drive part.
上記駆動部は、上記仮想的ハードウェア部分に対応付けられた上記情報処理装置内のハードウェア部分を駆動させるものである。 The said drive part drives the hardware part in the said information processing apparatus matched with the said virtual hardware part.
上記応答部は、上記仮想的ハードウェア部分が模擬する構造部分が入力に対して示す応答結果を模擬するために上記駆動部による現実のハードウェア部分の駆動後に上記情報処理装置上で実行されるものである。 The response unit is executed on the information processing apparatus after driving the actual hardware part by the drive unit in order to simulate a response result that the structure part simulated by the virtual hardware part shows with respect to the input. Is.
本件開示によれば、エミュレータでハードウェアの動作時間も模擬することが出来る。 According to the present disclosure, it is possible to simulate the operation time of hardware by using an emulator.
上記説明したエミュレータに対する具体的な実施形態を、以下図面を参照して説明する。 Specific embodiments of the emulator described above will be described below with reference to the drawings.
図1は、エミュレータの具体的な第1実施形態を示す図である。 FIG. 1 is a diagram showing a specific first embodiment of an emulator.
図1に示すエミュレータ10は、現実のハードウェア部分21を有する情報処理装置20上で実行されることによって、模擬対象の装置のハードウェア構造を仮想的に模擬する。情報処理装置20上でのエミュレータ10の実行とは、具体的には、情報処理装置20のメモリ上にエミュレータ10が展開されてCPU等で処理されることである。
The
エミュレータ10には、模擬対象の装置のハードウェア構造に含まれた構造部分を模擬する仮想的ハードウェア部分11が備えられている。そして、仮想的ハードウェア部分11には応答部12と駆動部13が備えられている。
The
応答部12は情報処理装置20上で実行される。そして、仮想的ハードウェア部分11が模擬する構造部分が入力に対する応答結果を模擬する。このような応答部12の模擬により、模擬対象の装置における内部動作や外部への応答動作などにおける動作結果が模擬されることとなる。ただし、応答部12で模擬されるのは結果であって経過は模擬されない。
The
駆動部13は、少なくとも1つの仮想的ハードウェア部分11に備えられているが、全ての仮想的ハードウェア部分11に備えられているとは限らない。そして、駆動部13を備えた仮想的ハードウェア部分11には、情報処理装置20が有する現実のハードウェア部分21が対応付けられている。駆動部13は、仮想的ハードウェア部分11に対応付けられているハードウェア部分21を、この仮想的ハードウェア部分11における応答部12が実行される場合に応答部12の実行に先立って駆動させる。逆に言えば、応答部12は、駆動部13によるハードウェア部分21の駆動後に実行される。駆動部13によるこのような駆動の結果、模擬対象の装置における動作時間が模擬されることとなる。
The
つまり、図1に示すエミュレータ10によれば、模擬対象の装置の動作がハードウェアの動作時間も含めて模擬されることとなるので、エミュレータ10の精度が高い。しかも、エミュレータ10がハードウェアの動作時間の模擬に用いる現実のハードウェア部分は、このエミュレータ10を実行する情報処理装置20のハードウェア部分21である。従って、ハードウェアの動作時間の模擬用に余計なハードウェアを用意する必要もない。
In other words, according to the
次に、より具体的な第2実施形態について説明する。 Next, a more specific second embodiment will be described.
図2は、第2実施形態のエミュレータを実行する情報処理装置を表す構造図である。 FIG. 2 is a structural diagram illustrating an information processing apparatus that executes the emulator according to the second embodiment.
図2に示す情報処理装置100は、現実のハードウェア要素として、CPU110とノースブリッジ120とメモリ130とサウスブリッジ140とハードディスク装置150とUART(Universal Asynchronous Receiver/Transmitter)160とを備えている。
The
CPU110とノースブリッジ120とサウスブリッジ140は互いにオリジナルバス170を介して接続されている。一方、UART160はサウスブリッジ140にPCIバス180を介して接続されている。
The
ノースブリッジ120にはメモリコントローラとしての機能が内蔵されているので、メモリ130はノースブリッジ120にバスを介さず直接に接続されている。
Since the
また、サウスブリッジ140にはハードディスクコントローラ(HDC)としての機能が内蔵されているので、ハードディスク装置150はサウスブリッジ140にバスを介さず直接に接続されている。以下の説明ではサウスブリッジ140のことをHDC140と称する場合がある。
Further, since the
エミュレータを実行するホストとして情報処理装置100が動作する場合には、メモリ130上にエミュレータが展開されてCPU110で実行される。このエミュレータは、メモリ130上に展開される前はハードディスク装置150に格納されている。
When the
UART160は、パラレルデータとシリアルデータの相互変換を行う装置である。
The
図3は、エミュレータが模擬する模擬対象装置の一例に相当するストレージ装置を表す構造図である。 FIG. 3 is a structural diagram showing a storage apparatus corresponding to an example of a simulation target apparatus simulated by an emulator.
ここに示すストレージ装置200は、NAS(network attached storage)と称される種類のストレージ装置である。このNASは、ネットワークに接続されてネットワークからファイルサーバとして利用される。
The
ストレージ装置200は、模擬対象のハードウェア要素として、CPU210とメモリコントローラ220とメモリ230とハードディスクコントローラ240とハードディスク装置250とLANボード260とを備えている。CPU210とメモリコントローラ220とハードディスクコントローラ240とLANボード260はPCIバス270を介して相互に接続されている。一方、メモリ230はメモリコントローラ220にバスを介さず直接に接続されている。また、ハードディスク装置250はハードディスクコントローラ240にバスを介さず直接に接続されている。
The
CPU210は、ストレージ装置200内の各部の動作を統括するものである。
The
メモリ230はRAMやROMを含んでいる。このメモリ230に、CPU210で実行されるプログラムが展開される。メモリコントローラ220はメモリ230に対するデータの入出力を制御するものである。
The
LANボード260は、ストレージ装置200をネットワークに接続するものである。
The
ハードディスク装置250は、ネットワークから送られてきたデータを記憶する。ハードディスクコントローラ240は、ハードディスク装置250に対するデータの入出力を制御するものである。
The
図4は、図3に示すストレージ装置を模擬するエミュレータを表す図である。 FIG. 4 is a diagram illustrating an emulator that simulates the storage apparatus illustrated in FIG.
図4に示すエミュレータ300が、第2実施形態のエミュレータである。このエミュレータ300は、本体部320と起動部310を備えている。
An
本体部320は、図2に示す情報処理装置100のメモリ130上に展開されることで、図3に示すストレージ装置200のハードウェア構造を仮想的に模擬する。一方、起動部310は、本体部320をメモリ130上に展開して起動するものである。なお、以下の説明では、メモリ130上に展開された本体部320のことを仮想NAS320と称する場合がある。
The
起動部310は、仮想ハード展開部311と実ハード確認部312と優先表313とを備えている。この起動部310の説明は後に回して、先に、メモリ130上に展開された本体部320について説明する。
The
図5は、情報処理装置のメモリ上に展開された本体部(仮想NAS)を示す図である。 FIG. 5 is a diagram showing a main body (virtual NAS) developed on the memory of the information processing apparatus.
図5に示すように、仮想NAS320は、情報処理装置100のメモリ130上の一部に展開される。メモリ130上に展開された仮想NAS320は、図3に示すストレージ装置200のハードウェア構造と同様の仮想的な構造を有している。即ち、仮想NAS320は、仮想のハードウェア要素として、仮想CPU321と仮想メモリコントローラ322と仮想メモリ323を備えている。更に仮想NAS320は、仮想のハードウェア要素として、仮想ハードディスクコントローラ(仮想HDC)324と仮想ハードディスク装置325と仮想LANボード326も備えている。
As shown in FIG. 5, the
これらの仮想の各ハードウェア要素321〜326は、図3に示すストレージ装置200が有する模擬対象の各ハードウェア要素210〜260を模擬するものである。
These
仮想NAS320には対応表327も備えられている。この対応表327は、仮想NAS320が備えている仮想の各ハードウェア要素321〜326と、情報処理装置100が有する現実のハードウェア要素との対応を示したものである。この対応表327は、仮想NAS320がメモリ130上に展開されたときに構築されたものであるが、詳しい説明は、図4に示す起動部310の説明と共に後に回す。
The
以下の説明では、説明の便宜のため、仮想のハードウェア要素、模擬対象のハードウェア要素、および現実のハードウェア要素それぞれを、仮想ハード、対象ハード、および実ハードと省略して称する場合がある。 In the following description, for convenience of explanation, a virtual hardware element, a simulation target hardware element, and a real hardware element may be abbreviated as virtual hardware, target hardware, and real hardware, respectively. .
ここで、仮想のハードウェア要素の構造について、仮想HDC324と仮想LANボード326とを例に挙げて説明する。
Here, the structure of the virtual hardware element will be described by taking the
図6は、仮想HDCの構造を示す図である。また、図7は、仮想LANボードの構造を示す図である。 FIG. 6 is a diagram illustrating the structure of the virtual HDC. FIG. 7 shows the structure of the virtual LAN board.
仮想HDC324は、実ハード動作指示部410と仮想ハード動作実行部420とを備えている。また、仮想LANボード326も、実ハード動作指示部430と仮想ハード動作実行部440とを備えている。
The
仮想ハードが模擬する対象ハードは、一般に、データや命令などといった入力を受けて応答を返すものである。仮想HDC324の仮想ハード動作実行部420は、模擬対象のHDC240における入力と応答結果との対応関係を表した一種の関数あるいはルーチンプログラムである。このような仮想ハード動作実行部420を情報処理装置100のCPU110が実行して応答結果を得ることで模擬対象のHDC240における応答が模擬される。同様に、仮想LANボード326の仮想ハード動作実行部440は、模擬対象のLANボード260における入力と応答結果との対応関係を表している。そして、この仮想ハード動作実行部440を情報処理装置100のCPU110が実行して応答結果を得ることで模擬対象のLANボード260における応答が模擬される。このように各仮想ハードが対象ハードの応答を模擬することにより、そのような仮想ハードで構成されたエミュレータは、模擬対象の装置の内部動作や外部への応答を模擬することが出来る。
The target hardware simulated by virtual hardware is generally one that receives an input such as data or a command and returns a response. The virtual hardware
ところで、関数あるいはルーチンプログラムとしての仮想ハード動作実行部420,440による応答結果の取得には、模擬対象のHDC240やLANボード260がハードウェアとして動作する動作時間は掛からない。しかし、図5に示す仮想NAS320がエミュレータとして高精度であるためには、ハードウェアの動作時間も含めた模擬が実現されることが望ましい。特に、実際のハードウェアでは、装置の動作状況などによって動作時間に揺らぎが生じるので、そのような揺らぎが模擬されることが望ましい。
By the way, the acquisition of the response result by the virtual hardware
そこで、仮想HDC324および仮想LANボード326では、実ハード動作指示部410,430によって、情報処理装置100が有している実ハードの動作が情報処理装置100に指示される。このときの仮想ハードと実ハードとの対応は、上述した対応表に従う。実ハード動作指示部410,430によるこのような指示により、仮想HDC324および仮想LANボード326では、ハードウェアの動作時間も含めた模擬が実現されることになる。そして、このように模擬された動作時間には、情報処理装置100における動作状況などに応じた揺らぎが生じることが期待できるので、エミュレータとして望ましい動作時間の模擬が実現する。なお、このような実ハード動作指示部は、全ての仮想ハードで必要な訳ではない。例えば、仮想CPU321や仮想メモリコントローラ322や仮想メモリ323については、対象ハードの動作時間は、上述した仮想ハード動作実行部が情報処理装置100のCPU110で実行される時間と同程度と考えてよい。従って、仮想ハード動作実行部が情報処理装置100のCPU110で実行されるだけで十分に高精度の模擬となる。従って、実ハード動作指示部は、実ハード動作指示部による動作時間の模擬が必要な種類の仮想ハードのみに備えられている。
Therefore, in the
以下、図4に示すエミュレータ300の起動部310による仮想NASの起動について説明する。
Hereinafter, activation of the virtual NAS by the
図8は、仮想NASの起動処理を表すフローチャートである。以下、このフローチャートが表す起動処理を説明するに当たり、図3も適宜に参照する。 FIG. 8 is a flowchart showing the virtual NAS activation process. Hereinafter, in describing the activation process represented by this flowchart, FIG. 3 is also referred to as appropriate.
図4に示すエミュレータ300の起動部310による本体部(仮想NAS)320の起動処理が開始されると、まず、仮想ハード展開部311によって仮想NASの仮想ハードが情報処理装置100のメモリ130上に展開される(ステップS101)。このとき仮想ハード展開部311は、メモリ130上に展開される各仮想ハードを、上述した対応表327に登録する。
When the activation process of the main body (virtual NAS) 320 by the
図9は、対応表の一例を示す図である。 FIG. 9 is a diagram illustrating an example of the correspondence table.
図9に示すように、対応表327は、仮想ハードウェア450と現実のハードウェア460とが対応付けられて登録されたものである。図8のステップS101では、この対応表327中の仮想ハードウェア450側だけが登録されて現実のハードウェア460側は空欄となっている。図9の対応表327の例では、1段目に「CPU」、2段目に「HDC」、3段目に「LAN」が登録されている。なお、ハードディスクコントローラはハードディスク装置を動作させる時に動作するものであるので、この対応表327ではこれらは区別されない。
As illustrated in FIG. 9, the correspondence table 327 is a table in which
図8のステップS101でこのように仮想ハードが登録されると、次のステップS102では、そのように登録された仮想ハードのうちの1つを実ハード確認部312が選択する。そして、ステップS103で実ハード確認部312は、その選択した仮想ハードの優先表313をハードディスク装置150から取得する。この優先表313は、仮想ハードに対応付けるべき実ハードの優先順位を表している。この優先表313は、本体部(仮想NAS)320の仮想ハードに対応して起動部310に当初から組み込まれている。
When the virtual hardware is registered in this manner in step S101 of FIG. 8, in the next step S102, the real
図10は、優先表の一例を示す図である。 FIG. 10 is a diagram illustrating an example of a priority table.
図10に示す優先表313は、LANボードに対応付けられた優先表313の例である。この優先表313には、ハードウェアの種類として「LAN」「UART」「USB」が順に記載されている。優先表313で上に記載されている種類のハードウェアほど優先順位が高いことを意味している。図10に示す優先表313の例では、上に記載されている種類のハードウェアほどLANボードに動作内容が似ている。但し、動作内容の似た順が優先順とは限らず、内容は異なっていても動作時間が近い順を優先順としてもよい。 A priority table 313 illustrated in FIG. 10 is an example of a priority table 313 associated with a LAN board. In the priority table 313, “LAN”, “UART”, and “USB” are sequentially described as hardware types. This means that the hardware of the type described above in the priority table 313 has a higher priority. In the example of the priority table 313 shown in FIG. 10, the operation content is similar to the LAN board for the types of hardware described above. However, the order in which the operation contents are similar is not necessarily the priority order, and even if the contents are different, the order in which the operation times are close may be set as the priority order.
図10に示すような優先表313は、仮想ハードのうち上述した実ハード動作指示部による動作時間の模擬が必要な種類の仮想ハードのみに用意されている。このため、図8のステップS103で実ハード確認部312が優先表313を取得できなかった場合には、その後のステップS104およびステップS105は省略されてステップS106へと進む。一方、ステップS103で実ハード確認部312が優先表313を取得した場合には、ステップS104で実ハード確認部312が、この優先表313の順で実ハードの存在を情報処理装置100について確認する。この情報処理装置100は、上述したように、エミュレータを実行するホストとして動作する装置である。実ハードの存在確認の具体的な方法としては、情報処理装置100でBIOSなどが装置構成を確認するための仕組みとして情報処理装置100に元々備わっている機能が利用される。なお、この仕組みの詳細については、本件開示の本旨とは直接には関係しないのでこれ以上の説明は省略する。
The priority table 313 as shown in FIG. 10 is prepared only for virtual hardware of the type that requires simulation of the operation time by the above-described actual hardware operation instruction unit among the virtual hardware. For this reason, when the real
ステップS104で実ハードの存在が確認された場合には、実ハード確認部312は実ハードを、この優先表313に対応した仮想ハードに対応付けて対応表327に登録する(ステップS105)。
When the presence of real hardware is confirmed in step S104, the real
実ハードの存在が確認される情報処理装置は、エミュレータ(本実施形態では仮想NAS)を実行するための装置であって、仮想NASが模擬する対象の装置(本実施形態ではNAS)とは一般に別の種類の装置である。しかも、エミュレータの作成時には、このエミュレータを実行する情報処理装置のハードウェア構造は未知であることが多い。このため、以下のような対応部を備えた応用形態が好適である。この対応部は、情報処理装置内に存在しているハードウェア部分を探索する。そして、対応部は、探索で得たハードウェア部分を、エミュレータが有する仮想的ハードウェア部分に、例えば後述する優先順位やその他の対応ルールで対応付ける。このような応用形態によれば、エミュレータを実行する情報処理装置のハードウェア構造が未知であっても、仮想的ハードウェア部分に現実のハードウェア部分を対応付けることが出来る。図4に示す実ハード確認部312は、この対応部の一例に相当する。
An information processing apparatus whose existence of real hardware is confirmed is an apparatus for executing an emulator (virtual NAS in the present embodiment), and is generally a target apparatus (NAS in the present embodiment) to be simulated by the virtual NAS. Another type of device. In addition, when creating an emulator, the hardware structure of an information processing apparatus that executes the emulator is often unknown. For this reason, the application form provided with the following corresponding | compatible parts is suitable. The corresponding unit searches for a hardware part existing in the information processing apparatus. Then, the correspondence unit associates the hardware part obtained by the search with the virtual hardware part of the emulator, for example, with a priority order and other correspondence rules described later. According to such an application mode, even if the hardware structure of the information processing apparatus that executes the emulator is unknown, the actual hardware portion can be associated with the virtual hardware portion. The actual
また、エミュレータを実行する情報処理装置のハードウェア構造には、仮想ハードの種類と同じ種類の実ハードが含まれているとは限らない。このため、以下のような応用形態が更に好適である。この更に好適な応用形態では、上記対応部は、上記仮想的ハードウェア部分に対応付けるべきハードウェア部分の優先順位が与えられていて、上記探索で得たハードウェア部分を、この優先順位に従って上記仮想的ハードウェア部分に対応付ける。
このように優先順位に従って対応付けられることで、仮想的ハードウェア部分には、例え同種のものでなくても、動作時間の模擬に適した現実のハードウェア部分が対応付けられることになる。図10に示す優先表313は、この更に好適な応用形態に言う優先順位の一例を表したものに相当する。また、図4に示す実ハード確認部312は、この更に好適な応用形態における対応部の一例にも相当する。
Further, the hardware structure of the information processing apparatus that executes the emulator does not always include the same type of real hardware as the type of virtual hardware. For this reason, the following application forms are more suitable. In this more preferred application mode, the correspondence unit is given a priority of the hardware part to be associated with the virtual hardware part, and the hardware part obtained by the search is assigned the virtual part according to the priority. Correspond to the hardware part.
By associating in accordance with the priority order as described above, the virtual hardware part is associated with the actual hardware part suitable for the simulation of the operation time even if they are not of the same type. The priority table 313 shown in FIG. 10 corresponds to an example of the priority order in this more preferable application form. Moreover, the real
図9に示す対応表327には、登録された現実のハードウェア460の例が示されている。
The correspondence table 327 shown in FIG. 9 shows an example of registered
対応表327の仮想ハードウェア450側の1段目に登録されている「CPU」には上述した優先表が用意されていないため、現実のハードウェア460側の1段目は空欄となっている。
Since the above priority table is not prepared for the “CPU” registered in the first level on the
対応表327の仮想ハードウェア450側の2段目に登録されている「HDC(HDD)」については、図5に示す情報処理装置100に同種のハードウェアが実在しているため、現実のハードウェア460側の2段目には「HDC(HDD)」が登録されている。
Regarding “HDC (HDD)” registered in the second row on the
対応表327の仮想ハードウェア450側の3段目に登録されている「LAN」については、図5に示す情報処理装置100には同種のハードウェアが存在しないが、図10に示す優先表313で2番目に記載されている「UART」は存在している。このため、現実のハードウェア460側の3段目には「UART」が登録されている。
Regarding “LAN” registered in the third row on the
図8のステップS102〜ステップS105で、以上説明したように実ハードの確認と登録が行われると、次にステップS106に進み、仮想NASの全ての仮想ハードについて実ハードの確認と登録が終わったかが確認される。終わっていれば起動処理は終了され、終わっていなければ上述したステップS102に戻って次の仮想ハードが1つ選択されて実ハードの確認と登録が繰り返される。 When the real hardware is confirmed and registered in steps S102 to S105 in FIG. 8 as described above, the process proceeds to step S106, and whether or not the real hardware has been confirmed and registered for all virtual hardware in the virtual NAS. It is confirmed. If finished, the startup process is finished, and if not finished, the process returns to the above-described step S102, one next virtual hardware is selected, and confirmation and registration of the actual hardware are repeated.
以上説明した起動処理の結果、図5に示すように情報処理装置(即ちホスト)100のメモリ130上に仮想NAS320が展開されて起動される。以下、このように展開された仮想NAS320の具体的な動作における処理手順について、仮想HDD325へのアクセスと、仮想LANボード326へのアクセスを例に挙げて説明する。
As a result of the activation process described above, the
図11は、仮想HDDへのアクセスにおける処理手順を表す図である。また、図12は、仮想HDDへのアクセス処理のうちリード処理の手順を表したフローチャートである。以下、図11を参照しながら図12のフローチャートが表すリード処理について説明する。なお、図12のフローチャートが表すリード処理は、ここでは特に、仮想HDDに記憶されているOSを起動するためのリード処理の例である。 FIG. 11 is a diagram illustrating a processing procedure in accessing a virtual HDD. FIG. 12 is a flowchart showing the read processing procedure in the access processing to the virtual HDD. Hereinafter, the read process represented by the flowchart of FIG. 12 will be described with reference to FIG. The read process represented by the flowchart of FIG. 12 is an example of the read process for starting up the OS stored in the virtual HDD.
このリード処理は、情報処理装置100のCPU110がノースブリッジ120を介してメモリ130内の仮想NAS320が有する仮想CPU321にアクセスすることで開始される(図11に矢印で示す処理手順1および処理手順2)。
This read processing is started when the
このリード処理が開始されると、図12のステップS201で、仮想NAS320の仮想CPU321が仮想HDC324にリードコマンドを発行する(図11の処理手順3)。このリードコマンドは、仮想ハードディスク装置325からOSを読み取るためのコマンドである。即ち、このリードコマンドは、仮想ハードディスク装置325上のセクタ0からセクタnまでに記憶されているデータ(OS)の読込みを仮想HDC324に指示する。なお、図11の処理手順3などといった仮想ハードの動作は、厳密に言えば情報処理装置100のCPU110やメモリ130による処理動作と言うことになるが、説明が煩雑となるだけであるので、以下、仮想ハードの動作として説明する。
When this read process is started, the
仮想NAS320の仮想HDC324は、上記リードコマンドが発行されたことを認識する(図11の処理手順4)。そして図12のステップS202で仮想HDC324は、ハードウェアの動作時間を模擬するために、情報処理装置100に対して、情報処理装置100内の実ハードへのアクセスを指示する。この実ハードへのアクセスは、上記リードコマンドが指示する読込みに相当するアクセスである。このとき、仮想HDC324は、対応表327を参照することで、自分に対応している実ハードがHDC140であることを確認する(図11の処理手順4’)。そして、その確認したHDC140に対するアクセスを情報処理装置(即ちホスト)100に指示して処理を委ねる。
The
情報処理装置100側では、CPU110がハードディスクコントローラ140経由でハードディスク装置150に、セクタ0からセクタnまでに記憶されているデータの読込みを実行させる(図11の処理手順5および処理手順6、図12のステップS203)。その結果、セクタ0からセクタnまでのデータがハードディスク装置150からCPU110へと読み込まれる(図11の処理手順7)。但し、このように読み込まれたデータは使用されないデータであるため、仮想HDC324からの事前の指示に従ってCPU110によって破棄される。そして、CPU110は、読込み処理の完了を待って仮想HDC324に処理を返す。なお、一般のパーソナルコンピュータ上で複数のアプリケーションソフトの処理が同時に実行される場合があるのと同様に、この読込み処理も、ホスト上での他の処理と同時に実行される場合がある。このため、この読込み処理に要する処理時間には、ホストの動作状況に応じた揺らぎが生じることとなる。
On the
その後、図12のステップS204で仮想HDC324は、仮想ハードディスク装置325にアクセスしてセクタ0からセクタnまでのデータ(OS)を読み込む。更に図12のステップS205で仮想HDC324は、仮想CPU321に対して処理完了を通知する(図11の処理手順8)。最後に仮想CPU321は情報処理装置100のCPU110に処理を返す。
Thereafter, in step S204 of FIG. 12, the
このような処理手順により、仮想NAS320では、ハードディスクに対するリード処理の動作が、アクセス時間を含めて模擬される。しかも、上述したように、情報処理装置100が有する現実のハードディスク装置150で生じるアクセス時間の揺らぎが反映されるので、模擬されたリード処理の動作はリアルで模擬の精度は高い。
With such a processing procedure, the
次に、仮想HDDへのアクセス処理のうちライト処理について以下説明する。 Next, write processing among the access processing to the virtual HDD will be described below.
図13は、仮想HDDへのアクセス処理のうちライト処理の手順を表したフローチャートである。以下、図11を参照しながら図13のフローチャートが表すライト処理について説明する。 FIG. 13 is a flowchart showing the procedure of the write process in the access process to the virtual HDD. Hereinafter, the write process represented by the flowchart of FIG. 13 will be described with reference to FIG.
このライト処理も、情報処理装置100のCPU110がノースブリッジ120を介してメモリ130内の仮想NAS320が有する仮想CPU321にアクセスすることで開始される(図11に矢印で示す処理手順1および処理手順2)。
This write processing is also started when the
このライト処理が開始されると、図13のステップS301で、仮想NAS320の仮想CPU321が仮想HDC324にライトコマンドを発行する(図11の処理手順3)。このライトコマンドは、仮想ハードディスク装置325にデータを書き込むためのコマンドである。即ち、このライトコマンドは、仮想ハードディスク装置325上のセクタnからセクタmまでに対するデータの書込みを仮想HDC324に指示する。
When this write processing is started, the
仮想NAS320の仮想HDC324は、上記ライトコマンドが発行されたことを認識する(図11の処理手順4)。そして図12のステップS302で仮想HDC324は、ハードウェアの動作時間を模擬するために、情報処理装置100に対して、情報処理装置100内の実ハードへのアクセスを指示する。この実ハードへのアクセスは、上記ライトコマンドが指示する書込みに相当するアクセスである。このときも、仮想HDC324は、対応表327を参照することで、自分に対応している実ハードがHDC140であることを確認する(図11の処理手順4’)。そして、その確認したHDC140に対するアクセスを情報処理装置100に指示して処理を委ねる。
The
情報処理装置(即ちホスト)100側では、CPU110がハードディスクコントローラ140経由でハードディスク装置150に、セクタnからセクタmまでの分のデータの書込みを実行させる(図11の処理手順5と処理手順6、図13のステップS303)。但し、仮想HDC324による事前の指示に基づいて、セクタnからセクタmまでのセクタ領域へは書込みは行わず、そのセクタ領域までのシークが行われる。そしてシークの後に、情報処理装置100が使用していないセクタ領域に対してセクタnからセクタmまでの分のデータが書き込まれる。このような使用していないセクタ領域としては、例えば「/tmp」などが考えられる。また、セクタnからセクタmまでに比較して、使用していないセクタ領域が狭い場合には、その使用していないセクタ領域が繰り返し利用されて、セクタnからセクタmまでの分のデータが書き込まれる。なお、シークに要する動作時間の方が、データの書込みに要する動作時間よりもずっと長いので、データの書込みは自体は省略も可能である。データ書込みの完了がハードディスクコントローラ140経由でハードディスク装置150からCPU110に通知される(図11の処理手順7)とCPU110は仮想HDC324に処理を返す。
On the information processing device (ie, host) 100 side, the
その後、図13のステップS304で仮想HDC324は、仮想ハードディスク装置325にアクセスしてセクタnからセクタmまでにデータを書き込む。更に図13のステップS305で仮想HDC324は、仮想CPU321に対して処理完了を通知する(図11の処理手順8)。最後に仮想CPU321は情報処理装置100のCPU110に処理を返す。
Thereafter, in step S304 of FIG. 13, the
このような処理手順により、仮想NAS320では、ハードディスクに対するライト処理の動作が、アクセス時間を含めて模擬される。また、リード処理の動作の模擬と同様に、情報処理装置100が有する現実のハードディスク装置150で生じるアクセス時間の揺らぎが反映されるので、模擬されたライト処理の動作もリアルで模擬の精度は高い。
With this processing procedure, the
次に、仮想LANボード326へのアクセスにおける処理手順について説明する。
Next, a processing procedure for accessing the
図14は、仮想LANボードへのアクセスにおける処理手順を表す図である。 FIG. 14 is a diagram illustrating a processing procedure in accessing the virtual LAN board.
仮想LANボード326へのアクセスも、情報処理装置100のCPU110がノースブリッジ120を介してメモリ130内の仮想NAS320が有する仮想CPU321にアクセスすることで開始される(図14に矢印で示す処理手順1および処理手順2)。
Access to the
仮想NAS320の仮想CPU321は仮想LANボード326に、通信処理を指示するコマンドを発行する(図14の処理手順3)。
The
仮想NAS320の仮想LANボード326は、上記通信処理のコマンドが発行されたことを認識する。そして仮想LANボード326は、ハードウェアの動作時間を模擬するために、情報処理装置100に対して、情報処理装置100内の実ハードへのアクセスを指示する。このとき、仮想LANボード326は、対応表327を参照することで、自分に対応している実ハードがUART160であることを確認する(図14の処理手順3’)。そして、その確認したUART160に対するアクセスを情報処理装置(即ちホスト)100に指示して処理を委ねる。このUART160に対するアクセスは、上記通信処理の指示に相当するアクセスである。
The
処理を委ねられた情報処理装置100側では、CPU110がサウスブリッジ140経由でUART160にアクセスして上記通信処理の指示に対応したコマンドをUART160に対して発行する(図14の処理手順4および処理手順5)。そのようなコマンドの処理が完了するとUART160は完了の通知をCPU110に送る(図14の処理手順6)。そして、CPU110は、仮想LANボード326に処理を返す。
On the
その後、仮想LANボード326は、上記通信処理のコマンドに対する応答処理を実行する。そして、仮想LANボード326は、仮想CPU321に対して処理完了を通知する(図14の処理手順7)。最後に仮想CPU321は情報処理装置100のCPU110に処理を返す。
Thereafter, the
このような処理手順により、仮想NAS320では、LANボードに対するアクセスの動作が、LANボードでの処理時間を含めて模擬される。しかも、上述したように、情報処理装置100が有する現実のUART160で生じる処理時間の揺らぎが反映されるので、模擬されたアクセスの動作はリアルで模擬の精度は高い。
With such a processing procedure, in the
以上で第2実施形態の説明を終了する。 This is the end of the description of the second embodiment.
上記説明した第2実施形態では仮想ハードディスク装置が1つ備えられていたが、仮想ハードディスク装置が複数(一例として2つ)備えられた変形例について以下説明する。但し、この変形例は、仮想ハードディスク装置が複数備えられている点を除いて第2実施形態と同様であるので、以下では相違点について説明して重複説明は省略する。 In the second embodiment described above, one virtual hard disk device is provided, but a modified example in which a plurality (two by way of example) of virtual hard disk devices are provided will be described below. However, this modified example is the same as that of the second embodiment except that a plurality of virtual hard disk devices are provided, and therefore, different points will be described below and redundant description will be omitted.
図15は、仮想ハードディスク装置が複数備えられた変形例における仮想ハードディスク装置へのアクセスの処理手順を示す図である。 FIG. 15 is a diagram illustrating a processing procedure of access to a virtual hard disk device in a modification in which a plurality of virtual hard disk devices are provided.
図15に示すように、この変形例では、仮想NAS470が複数の仮想ハードディスク装置471,472を備えているとともに、ホストである情報処理装置101も複数のハードディスク装置151,152を備えている。このため、この変形例における対応表327では、各仮想ハードディスク装置471,472には現実の各ハードディスク装置151,152が別々に対応付けられている。
As shown in FIG. 15, in this modification, the
仮想ハードディスク装置へのアクセスは、情報処理装置101のCPU110がノースブリッジ120を介してメモリ130内の仮想NAS320が有する仮想CPU321にアクセスすることで開始される(図15に矢印で示す処理手順1および処理手順2)。そして仮想NAS320の仮想CPU321が仮想HDC324にアクセス(リードあるいはライト)のコマンドを発行する(図15の処理手順3)。このコマンドは、複数の仮想ハードディスク装置471,472のうち第1の仮想ハードディスク装置471に対するアクセスを指示するものとする。
Access to the virtual hard disk device is started when the
仮想NAS320の仮想HDC324は、コマンドが発行されたことを認識する(図15の処理手順4)。仮想HDC324は、ハードウェアの動作時間を模擬するために、第1の仮想ハードディスク装置471に対応づけられた実ハードが第1のハードディスク装置151であることを対応表327で確認する(図15の処理手順4’)。そして、仮想HDC324は、情報処理装置101に対し、第1のハードディスク装置151へのアクセスを指示して処理を委ねる。
The
情報処理装置(即ちホスト)101側では、CPU110がハードディスクコントローラ140に、第1のハードディスク装置151へのアクセスを指示したコマンドを発行する(図15の処理手順5)。コマンドの発行を受けたHDC140は、第1のハードディスク装置151へのアクセスを実行する。
On the information processing apparatus (ie, host) 101 side, the
この変形例では、第1の仮想ハードディスク装置471および第1のハードディスク装置151へのアクセスが行われている間に、マルチタスクにて更に第2の仮想ハードディスク装置472および第2のハードディスク装置152へアクセスが可能である。
In this modification, while the first virtual
マルチタスクによる第2の仮想ハードディスク装置472へアクセスも、情報処理装置101のCPU110がノースブリッジ120を介してメモリ130内の仮想NAS320が有する仮想CPU321にアクセスすることで開始される(図15の処理手順7および処理手順8)。
Access to the second virtual
そして、第1の仮想ハードディスク装置471へのアクセスの処理と同様に、アクセスのコマンド発行(図15の処理手順9)、コマンド発行の認識(図15の処理手順10)、対応表327での実ハードの確認(図15の処理手順10’)が行われる。
Similar to the process of accessing the first virtual
続いて、情報処理装置101に対する第2のハードディスク装置152へアクセス指示、CPU110によるコマンド発行(図15の処理手順11)、第2のハードディスク装置152へのアクセス(図15の処理手順12)が行われる。
Subsequently, an instruction to access the
ここで、第1のハードディスク装置151へのアクセスと第2のハードディスク装置152へのアクセスとのどちらが先に完了するかは、動作状況によって異なる。ここでは、第2のハードディスク装置152へのアクセスが先に完了する「追い越し」が生じたものとして説明を続ける。
Here, which of the access to the first
アクセスの完了がHDC140経由で第2のハードディスク装置152からCPU110に通知される(図15の処理手順13)とCPU110は仮想HDC324に、第2の仮想ハードディスク装置472へアクセスを実行させる。そしてアクセスが完了すると仮想HDC324は仮想CPU321に対して処理完了を通知する(図15の処理手順14および処理手順15)。さらに仮想CPU321は、情報処理装置100のCPU110に処理完了を通知する(図15の処理手順16および処理手順17)。
When the completion of access is notified from the second
一方、第2のハードディスク装置152に遅れて第1のハードディスク装置151からCPU110にアクセスの完了が通知される(図15の処理手順18)とCPU110は仮想HDC324に、第1の仮想ハードディスク装置471へアクセスを実行させる。そしてアクセスが完了すると仮想HDC324は仮想CPU321に対して処理完了を通知する(図15の処理手順19および処理手順20)。さらに仮想CPU321は、情報処理装置100のCPU110に処理完了を通知する(図15の処理手順21および処理手順22)。
On the other hand, when the completion of access is notified from the first
このように、仮想ハードが実ハードの駆動を指示することにより「追い越し」処理も模擬可能となる。 In this way, the “overtaking” process can be simulated by the virtual hardware instructing the driving of the real hardware.
10 エミュレータ
21 現実のハードウェア部分
20 情報処理装置
11 仮想的ハードウェア部分
12 応答部
13 駆動部
100,101 情報処理装置(ホスト)
110 CPU
120 ノースブリッジ
130 メモリ
140 サウスブリッジ(ハードディスクコントローラ)
150,151,152 ハードディスク装置
160 UART
170 オリジナルバス
180 PCIバス
200 ストレージ装置
210 CPU
220 メモリコントローラ
230 メモリ
240 ハードディスクコントローラ
250 ハードディスク装置
260 LANボード
300 エミュレータ
310 起動部
320,470 本体部(仮想NAS)
311 仮想ハード展開部
312 実ハード確認部
313 優先表
321 仮想CPU
322 仮想メモリコントローラ
323 仮想メモリ
324 仮想ハードディスクコントローラ
325,471,472 仮想ハードディスク装置
326 仮想LANボード
327 対応表
410,430 実ハード動作指示部
420,440 仮想ハード動作実行部
DESCRIPTION OF
110 CPU
120
150, 151, 152
170
220
311 Virtual
322
Claims (3)
前記ハードウェア構造に含まれた構造部分を模擬する仮想的ハードウェア部分を有し、この仮想的ハードウェア部分が、
前記仮想的ハードウェア部分に対応付けられた前記情報処理装置内の現実のハードウェア部分を駆動させる駆動部と、
前記仮想的ハードウェア部分が模擬する構造部分が入力に対して示す応答結果を模擬するために前記駆動部による現実のハードウェア部分の駆動後に前記情報処理装置上で実行される応答部と、
を備えたことを特徴とするエミュレータ。 An emulator that simulates the hardware structure of a simulation target device by being executed on an information processing device,
A virtual hardware part that simulates a structural part included in the hardware structure, the virtual hardware part comprising:
A drive unit for driving an actual hardware part in the information processing apparatus associated with the virtual hardware part;
A response unit that is executed on the information processing apparatus after driving the actual hardware part by the drive unit in order to simulate the response result that the virtual hardware part simulates with respect to the input;
An emulator characterized by comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011030730A JP2012168851A (en) | 2011-02-16 | 2011-02-16 | Emulator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011030730A JP2012168851A (en) | 2011-02-16 | 2011-02-16 | Emulator |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012168851A true JP2012168851A (en) | 2012-09-06 |
Family
ID=46972927
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011030730A Pending JP2012168851A (en) | 2011-02-16 | 2011-02-16 | Emulator |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012168851A (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05324384A (en) * | 1992-05-20 | 1993-12-07 | Fujitsu Ltd | Emulation system for input device |
US5911059A (en) * | 1996-12-18 | 1999-06-08 | Applied Microsystems, Inc. | Method and apparatus for testing software |
JP2003316603A (en) * | 2002-04-24 | 2003-11-07 | Matsushita Electric Ind Co Ltd | Program verification system |
JP2003316847A (en) * | 2002-04-24 | 2003-11-07 | Matsushita Electric Ind Co Ltd | Generating device and generating method for emulation circuit information |
JP2005084820A (en) * | 2003-09-05 | 2005-03-31 | Toshiba Corp | Controller comprising simulating functions of input/output unit |
US20080071517A1 (en) * | 2006-09-19 | 2008-03-20 | Seiko Epson Corporation | Emulations system and emulation method |
-
2011
- 2011-02-16 JP JP2011030730A patent/JP2012168851A/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05324384A (en) * | 1992-05-20 | 1993-12-07 | Fujitsu Ltd | Emulation system for input device |
US5911059A (en) * | 1996-12-18 | 1999-06-08 | Applied Microsystems, Inc. | Method and apparatus for testing software |
JP2003316603A (en) * | 2002-04-24 | 2003-11-07 | Matsushita Electric Ind Co Ltd | Program verification system |
JP2003316847A (en) * | 2002-04-24 | 2003-11-07 | Matsushita Electric Ind Co Ltd | Generating device and generating method for emulation circuit information |
JP2005084820A (en) * | 2003-09-05 | 2005-03-31 | Toshiba Corp | Controller comprising simulating functions of input/output unit |
US20080071517A1 (en) * | 2006-09-19 | 2008-03-20 | Seiko Epson Corporation | Emulations system and emulation method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2724523T3 (en) | USB device enumeration method that includes detecting a type of USB host operating system | |
TWI400652B (en) | Dual operating system parallel processing methods, recording media and computer program products | |
US20080021693A1 (en) | Storage Device Simulator | |
CN109426613B (en) | Method for retrieving debugging data in UEFI and computer system thereof | |
US20160231935A1 (en) | Memory Configuration Operations for a Computing Device | |
KR102243791B1 (en) | Systems and methods for simulated device testing using a memory-based communication protocol | |
JP2015038644A (en) | Computer and method of updating virtual machine | |
CN103123605A (en) | Android platform automation integration testing method and device | |
JP6283096B2 (en) | Program test service | |
TW202319914A (en) | Apparatuses, devices, methods and computer program for performing unit tests on firmware code | |
CN103279408B (en) | The method of testing of raid-array RAID performance | |
US20080281576A1 (en) | Interface board, simulator, synchronization method, and synchronization program | |
JP2012168851A (en) | Emulator | |
AU2011217727B2 (en) | Co-design of a testbench and driver of a device | |
JP4589255B2 (en) | Hardware / software co-verification device | |
US20110119529A1 (en) | Virtual hard disk drive | |
JPWO2012008319A1 (en) | Emulator verification system and emulator verification method | |
US20190012418A1 (en) | Simulation program, method, and device | |
JP5673197B2 (en) | Test program and test method | |
CN117251118B (en) | Virtual NVMe simulation and integration supporting method and system | |
JP2014021540A (en) | Digital signal processing system, digital signal processing system booting device and booting method of digital signal processing system | |
KR101679477B1 (en) | Method and System for Verify using Embedded DDR Memory to Reduce the Proving Time for Memory Driving Peripheral circuit | |
JP4893028B2 (en) | Chipset emulation apparatus and method | |
CN107145420B (en) | OpenPower architecture-based automatic disk test method | |
JP4421498B2 (en) | program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20131106 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140811 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140819 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20150210 |