JP5365847B2 - 仮想化装置における物理デバイスのコンフィグレーション処理方法及びコンピュータシステム - Google Patents
仮想化装置における物理デバイスのコンフィグレーション処理方法及びコンピュータシステム Download PDFInfo
- Publication number
- JP5365847B2 JP5365847B2 JP2009051861A JP2009051861A JP5365847B2 JP 5365847 B2 JP5365847 B2 JP 5365847B2 JP 2009051861 A JP2009051861 A JP 2009051861A JP 2009051861 A JP2009051861 A JP 2009051861A JP 5365847 B2 JP5365847 B2 JP 5365847B2
- Authority
- JP
- Japan
- Prior art keywords
- physical
- partition
- pci
- operating system
- physical device
- 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.)
- Expired - Fee Related
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
-
- 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/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
Description
前記オペレーティングシステムから、物理デバイスへのコンフィグレーションアクセスを捕捉し、前記オペレーティングシステムがアクセスした物理デバイスのデバイスアドレスから、前記物理デバイスが所属するパーティションを特定し、
前記物理デバイスが自パーティションに所属するデバイスであった場合には、前記オペレーティングシステムが要求した前記物理デバイスへのコンフィグレーションレジスタリードまたはライトをそのまま実行し、
前記物理デバイスが自パーティションに所属していないデバイスであった場合には、前記物理デバイスを特定するコンフィグレーションレジスタの内容を、実在しないダミーデバイスの情報に置き換えて前記オペレーティングシステムに通知する仮想化手段と、
を備え、
前記オペレーティングシステムは前記ダミーデバイスに対応したダミーデバイスドライバを有し、該ダミーデバイスドライバによって、前記自パーティションに所属しない物理デバイスを、名称の付与された有効なデバイスとして認識し、
前記ダミーデバイスドライバは、前記オペレーティングシステムから要求される全物理デバイスに共通な処理のうち、他パーティションに所属している物理デバイスの動作に擾乱を与えるものについては、その実行を拒絶すること、を特徴とするコンピュータシステムである。
仮想化ソフトウェア上で動作するオペレーティングシステムから、物理デバイスへのコンフィグレーションアクセスを捕捉し、
前記オペレーティングシステムがアクセスした物理デバイスのデバイスアドレスから、前記物理デバイスが所属するパーティションを特定し、
前記物理デバイスが自パーティションに所属するデバイスであった場合には、前記オペレーティングシステムが要求した前記物理デバイスへのコンフィグレーションレジスタリードまたはライトを実行し、前記物理デバイスが自パーティションに所属していないデバイスであった場合には、前記物理デバイスを特定するコンフィグレーションレジスタの内容を、実在しないダミーデバイスの情報に置き換えて前記オペレーティングシステムに通知し、
前記ダミーデバイスに対応したダミーデバイスドライバによって、前記自パーティションに所属しない物理デバイスを、名称の付与された有効なデバイスとして前記オペレーティングシステムに認識させ、
前記オペレーティングシステムから要求される全物理デバイスに共通な処理のうち、他パーティションに所属している物理デバイスの動作に擾乱を与えるものについては、その実行を前記ダミーデバイスドライバにて拒絶するコンフィグレーション処理方法である。
(1)処理P1
ホストブリッジの二次側バスにバス番号0を付与し、このバス番号を記憶する。ホストブリッジの二次側バスを検査しPCI−PCIブリッジの存在を確認する。
(2)処理P2
見つかったPCI−PCIブリッジの二次側バスに、記憶してあったバス番号に1を加算したバス番号を付与し、このバス番号を記憶する。
(3)処理P3
上記(2)の処理P2で見つけたPCI−PCIブリッジの二次側バスを検査し、PCI−PCIブリッジの配下に、更にPCI−PCIブリッジが存在しないか確認する。新たなPCI−PCIブリッジが見つかったら上記処理P2の処理を行う。
(4)処理P4
PCI−PCIブリッジの配下に、新たなPCI−PCIブリッジが見つからなくなったら、ホストブリッジに接続されている次のPCI−PCIブリッジについて上記処理P2を行う。
(1)処理P11
ホストブリッジまたはPCI−PCIブリッジの二次側バスを検査する前に、デバイス番号を0に初期化し、このデバイス番号を記憶する。
(2)処理P12
バスに接続されているPCIデバイスまたはPCI−PCIブリッジを検査する。見つかったPCIデバイスまたはPCI−PCIブリッジに、記憶してあったデバイス番号を割り当てて、デバイス番号に1を加算して記憶する。
(3)処理P13
バスに接続されているPCIデバイスまたはPCI−PCIブリッジを見つけるたびに、上記処理P12を繰り返す。
(4)処理P14
バスの配下に、新たなPCIデバイスまたはPCI−PCIブリッジが見つからなくなったら、次のPCI−PCIブリッジの二次側バスについて上記処理P11を行う。
20 仮想化ソフトウェア
30 物理ハードウェア
41−1、41−2 標準デバイスドライバ
42−1、42−2ダミーデバイスドライバ
50−1、50−2 物理CPU
51−1、51−2 物理デバイス
Claims (4)
- オペレーティングシステムと、
前記オペレーティングシステムから、物理デバイスへのコンフィグレーションアクセスを捕捉し、前記オペレーティングシステムがアクセスした前記物理デバイスのデバイスアドレスから、前記物理デバイスが所属するパーティションを特定し、
前記物理デバイスが自パーティションに所属するデバイスであった場合には、前記オペレーティングシステムが要求した前記物理デバイスへのコンフィグレーションレジスタリードまたはライトをそのまま実行し、
前記物理デバイスが自パーティションに所属していないデバイスであった場合には、前記物理デバイスを特定するコンフィグレーションレジスタの内容を、実在しないダミーデバイスの情報に置き換えて前記オペレーティングシステムに通知する仮想化手段と、
を備え、
前記オペレーティングシステムは前記ダミーデバイスに対応したダミーデバイスドライバを有し、該ダミーデバイスドライバによって、前記自パーティションに所属しない物理デバイスを、名称の付与された有効なデバイスとして認識し、
前記ダミーデバイスドライバは、前記オペレーティングシステムから要求される全物理デバイスに共通な処理のうち、他パーティションに所属している物理デバイスの動作に擾乱を与えるものについては、その実行を拒絶すること、を特徴とするコンピュータシステム。 - 請求項1に記載のコンピュータシステムにおいて、前記仮想化手段は、前記物理デバイスが自パーティションに所属していないデバイスであった場合には、前記物理デバイスの製造元および種類を特定するコンフィグレーションレジスタの内容を、実在しないダミーデバイスの製造元または種類に置き換えて前記オペレーティングシステムに通知するコンピュータシステム。
- 仮想化装置における物理デバイスのコンフィグレーション処理方法において、
仮想化ソフトウェア上で動作するオペレーティングシステムから、物理デバイスへのコンフィグレーションアクセスを捕捉し、
前記オペレーティングシステムがアクセスした前記物理デバイスのデバイスアドレスから、前記物理デバイスが所属するパーティションを特定し、
前記物理デバイスが自パーティションに所属するデバイスであった場合には、前記オペレーティングシステムが要求した前記物理デバイスへのコンフィグレーションレジスタリードまたはライトを実行し、前記物理デバイスが自パーティションに所属していないデバイスであった場合には、前記物理デバイスを特定するコンフィグレーションレジスタの内容を、実在しないダミーデバイスの情報に置き換えて前記オペレーティングシステムに通知し、
前記ダミーデバイスに対応したダミーデバイスドライバによって、前記自パーティションに所属しない物理デバイスを、名称の付与された有効なデバイスとして前記オペレーティングシステムに認識させ、
前記オペレーティングシステムから要求される全物理デバイスに共通な処理のうち、他パーティションに所属している物理デバイスの動作に擾乱を与えるものについては、その実行を前記ダミーデバイスドライバにて拒絶するコンフィグレーション処理方法。 - 請求項3に記載のコンフィグレーション処理方法において、前記物理デバイスが自パーティションに所属していないデバイスであった場合には、前記物理デバイスの製造元および種類を特定するコンフィグレーションレジスタの内容を、実在しないダミーデバイスの製造元または種類に置き換えて前記オペレーティングシステムに通知するコンフィグレーション処理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009051861A JP5365847B2 (ja) | 2009-03-05 | 2009-03-05 | 仮想化装置における物理デバイスのコンフィグレーション処理方法及びコンピュータシステム |
US12/716,541 US8302110B2 (en) | 2009-03-05 | 2010-03-03 | Method of configuration processing of PCI device on virtualization apparatus and computer system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009051861A JP5365847B2 (ja) | 2009-03-05 | 2009-03-05 | 仮想化装置における物理デバイスのコンフィグレーション処理方法及びコンピュータシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010205124A JP2010205124A (ja) | 2010-09-16 |
JP5365847B2 true JP5365847B2 (ja) | 2013-12-11 |
Family
ID=42679221
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009051861A Expired - Fee Related JP5365847B2 (ja) | 2009-03-05 | 2009-03-05 | 仮想化装置における物理デバイスのコンフィグレーション処理方法及びコンピュータシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8302110B2 (ja) |
JP (1) | JP5365847B2 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4922443B2 (ja) * | 2010-08-26 | 2012-04-25 | 株式会社東芝 | コンピュータシステム、情報処理装置およびセキュリティ保護方法 |
JP5979229B2 (ja) | 2012-05-22 | 2016-08-24 | 富士通株式会社 | 情報処理装置、制御方法、及び制御プログラム |
US20150277945A1 (en) * | 2012-11-15 | 2015-10-01 | Mitsubishi Electric Corporation | Virtual computer system |
US9003071B2 (en) * | 2013-03-13 | 2015-04-07 | Futurewei Technologies, Inc. | Namespace access control in NVM express PCIe NVM with SR-IOV |
WO2015045030A1 (ja) * | 2013-09-25 | 2015-04-02 | 株式会社日立製作所 | ドライブの増設可能な情報システムおよび該情報システムのバス番号割り当て方法 |
US9384158B2 (en) | 2014-03-14 | 2016-07-05 | International Business Machines Corporation | Dynamic universal port mode assignment |
JP2018513505A (ja) * | 2015-02-20 | 2018-05-24 | プリスティン マシーン エルエルシー | システム層間でデータオペレーション機能を分割する方法 |
US10540186B1 (en) | 2017-04-18 | 2020-01-21 | Amazon Technologies, Inc. | Interception of identifier from client configurable hardware logic |
JP7040204B2 (ja) * | 2018-03-27 | 2022-03-23 | ブラザー工業株式会社 | アプリケーションプログラム |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6003093A (en) * | 1996-12-19 | 1999-12-14 | Canon Kabushiki Kaisha | Architecture for image processing application |
JPH11143806A (ja) * | 1997-11-06 | 1999-05-28 | Brother Ind Ltd | データ送信装置,データ送信方法,及び記憶媒体 |
JPH11161591A (ja) * | 1997-11-28 | 1999-06-18 | Brother Ind Ltd | データ通信装置,データ通信方法,記憶媒体,及びデバイスドライバ |
US6330656B1 (en) * | 1999-03-31 | 2001-12-11 | International Business Machines Corporation | PCI slot control apparatus with dynamic configuration for partitioned systems |
US6594785B1 (en) * | 2000-04-28 | 2003-07-15 | Unisys Corporation | System and method for fault handling and recovery in a multi-processing system having hardware resources shared between multiple partitions |
JP2002318779A (ja) | 2001-04-18 | 2002-10-31 | Nec Computertechno Ltd | デバイス装置とそのレジスタのアクセス方法 |
US7024510B2 (en) * | 2003-03-17 | 2006-04-04 | Hewlett-Packard Development Company, L.P. | Supporting a host-to-input/output (I/O) bridge |
JP4052265B2 (ja) | 2004-03-05 | 2008-02-27 | 日本電気株式会社 | 情報処理装置とデバイスドライバのロード方法並びにプログラム |
US7530071B2 (en) * | 2004-04-22 | 2009-05-05 | International Business Machines Corporation | Facilitating access to input/output resources via an I/O partition shared by multiple consumer partitions |
US7774794B2 (en) * | 2005-08-19 | 2010-08-10 | Intel Corporation | Method and system for managing bandwidth in a virtualized system |
US7613847B2 (en) * | 2006-05-16 | 2009-11-03 | Hewlett-Packard Development Company, L.P. | Partially virtualizing an I/O device for use by virtual machines |
US20070283147A1 (en) * | 2006-05-30 | 2007-12-06 | Fried Eric P | System and method to manage device access in a software partition |
JP4810349B2 (ja) | 2006-08-11 | 2011-11-09 | 日本電気株式会社 | I/o装置及び方法 |
US7877760B2 (en) * | 2006-09-29 | 2011-01-25 | Microsoft Corporation | Distributed hardware state management in virtual machines |
US7624262B2 (en) * | 2006-12-20 | 2009-11-24 | International Business Machines Corporation | Apparatus, system, and method for booting using an external disk through a virtual SCSI connection |
US8041920B2 (en) * | 2006-12-29 | 2011-10-18 | Intel Corporation | Partitioning memory mapped device configuration space |
US7689755B2 (en) * | 2007-03-07 | 2010-03-30 | Intel Corporation | Apparatus and method for sharing devices between multiple execution domains of a hardware platform |
US7793307B2 (en) * | 2007-04-06 | 2010-09-07 | Network Appliance, Inc. | Apparatus and method for providing virtualized hardware resources within a virtual execution environment |
US7743389B2 (en) * | 2007-11-06 | 2010-06-22 | Vmware, Inc. | Selecting between pass-through and emulation in a virtual machine environment |
-
2009
- 2009-03-05 JP JP2009051861A patent/JP5365847B2/ja not_active Expired - Fee Related
-
2010
- 2010-03-03 US US12/716,541 patent/US8302110B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20100228887A1 (en) | 2010-09-09 |
US8302110B2 (en) | 2012-10-30 |
JP2010205124A (ja) | 2010-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5365847B2 (ja) | 仮想化装置における物理デバイスのコンフィグレーション処理方法及びコンピュータシステム | |
CN100592271C (zh) | 使用集成dma引擎进行高性能易失性磁盘驱动器存储器访问的装置和方法 | |
US7689755B2 (en) | Apparatus and method for sharing devices between multiple execution domains of a hardware platform | |
CN100410912C (zh) | 从一个设备驱动程序向另一个传送信息的系统和方法 | |
US8386654B2 (en) | System and method for transforming PCIe SR-IOV functions to appear as legacy functions | |
US9875208B2 (en) | Method to use PCIe device resources by using unmodified PCIe device drivers on CPUs in a PCIe fabric with commodity PCI switches | |
US7644252B2 (en) | Multi-processor system and memory accessing method | |
JP6753412B2 (ja) | コンピュータ、デバイス割当管理方法及びプログラム | |
US8386679B2 (en) | Dynamic allocation of a direct memory address window | |
US11106622B2 (en) | Firmware update architecture with OS-BIOS communication | |
US7908457B2 (en) | Retaining an association between a virtual address based buffer and a user space application that owns the buffer | |
US9875132B2 (en) | Input output memory management unit based zero copy virtual machine to virtual machine communication | |
US8825981B2 (en) | Allocating addressable memory regions to an adapter | |
US20090276544A1 (en) | Mapping a Virtual Address to PCI Bus Address | |
US10185679B2 (en) | Multi-queue device assignment to virtual machine groups | |
CN111666579B (zh) | 计算机设备及其访问控制方法和计算机可读介质 | |
CN113227983B (zh) | 将虚拟功能的微代码存储在受信任存储器区域中 | |
JP2011204077A (ja) | 情報処理装置、リソース割り当て方法、およびリソース割り当てプログラム | |
US20160026567A1 (en) | Direct memory access method, system and host module for virtual machine | |
US20120124574A1 (en) | Virtual computer system and method of installing virtual computer system | |
JP5142819B2 (ja) | 仮想計算機システム | |
US20090083743A1 (en) | System method and apparatus for binding device threads to device functions | |
JP2014109938A (ja) | プログラム起動装置、プログラム起動方法、及びプログラム起動プログラム | |
US11281607B2 (en) | Paravirtualized cluster mode for legacy APICs | |
Bielski | Novel memory and I/O virtualization techniques for next generation data-centers based on disaggregated hardware |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20100714 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100714 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110310 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130507 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130708 |
|
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: 20130815 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130828 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5365847 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |