CN102067083B - 对虚拟化环境中的中断结束消息的懒惰处理 - Google Patents

对虚拟化环境中的中断结束消息的懒惰处理 Download PDF

Info

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
Application number
CN2009801236004A
Other languages
English (en)
Chinese (zh)
Other versions
CN102067083A (zh
Inventor
S·甘吉利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN102067083A publication Critical patent/CN102067083A/zh
Application granted granted Critical
Publication of CN102067083B publication Critical patent/CN102067083B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45583Memory management, e.g. access or allocation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/542Intercept

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)
CN2009801236004A 2008-06-27 2009-06-25 对虚拟化环境中的中断结束消息的懒惰处理 Active CN102067083B (zh)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI664530B (zh) 2017-01-19 2019-07-01 美商萬國商業機器公司 用於測試待處理外部中斷指令之電腦程式產品、電腦系統及電腦實施方法

Families Citing this family (54)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (4)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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.