JP2013041409A - 情報処理装置、割込み制御方法および割込み制御プログラム - Google Patents
情報処理装置、割込み制御方法および割込み制御プログラム Download PDFInfo
- Publication number
- JP2013041409A JP2013041409A JP2011177667A JP2011177667A JP2013041409A JP 2013041409 A JP2013041409 A JP 2013041409A JP 2011177667 A JP2011177667 A JP 2011177667A JP 2011177667 A JP2011177667 A JP 2011177667A JP 2013041409 A JP2013041409 A JP 2013041409A
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- guest
- virtual
- control unit
- destination
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
【解決手段】情報処理装置は、複数のゲストOSを稼動させるハイパーバイザと、割込み要求の宛先となるゲストOSを特定する割込みコントローラとを有する。ハイパーバイザは、複数のVMゲスト各々に対応付けて割込みプログラムが格納される格納先の情報を記憶する記憶部から、割込みコントローラが特定したゲストOSに対応付けられる割込みプログラムの格納先を特定する割込みハンドラ特定部を有する。また、ハイパーバイザは、割込みハンドラ特定部によって特定された格納先から割込みハンドラを読み出して実行する割込み実行部を有する。
【選択図】図5
Description
図5は、実施例2に係る情報処理装置の構成を示す機能ブロック図である。図5に示すように、情報処理装置20は、仮想領域20aと通信インタフェース20bと入出力インタフェース20cと割込みコントローラ22と制御部25とを有する。なお、ここで図示した処理部は、あくまで例示であり、これに限定されるものではなく、例えば、メモリやハードディスクなどの記憶装置、ディスプレイなどの表示部、マウスなどの入力部等を有していてもよい。
次に、図8から図10を用いて、情報処理装置20が実行する処理の流れを説明する。ここでは、図8を用いて、割込み要求の要求元がNICデバイスである例を説明し、図9を用いて、割込み要求の要求元がHDDデバイスである例を説明し、図10を用いて、割込み要求の宛先にCPUが割り当てられている場合の例を説明する。
図8は、実施例2に係る情報処理装置の処理シーケンスをNICデバイスを例にして示した図である。図8に示すように、オペレータ等によってゲストOSが仮想領域20aに作成される、または、ゲストOSが使用するNICデバイスが追加されると(S101とS102)、ハイパーバイザ26は、S103を実行する。
図9は、実施例2に係る情報処理装置の処理シーケンスをHDDデバイスを例にして示した図である。図9に示すように、ゲストOSは、HDDデバイスへのアクセス要求をハイパーバイザ26に送信する(S201とS202)。ハイパーバイザ26は、アクセス要求を受信すると、アクセス要求先のHDDデバイスにデバイスIDを割り与え、割り与えたデバイスIDとともに当該デバイスIDへのアクセス要求を割込みコントローラに出力する(S203とS204)。
図10は、割込み要求の宛先のゲストにCPUが割り当てられている場合の処理シーケンス図である。図10に示すS301からS310までの処理は、図9で説明したS201からS210までと同様の処理なので、詳細な説明は省略する。
開示する情報処理装置は、実施例2で説明したゲストID管理テーブルに記憶される情報として、例えば仮想マシンの動作モードが格納されるアドレス情報をさらに記憶させてもよい。図11は、プロテクトモードを記憶するゲストID管理テーブルの例を示す図である。図11に示すように、ゲストID管理テーブルは、実施例2等で説明した「ゲストID、デバイスID」に対してさらに「プロテクトモード」を記憶する。ここで記憶される「プロテクトモード」は、ゲストOSが動作する動作モードの格納先を示す情報であり、例えばゲストOSが管理する仮想アドレス空間の先頭アドレスなどである。このプロテクトモードで示されるアドレスから読み出した動作モードは、例えば保護仮想アドレスモード(Protected Virtual Address Mode)などとも呼ばれる。なお、このプロテクトモードは、割込みコントローラ22がオペレータ等から受け付けて格納する。一例を挙げると、図8のS102のタイミングでハイパーバイザ26がオペレータから受け付けた情報を、割込みコントローラ22がゲストID管理テーブルに格納する。
開示する情報処理装置は、割込み種別によって、ハイパーバイザ26が割込み処理を代行するか否かを判定することもできる。例えば、ハイパーバイザ26の割込みハンドラ管理テーブル26aに、ゲストOS各々に対応付けてハードウェア割込みに対して実行される割込みハンドラの格納先の情報を記憶させる。こうすることで、ハードウェア割込みをソフトウェア割込みより優先して実行することができる。
実施例2では、ゲストOSにプロセッサの実行権が与えられていない場合には、割込みハンドラを読み出して実行し、ゲストOSにプロセッサの実行権が与えられている場合には、外部割込みを仮想割込み要求に変換してゲストOSに出力する例を説明した。しかし、開示する情報処理装置の割込み実行手法はこれに限定されるものではない。例えば、情報処理装置のハイパーバイザは、割込み対象のゲストOSにプロセッサの実行権が与えられている場合でも、当該ゲストOSを代行して割込みハンドラを実行することもできる。
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともできる。あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
ところで、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することができる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。
11 割込み制御部
12 仮想制御部
12a 記憶部
12b 特定部
12c 実行制御部
20 情報処理装置
20a 仮想領域
20b 通信インタフェース
20c 入出力インタフェース
22 割込みコントローラ
22a 割込みターゲットレジスタ
22b ゲストID管理テーブル
22c 格納制御部
22d 割込み先特定部
25 制御部
25a 処理制御部
26 ハイパーバイザ
26a 割込みハンドラ管理テーブル
26b CPU割当部
26c 割込みハンドラ特定部
26d 割込み実行部
Claims (7)
- 複数の仮想マシンを稼動させる仮想制御部と、
割込み要求の宛先となる仮想マシンを特定する割込み制御部と、を有し、
前記仮想制御部は、
前記複数の仮想マシン各々に対応付けて割込みプログラムが格納される格納先の情報を記憶する記憶部から、前記割込み制御部が特定した仮想マシンに対応付けられる割込みプログラムの格納先を特定する特定部と、
前記特定部によって特定された格納先から割込みプログラムを読み出して実行する実行制御部と
を有することを特徴とする情報処理装置。 - 前記割込み制御部は、前記仮想制御部によって仮想マシンが稼動した場合に、稼動した仮想マシンを識別するマシン識別子と、当該仮想マシンによって使用される外部デバイスを識別するデバイス識別子と対応付けて識別子記憶部に格納し、
前記割込み要求が発生した場合に、割込み要求を発生させたデバイス識別子に対応するマシン識別子を前記識別子記憶部から特定することを特徴とする請求項1に記載の情報処理装置。 - 前記識別子記憶部は、前記複数の仮想マシン各々にさらに対応付けて、前記仮想マシンの動作モードが格納されるアドレス情報を記憶し、
前記特定部は、前記仮想マシンに対応付けられるアドレス情報をさらに特定し、
前記実行制御部は、前記特定部によって特定されたアドレス情報から動作モードを読出し、読み出した動作モードで前記割込みプログラムを実行することを特徴とする請求項2に記載の情報処理装置。 - 前記実行制御部は、前記割込み制御部によって特定された仮想マシンにプロセッサの実行権が与えられていない場合には、前記割込みプログラムを読み出して実行し、前記割込み制御部によって特定された仮想マシンにプロセッサの実行権が与えられている場合には、前記割込み要求を仮想割込み要求に変換して前記割込み要求の宛先となる仮想マシンに出力することを特徴とする請求項1から3のいずれか一つに記載の情報処理装置。
- 前記記憶部は、前記複数の仮想マシン各々に対応付けて、ハードウェア割込みに対して実行される割込みプログラムの格納先の情報を記憶し、
前記実行制御部は、前記特定部によって格納先が特定されたハードウェア割込みについては、特定された格納先から割込みプログラムを読み出して実行し、前記特定部によって格納先が特定されなかった割込み要求については、前記割込み要求を仮想割込みに変換して前記割込み要求の宛先となる仮想マシンに出力することを特徴とする請求項1から3のいずれか一つに記載の情報処理装置。 - 情報処理装置が、
複数の仮想マシン各々に対応付けて割込みプログラムが格納される格納先の情報を記憶する記憶部から、割込み要求の宛先となる仮想マシンを特定する割込み制御部が特定した仮想マシンに対応付けられる割込みプログラムの格納先を特定し、
前記特定した格納先から割込みプログラムを読み出して実行する
処理を実行することを特徴とする割込み制御方法。 - 情報処理装置に、
複数の仮想マシン各々に対応付けて割込みプログラムが格納される格納先の情報を記憶する記憶部から、割込み要求の宛先となる仮想マシンを特定する割込み制御部が特定した仮想マシンに対応付けられる割込みプログラムの格納先を特定し、
前記特定した格納先から割込みプログラムを読み出して実行する
処理を実行させることを特徴とする割込み制御プログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011177667A JP5737050B2 (ja) | 2011-08-15 | 2011-08-15 | 情報処理装置、割込み制御方法および割込み制御プログラム |
US13/477,113 US20130047157A1 (en) | 2011-08-15 | 2012-05-22 | Information processing apparatus and interrupt control method |
EP12172181A EP2560096A1 (en) | 2011-08-15 | 2012-06-15 | Information processing apparatus and interrupt control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011177667A JP5737050B2 (ja) | 2011-08-15 | 2011-08-15 | 情報処理装置、割込み制御方法および割込み制御プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013041409A true JP2013041409A (ja) | 2013-02-28 |
JP5737050B2 JP5737050B2 (ja) | 2015-06-17 |
Family
ID=46690362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011177667A Expired - Fee Related JP5737050B2 (ja) | 2011-08-15 | 2011-08-15 | 情報処理装置、割込み制御方法および割込み制御プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20130047157A1 (ja) |
EP (1) | EP2560096A1 (ja) |
JP (1) | JP5737050B2 (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9268593B2 (en) | 2012-02-03 | 2016-02-23 | Fujitsu Limited | Computer-readable recording medium, virtual machine control method and information processing apparatus |
JP2016518672A (ja) * | 2013-05-23 | 2016-06-23 | エイアールエム リミテッド | 割り込み処理の方法及び装置 |
WO2019239778A1 (ja) * | 2018-06-14 | 2019-12-19 | 日立オートモティブシステムズ株式会社 | 車両制御装置、割り込み情報管理方法及び割り込み情報管理プログラム |
JP2020166879A (ja) * | 2016-06-30 | 2020-10-08 | アマゾン・テクノロジーズ・インコーポレーテッド | 部分的にオフロードされた仮想化マネージャにおけるメモリ割当て技術 |
JP2022520160A (ja) * | 2019-02-14 | 2022-03-29 | インターナショナル・ビジネス・マシーンズ・コーポレーション | フォールバックを伴う有向割り込みの仮想化方法、システム、プログラム |
JP2022520526A (ja) * | 2019-02-14 | 2022-03-31 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 有向割り込みの仮想化のための割り込み信号伝達方法、システム、プログラム |
US11429414B2 (en) | 2016-06-30 | 2022-08-30 | Amazon Technologies, Inc. | Virtual machine management using partially offloaded virtualization managers |
US11822493B2 (en) | 2019-02-14 | 2023-11-21 | International Business Machines Corporation | Directed interrupt for multilevel virtualization |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9158569B2 (en) * | 2013-02-11 | 2015-10-13 | Nvidia Corporation | Virtual interrupt delivery from a graphics processing unit (GPU) of a computing system without hardware support therefor |
US10331589B2 (en) * | 2013-02-13 | 2019-06-25 | Red Hat Israel, Ltd. | Storing interrupt location for fast interrupt register access in hypervisors |
US9329880B2 (en) | 2013-02-13 | 2016-05-03 | Red Hat Israel, Ltd. | Counter for fast interrupt register access in hypervisors |
US10740148B2 (en) * | 2013-07-12 | 2020-08-11 | Hewlett Packard Enterprise Development Lp | Accelerated data operations in virtual environments |
US9652270B2 (en) * | 2014-03-21 | 2017-05-16 | Intel Corporation | Apparatus and method for virtualized computing |
US9921891B1 (en) * | 2015-03-31 | 2018-03-20 | Integrated Device Technology, Inc. | Low latency interconnect integrated event handling |
US9898321B2 (en) * | 2015-07-23 | 2018-02-20 | At&T Intellectual Property I, L.P. | Data-driven feedback control system for real-time application support in virtualized networks |
CN107783913B (zh) | 2016-08-31 | 2021-12-03 | 华为技术有限公司 | 一种应用于计算机的资源访问方法和计算机 |
US10445009B2 (en) * | 2017-06-30 | 2019-10-15 | Intel Corporation | Systems and methods of controlling memory footprint |
JP2019114097A (ja) * | 2017-12-25 | 2019-07-11 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
US11042494B1 (en) * | 2018-06-21 | 2021-06-22 | Amazon Technologies, Inc. | Direct injection of a virtual interrupt |
JP7151631B2 (ja) * | 2019-06-11 | 2022-10-12 | 株式会社デンソー | 車両用制御装置、車両用表示システム、及び車両用表示制御方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001229038A (ja) * | 2000-02-17 | 2001-08-24 | Hitachi Ltd | マルチオペレーテング計算機システム |
JP2006155272A (ja) * | 2004-11-30 | 2006-06-15 | Hitachi Ltd | 仮想計算機の制御方法及びプログラム |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2682770B2 (ja) * | 1992-05-15 | 1997-11-26 | 富士通株式会社 | 仮想計算機システムのcpu制御方式 |
US6496847B1 (en) * | 1998-05-15 | 2002-12-17 | Vmware, Inc. | System and method for virtualizing computer systems |
US7620955B1 (en) * | 2001-06-08 | 2009-11-17 | Vmware, Inc. | High-performance virtual machine networking |
US7177967B2 (en) * | 2003-09-30 | 2007-02-13 | Intel Corporation | Chipset support for managing hardware interrupts in a virtual machine system |
US7941624B2 (en) * | 2006-09-28 | 2011-05-10 | Intel Corporation | Parallel memory migration |
US8239610B2 (en) * | 2009-10-29 | 2012-08-07 | Red Hat, Inc. | Asynchronous page faults for virtual machines |
-
2011
- 2011-08-15 JP JP2011177667A patent/JP5737050B2/ja not_active Expired - Fee Related
-
2012
- 2012-05-22 US US13/477,113 patent/US20130047157A1/en not_active Abandoned
- 2012-06-15 EP EP12172181A patent/EP2560096A1/en not_active Withdrawn
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001229038A (ja) * | 2000-02-17 | 2001-08-24 | Hitachi Ltd | マルチオペレーテング計算機システム |
JP2006155272A (ja) * | 2004-11-30 | 2006-06-15 | Hitachi Ltd | 仮想計算機の制御方法及びプログラム |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9268593B2 (en) | 2012-02-03 | 2016-02-23 | Fujitsu Limited | Computer-readable recording medium, virtual machine control method and information processing apparatus |
JP2016518672A (ja) * | 2013-05-23 | 2016-06-23 | エイアールエム リミテッド | 割り込み処理の方法及び装置 |
JP2020166879A (ja) * | 2016-06-30 | 2020-10-08 | アマゾン・テクノロジーズ・インコーポレーテッド | 部分的にオフロードされた仮想化マネージャにおけるメモリ割当て技術 |
JP7007425B2 (ja) | 2016-06-30 | 2022-01-24 | アマゾン・テクノロジーズ・インコーポレーテッド | 部分的にオフロードされた仮想化マネージャにおけるメモリ割当て技術 |
US11429414B2 (en) | 2016-06-30 | 2022-08-30 | Amazon Technologies, Inc. | Virtual machine management using partially offloaded virtualization managers |
WO2019239778A1 (ja) * | 2018-06-14 | 2019-12-19 | 日立オートモティブシステムズ株式会社 | 車両制御装置、割り込み情報管理方法及び割り込み情報管理プログラム |
JP2022520160A (ja) * | 2019-02-14 | 2022-03-29 | インターナショナル・ビジネス・マシーンズ・コーポレーション | フォールバックを伴う有向割り込みの仮想化方法、システム、プログラム |
JP2022520526A (ja) * | 2019-02-14 | 2022-03-31 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 有向割り込みの仮想化のための割り込み信号伝達方法、システム、プログラム |
JP7379502B2 (ja) | 2019-02-14 | 2023-11-14 | インターナショナル・ビジネス・マシーンズ・コーポレーション | フォールバックを伴う有向割り込みの仮想化方法、システム、プログラム |
US11822493B2 (en) | 2019-02-14 | 2023-11-21 | International Business Machines Corporation | Directed interrupt for multilevel virtualization |
US11829790B2 (en) | 2019-02-14 | 2023-11-28 | International Business Machines Corporation | Directed interrupt virtualization with fallback |
JP7398465B2 (ja) | 2019-02-14 | 2023-12-14 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 有向割り込みの仮想化のための割り込み信号伝達方法、システム、プログラム |
Also Published As
Publication number | Publication date |
---|---|
JP5737050B2 (ja) | 2015-06-17 |
US20130047157A1 (en) | 2013-02-21 |
EP2560096A1 (en) | 2013-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5737050B2 (ja) | 情報処理装置、割込み制御方法および割込み制御プログラム | |
JP6328134B2 (ja) | クラスタ化されたコンピュータ・システムで通信チャネルのフェイルオーバを実行する方法、装置、およびプログラム | |
US9354952B2 (en) | Application-driven shared device queue polling | |
US20130174144A1 (en) | Hardware based virtualization system | |
JP6029550B2 (ja) | 計算機の制御方法及び計算機 | |
US9535732B2 (en) | Zero copy transmission in virtualization environment | |
US9697029B2 (en) | Guest idle based VM request completion processing | |
US9009702B2 (en) | Application-driven shared device queue polling in a virtualized computing environment | |
US10310974B2 (en) | Systems and methods for input/output computing resource control | |
JP2007183951A (ja) | 仮想プロセッサへの直接的なインタラプトの送信 | |
JP2007095065A (ja) | ネットワーク上におけるcellプロセッサ制御技術 | |
US8996774B2 (en) | Performing emulated message signaled interrupt handling | |
US9268593B2 (en) | Computer-readable recording medium, virtual machine control method and information processing apparatus | |
JPWO2015145983A1 (ja) | コンピュータシステム、データ処理装置、バスデータ転送方法、および、コンピュータ可読記録媒体 | |
WO2022001808A1 (zh) | 一种***以及中断处理方法 | |
WO2023071508A1 (zh) | 线程间中断信号发送 | |
TW201030623A (en) | Providing multiple virtual device controllers by redirecting an interrupt from a physical device controller | |
Mvondo et al. | Closer: A new design principle for the privileged virtual machine os | |
US11614973B2 (en) | Assigning devices to virtual machines in view of power state information | |
JP7047906B2 (ja) | 入出力処理割り当て制御装置、入出力処理割り当て制御システム、入出力処理割り当て制御方法、及び、入出力処理割り当て制御プログラム | |
Pfefferle | vVerbs: a paravirtual subsystem for RDMA-capable network interfaces |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140404 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20141126 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141202 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150202 |
|
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: 20150324 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150406 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5737050 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |