CN102067083B - 对虚拟化环境中的中断结束消息的懒惰处理 - Google Patents
对虚拟化环境中的中断结束消息的懒惰处理 Download PDFInfo
- Publication number
- CN102067083B CN102067083B CN2009801236004A CN200980123600A CN102067083B CN 102067083 B CN102067083 B CN 102067083B CN 2009801236004 A CN2009801236004 A CN 2009801236004A CN 200980123600 A CN200980123600 A CN 200980123600A CN 102067083 B CN102067083 B CN 102067083B
- Authority
- CN
- China
- Prior art keywords
- eoi
- interruption
- virtual
- supervisory routine
- apic
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45583—Memory management, e.g. access or allocation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/542—Intercept
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US12/163,891 US8032680B2 (en) | 2008-06-27 | 2008-06-27 | Lazy handling of end of interrupt messages in a virtualized environment |
| US12/163,891 | 2008-06-27 | ||
| PCT/US2009/048707 WO2009158528A2 (en) | 2008-06-27 | 2009-06-25 | Lazy handling of end of interrupt messages in a virtualized environment |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN102067083A CN102067083A (zh) | 2011-05-18 |
| CN102067083B true CN102067083B (zh) | 2013-12-04 |
Family
ID=41445306
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN2009801236004A Active CN102067083B (zh) | 2008-06-27 | 2009-06-25 | 对虚拟化环境中的中断结束消息的懒惰处理 |
Country Status (6)
| Country | Link |
|---|---|
| US (2) | US8032680B2 (https=) |
| EP (1) | EP2316069B1 (https=) |
| JP (1) | JP5180373B2 (https=) |
| CN (1) | CN102067083B (https=) |
| TW (1) | TWI442322B (https=) |
| WO (1) | WO2009158528A2 (https=) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI664530B (zh) | 2017-01-19 | 2019-07-01 | 美商萬國商業機器公司 | 用於測試待處理外部中斷指令之電腦程式產品、電腦系統及電腦實施方法 |
Families Citing this family (54)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8984199B2 (en) * | 2003-07-31 | 2015-03-17 | Intel Corporation | Inter-processor interrupts |
| US8032680B2 (en) | 2008-06-27 | 2011-10-04 | Microsoft Corporation | Lazy handling of end of interrupt messages in a virtualized environment |
| JP5169731B2 (ja) * | 2008-10-24 | 2013-03-27 | 富士通セミコンダクター株式会社 | マルチプロセッサシステムlsi |
| US8132168B2 (en) * | 2008-12-23 | 2012-03-06 | Citrix Systems, Inc. | Systems and methods for optimizing a process of determining a location of data identified by a virtual hard drive address |
| US9424211B2 (en) * | 2008-12-31 | 2016-08-23 | Intel Corporation | Providing multiple virtual device controllers by redirecting an interrupt from a physical device controller |
| US8566492B2 (en) * | 2009-12-31 | 2013-10-22 | Intel Corporation | Posting interrupts to virtual processors |
| US8656228B2 (en) | 2010-06-23 | 2014-02-18 | International Business Machines Corporation | Memory error isolation and recovery in a multiprocessor computer system |
| US8615622B2 (en) | 2010-06-23 | 2013-12-24 | International Business Machines Corporation | Non-standard I/O adapters in a standardized I/O architecture |
| US8504754B2 (en) | 2010-06-23 | 2013-08-06 | International Business Machines Corporation | Identification of types of sources of adapter interruptions |
| US8677180B2 (en) | 2010-06-23 | 2014-03-18 | International Business Machines Corporation | Switch failover control in a multiprocessor computer system |
| US8566480B2 (en) | 2010-06-23 | 2013-10-22 | International Business Machines Corporation | Load instruction for communicating with adapters |
| US8639858B2 (en) | 2010-06-23 | 2014-01-28 | International Business Machines Corporation | Resizing address spaces concurrent to accessing the address spaces |
| US8650335B2 (en) | 2010-06-23 | 2014-02-11 | International Business Machines Corporation | Measurement facility for adapter functions |
| US8510599B2 (en) | 2010-06-23 | 2013-08-13 | International Business Machines Corporation | Managing processing associated with hardware events |
| US8918573B2 (en) | 2010-06-23 | 2014-12-23 | International Business Machines Corporation | Input/output (I/O) expansion response processing in a peripheral component interconnect express (PCIe) environment |
| US8478922B2 (en) | 2010-06-23 | 2013-07-02 | International Business Machines Corporation | Controlling a rate at which adapter interruption requests are processed |
| US8745292B2 (en) | 2010-06-23 | 2014-06-03 | International Business Machines Corporation | System and method for routing I/O expansion requests and responses in a PCIE architecture |
| US8621112B2 (en) | 2010-06-23 | 2013-12-31 | International Business Machines Corporation | Discovery by operating system of information relating to adapter functions accessible to the operating system |
| US8572635B2 (en) | 2010-06-23 | 2013-10-29 | International Business Machines Corporation | Converting a message signaled interruption into an I/O adapter event notification |
| US9342352B2 (en) | 2010-06-23 | 2016-05-17 | International Business Machines Corporation | Guest access to address spaces of adapter |
| US8645606B2 (en) | 2010-06-23 | 2014-02-04 | International Business Machines Corporation | Upbound input/output expansion request and response processing in a PCIe architecture |
| US8416834B2 (en) | 2010-06-23 | 2013-04-09 | International Business Machines Corporation | Spread spectrum wireless communication code for data center environments |
| US8671287B2 (en) | 2010-06-23 | 2014-03-11 | International Business Machines Corporation | Redundant power supply configuration for a data center |
| US9195623B2 (en) | 2010-06-23 | 2015-11-24 | International Business Machines Corporation | Multiple address spaces per adapter with address translation |
| US8683108B2 (en) | 2010-06-23 | 2014-03-25 | International Business Machines Corporation | Connected input/output hub management |
| US8549182B2 (en) | 2010-06-23 | 2013-10-01 | International Business Machines Corporation | Store/store block instructions for communicating with adapters |
| US8505032B2 (en) | 2010-06-23 | 2013-08-06 | International Business Machines Corporation | Operating system notification of actions to be taken responsive to adapter events |
| US8650337B2 (en) | 2010-06-23 | 2014-02-11 | International Business Machines Corporation | Runtime determination of translation formats for adapter functions |
| US8626970B2 (en) | 2010-06-23 | 2014-01-07 | International Business Machines Corporation | Controlling access by a configuration to an adapter function |
| US8645767B2 (en) | 2010-06-23 | 2014-02-04 | International Business Machines Corporation | Scalable I/O adapter function level error detection, isolation, and reporting |
| US8635430B2 (en) | 2010-06-23 | 2014-01-21 | International Business Machines Corporation | Translation of input/output addresses to memory addresses |
| US8468284B2 (en) | 2010-06-23 | 2013-06-18 | International Business Machines Corporation | Converting a message signaled interruption into an I/O adapter event notification to a guest operating system |
| US8615645B2 (en) | 2010-06-23 | 2013-12-24 | International Business Machines Corporation | Controlling the selectively setting of operational parameters for an adapter |
| US9213661B2 (en) | 2010-06-23 | 2015-12-15 | International Business Machines Corporation | Enable/disable adapters of a computing environment |
| US8417911B2 (en) | 2010-06-23 | 2013-04-09 | International Business Machines Corporation | Associating input/output device requests with memory associated with a logical partition |
| US8612659B1 (en) * | 2010-12-14 | 2013-12-17 | Vmware, Inc. | Hardware interrupt arbitration in virtualized computer systems |
| US8910158B2 (en) * | 2011-12-14 | 2014-12-09 | Intel Corporation | Virtualizing interrupt priority and delivery |
| CN102799465B (zh) * | 2012-06-30 | 2015-05-27 | 华为技术有限公司 | 分布式虚拟化系统的虚拟中断管理方法及装置 |
| US9329880B2 (en) | 2013-02-13 | 2016-05-03 | Red Hat Israel, Ltd. | Counter for fast interrupt register access in hypervisors |
| US10331589B2 (en) * | 2013-02-13 | 2019-06-25 | Red Hat Israel, Ltd. | Storing interrupt location for fast interrupt register access in hypervisors |
| US9069741B2 (en) * | 2013-02-25 | 2015-06-30 | Red Hat, Inc. | Emulating level triggered interrupts of physical devices assigned to virtual machine |
| US9535686B2 (en) | 2013-03-15 | 2017-01-03 | International Business Machines Corporation | Dynamic library replacement |
| US9292331B2 (en) * | 2013-03-15 | 2016-03-22 | Bracket Computing, Inc. | Expansion of services for a virtual data center guest |
| US9697031B2 (en) * | 2013-10-31 | 2017-07-04 | Huawei Technologies Co., Ltd. | Method for implementing inter-virtual processor interrupt by writing register data in a single write operation to a virtual register |
| EP3089033B1 (en) * | 2013-12-27 | 2020-10-07 | Hitachi, Ltd. | Realtime hypervisor with priority interrupt support |
| CN105095128B (zh) * | 2014-05-22 | 2020-04-03 | 中兴通讯股份有限公司 | 中断处理方法及中断控制器 |
| US9910699B2 (en) | 2014-10-28 | 2018-03-06 | Intel Corporation | Virtual processor direct interrupt delivery mechanism |
| KR20170032502A (ko) | 2015-09-14 | 2017-03-23 | 삼성전자주식회사 | 스토리지 장치 및 그것의 인터럽트 발생 방법 |
| US9747123B2 (en) * | 2015-09-25 | 2017-08-29 | Intel Corporation | Technologies for multi-level virtualization |
| US12339979B2 (en) * | 2016-03-07 | 2025-06-24 | Crowdstrike, Inc. | Hypervisor-based interception of memory and register accesses |
| US12248560B2 (en) | 2016-03-07 | 2025-03-11 | Crowdstrike, Inc. | Hypervisor-based redirection of system calls and interrupt-based task offloading |
| US10248595B2 (en) * | 2017-08-10 | 2019-04-02 | Infineon Technologies Ag | Virtual machine monitor interrupt support for computer processing unit (CPU) |
| US11675611B2 (en) | 2018-10-29 | 2023-06-13 | Nutanix, Inc. | Software service intervention in a computing system |
| CN114356812B (zh) * | 2021-12-31 | 2022-08-26 | 元心信息科技集团有限公司 | 中断处理方法、装置、电子设备及计算机可读存储介质 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20040205272A1 (en) * | 2003-03-31 | 2004-10-14 | International Business Machines Corporation | Apparatus and method for virtualizing interrupts in a logically partitioned computer system |
| US20050102671A1 (en) * | 2003-11-06 | 2005-05-12 | Intel Corporation | Efficient virtual machine communication via virtual machine queues |
| CN1766860A (zh) * | 2005-12-02 | 2006-05-03 | 北京中星微电子有限公司 | 一种中断控制处理装置和方法 |
| US20080141277A1 (en) * | 2006-12-06 | 2008-06-12 | Microsoft Corporation | Optimized interrupt delivery in a virtualized environment |
Family Cites Families (17)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5367661A (en) * | 1992-11-19 | 1994-11-22 | International Business Machines Corporation | Technique for controlling channel operations in a host computer by updating signals defining a dynamically alterable channel program |
| US6219741B1 (en) * | 1997-12-10 | 2001-04-17 | Intel Corporation | Transactions supporting interrupt destination redirection and level triggered interrupt semantics |
| US6470408B1 (en) * | 1999-04-14 | 2002-10-22 | Hewlett-Packard Company | Apparatus and method for delivering interrupts via an APIC bus to IA-32 processors |
| US6279046B1 (en) * | 1999-05-19 | 2001-08-21 | International Business Machines Corporation | Event-driven communications interface for logically-partitioned computer |
| US6766398B2 (en) * | 2001-04-17 | 2004-07-20 | International Business Machines Corporation | Method for processing PCI interrupt signals in a logically partitioned guest operating system |
| US20040117532A1 (en) * | 2002-12-11 | 2004-06-17 | Bennett Steven M. | Mechanism for controlling external interrupts in a virtual machine system |
| US7281075B2 (en) * | 2003-04-24 | 2007-10-09 | International Business Machines Corporation | Virtualization of a global interrupt queue |
| US20050228921A1 (en) * | 2004-03-31 | 2005-10-13 | Prashant Sethi | Sharing of interrupts between operating entities |
| JP2005309553A (ja) * | 2004-04-19 | 2005-11-04 | Hitachi Ltd | 計算機 |
| US7962909B1 (en) * | 2004-05-11 | 2011-06-14 | Globalfoundries Inc. | Limiting guest execution |
| US7209994B1 (en) * | 2004-05-11 | 2007-04-24 | Advanced Micro Devices, Inc. | Processor that maintains virtual interrupt state and injects virtual interrupts into virtual machine guests |
| US7143223B2 (en) * | 2004-10-14 | 2006-11-28 | International Business Machines Corporation | Method, system and program product for emulating an interrupt architecture within a data processing system |
| US8286162B2 (en) * | 2005-12-30 | 2012-10-09 | Intel Corporation | Delivering interrupts directly to a virtual processor |
| US8176485B2 (en) * | 2006-05-15 | 2012-05-08 | Microsoft Corporation | Launching hypervisor under running operating system |
| US7873770B2 (en) * | 2006-11-13 | 2011-01-18 | Globalfoundries Inc. | Filtering and remapping interrupts |
| US7853744B2 (en) * | 2007-05-23 | 2010-12-14 | Vmware, Inc. | Handling interrupts when virtual machines have direct access to a hardware device |
| US8032680B2 (en) | 2008-06-27 | 2011-10-04 | Microsoft Corporation | Lazy handling of end of interrupt messages in a virtualized environment |
-
2008
- 2008-06-27 US US12/163,891 patent/US8032680B2/en active Active
-
2009
- 2009-06-01 TW TW098118060A patent/TWI442322B/zh not_active IP Right Cessation
- 2009-06-25 JP JP2011516674A patent/JP5180373B2/ja not_active Expired - Fee Related
- 2009-06-25 WO PCT/US2009/048707 patent/WO2009158528A2/en not_active Ceased
- 2009-06-25 EP EP09771060.2A patent/EP2316069B1/en not_active Not-in-force
- 2009-06-25 CN CN2009801236004A patent/CN102067083B/zh active Active
-
2011
- 2011-08-24 US US13/216,584 patent/US8103815B2/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20040205272A1 (en) * | 2003-03-31 | 2004-10-14 | International Business Machines Corporation | Apparatus and method for virtualizing interrupts in a logically partitioned computer system |
| US20050102671A1 (en) * | 2003-11-06 | 2005-05-12 | Intel Corporation | Efficient virtual machine communication via virtual machine queues |
| CN1766860A (zh) * | 2005-12-02 | 2006-05-03 | 北京中星微电子有限公司 | 一种中断控制处理装置和方法 |
| US20080141277A1 (en) * | 2006-12-06 | 2008-06-12 | Microsoft Corporation | Optimized interrupt delivery in a virtualized environment |
Non-Patent Citations (1)
| Title |
|---|
| Using Hypervisor to Provide Data Secrecy for User Applications on a Per-Page Basis;Jisoo Yang等;《Proceedings of the fourth ACM SIGPLAN/SIGOPS international conference on Virtual execution enviroments》;20080307;71-80 * |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI664530B (zh) | 2017-01-19 | 2019-07-01 | 美商萬國商業機器公司 | 用於測試待處理外部中斷指令之電腦程式產品、電腦系統及電腦實施方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| US20110307641A1 (en) | 2011-12-15 |
| TW201003526A (en) | 2010-01-16 |
| WO2009158528A3 (en) | 2010-03-25 |
| TWI442322B (zh) | 2014-06-21 |
| US20090328035A1 (en) | 2009-12-31 |
| EP2316069A2 (en) | 2011-05-04 |
| JP2011526390A (ja) | 2011-10-06 |
| EP2316069B1 (en) | 2018-02-14 |
| CN102067083A (zh) | 2011-05-18 |
| US8103815B2 (en) | 2012-01-24 |
| US8032680B2 (en) | 2011-10-04 |
| EP2316069A4 (en) | 2012-06-13 |
| WO2009158528A2 (en) | 2009-12-30 |
| JP5180373B2 (ja) | 2013-04-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN102067083B (zh) | 对虚拟化环境中的中断结束消息的懒惰处理 | |
| US10120736B2 (en) | Executing a kernel device driver as a user space process | |
| JP6706209B2 (ja) | 仮想化のためのコヒーレント・アクセラレータ機能分離方法、システムおよびコンピュータ・プログラム | |
| US9798682B2 (en) | Completion notification for a storage device | |
| US11126575B1 (en) | Interrupt recovery management | |
| US9747122B2 (en) | Virtual machine systems | |
| US10956189B2 (en) | Methods for managing virtualized remote direct memory access devices | |
| US10831684B1 (en) | Kernal driver extension system and method | |
| EP3779695A1 (en) | Virtual machine systems | |
| JP6367490B2 (ja) | プロセッサトランザクショナルメモリサポートを用いるメモリアクセス保護 | |
| EP3224712A1 (en) | Support for application transparent, high available gpu computing with vm checkpointing | |
| US20130061005A1 (en) | Method for power optimized multi-processor synchronization | |
| US10089247B2 (en) | System and method for coupling a host device to secure and non-secure devices | |
| US10241829B2 (en) | Information processing device, information processing method, recording medium, calculation processing device, calculation processing method | |
| US10459771B2 (en) | Lightweight thread synchronization using shared memory state | |
| US8122176B2 (en) | System and method for logging system management interrupts | |
| CN100407151C (zh) | 用于管理多个热插拔操作的系统和方法 | |
| CN109408281A (zh) | 用于无头服务器可管理性和自主日志记录的技术 | |
| US10459662B1 (en) | Write failure handling for a memory controller to non-volatile memory | |
| US10642727B1 (en) | Managing migration events performed by a memory controller | |
| US9699093B2 (en) | Migration of virtual machine based on proximity to peripheral device in NUMA environment | |
| US5966547A (en) | System for fast posting to shared queues in multi-processor environments utilizing interrupt state checking | |
| CN113782071B (zh) | 处理输入/输出请求的系统和方法 | |
| US11182311B2 (en) | Virtualization support device, control method of virtualization support device, and calculation system | |
| CN105677606A (zh) | 总线设备的热插拔方法及总线装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| C14 | Grant of patent or utility model | ||
| GR01 | Patent grant | ||
| ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150429 |
|
| C41 | Transfer of patent application or patent right or utility model | ||
| TR01 | Transfer of patent right |
Effective date of registration: 20150429 Address after: Washington State Patentee after: Micro soft technique license Co., Ltd Address before: Washington State Patentee before: Microsoft Corp. |