CN101777005A - 重定向物理设备控制器的中断而提供多个虚拟设备控制器 - Google Patents
重定向物理设备控制器的中断而提供多个虚拟设备控制器 Download PDFInfo
- Publication number
- CN101777005A CN101777005A CN200910217299A CN200910217299A CN101777005A CN 101777005 A CN101777005 A CN 101777005A CN 200910217299 A CN200910217299 A CN 200910217299A CN 200910217299 A CN200910217299 A CN 200910217299A CN 101777005 A CN101777005 A CN 101777005A
- Authority
- CN
- China
- Prior art keywords
- controller
- interrupt
- processor
- virtual
- physical
- 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
- 230000004044 response Effects 0.000 claims abstract description 3
- 238000000034 method Methods 0.000 abstract description 23
- 238000003860 storage Methods 0.000 description 23
- 238000013500 data storage Methods 0.000 description 11
- 238000013461 design Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005622 photoelectricity Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
-
- 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/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; 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)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明公开通过重定向来自物理设备控制器的中断而提供多个虚拟设备控制器的装置、方法和系统的实施例。在一个实施例中,装置包括处理器、物理设备控制器和虚拟化逻辑。虚拟化逻辑用于接收来自物理设备控制器的第一中断,并作为响应,将来自多个虚拟设备控制器之一的第二中断发送至处理器。
Description
技术领域
本公开涉及信息处理领域,更具体地说,涉及信息处理系统中的虚拟化领域。
背景技术
一般来说,信息处理系统中的虚拟化概念允许一个或多个操作系统的多个实例(均为“OS”)在单个信息处理系统上运行,即使每个OS设计成具有对系统及其资源的完全、直接控制。通常通过利用软件(例如,虚拟机监视器或“VMM”)来实现虚拟化以向每个OS呈现具有该OS可完全且直接控制的虚拟资源(包括一个或多个虚拟处理器)的“虚拟机”(“VM”),而VMM维持用于实现诸如在VM之间共享和/或分配物理资源的虚拟化策略的系统环境(“虚拟化环境”)。在VM上运行的每个OS和任何其它软件称为“访客”或“访客软件”,而“主机(host)”或“主机软件”是在虚拟化环境之外运行的诸如VMM的软件。
信息处理系统中的物理处理器可通过例如支持进入虚拟化环境以在VM中的虚拟处理器(即,在VMM施加的约束下的物理处理器)上运行“访客”的指令而支持虚拟化。在虚拟化环境中,诸如访问有特权的寄存器或资源的外部中断或尝试的某些事件、操作和情形可被拦截,即,使处理器退出虚拟化环境,以使得VMM可进行操作以便例如实现虚拟化策略。例如,VMM可拦截(intercept)外部中断,并将其路由给合适的虚拟处理器。
可在专用基础上将系统中的诸如输入/输出设备控制器的物理资源指定或分配给VM。或者,通过拦截涉及某个物理资源的所有事务以使得VMM可执行、重定向或限制每个事务,多个VM可共享该物理资源。第三种方法可以是将物理资源设计成使它具有用作多个虚拟资源的能力。
发明内容
本发明涉及一种装置,包括:
处理器;
物理设备控制器;以及
虚拟化逻辑,用于接收来自所述物理设备控制器的第一中断,并作为响应,将来自多个虚拟设备控制器之一的第二中断发送至所述处理器。
附图说明
附图中举例而非限制性地示出本发明。
图1示出根据本发明一个实施例用于重定向中断的设备。
图2示出根据本发明一个实施例用于重定向中断的方法。
图3示出根据本发明一个实施例存储用于重定向中断的信息的条目。
具体实施方式
如下所述,本发明能以用于重定向中断的装置或方法的形式实施。在本描述中,阐述了诸如组件和系统配置的众多具体细节,以便可以更全面地理解本发明。但是,本领域技术人员将明白,没有这些具体细节也可实现本发明。另外,没有详细示出一些熟知的结构、电路等,以免不必要地使本发明的描述晦涩难懂。
希望多个虚拟机可共享单个物理设备控制器,而无需VMM拦截涉及该设备控制器的所有事务,或无需将设备控制器重新设计成支持虚拟化。因此,本发明的实施例可用于重定向来自单个物理设备控制器的中断,以使得物理设备控制器看起来就像是多个虚拟设备控制器一样。
本发明的实施例的元件能以硬件、软件、固件、或硬件、软件或固件的任何组合的形式实现。术语“硬件”一般是指具有物理结构的元件,如电子、电磁、光、光电、机械、机电零件等。术语“软件”一般是指逻辑结构、方法、过程、程序、例行程序、进程、算法、公式、表达式等。术语“固件”一般是指在硬件结构(如闪存或只读存储器)中实现或实施的逻辑结构、方法、过程、程序、例行程序、进程、算法、公式或表达式。固件的实例有微代码、可写控制存储和微编程结构。
图1示出根据本发明一个实施例可在其中重定向中断的信息处理系统100。信息处理系统100包括裸平台硬件110,它可以是能够执行任何OS、VMM或其它软件的任何装置。例如,裸平台硬件110可以是个人计算机、大型计算机、便携式计算机、手持设备、机顶盒、服务器或任何其它计算系统的硬件。在此实施例中,裸平台硬件110包括处理器120、芯片集130、系统存储器140和设备控制器150。
处理器120可以是具有一个或多个执行核的任何组件,其中每个执行核可基于各种不同类型的处理器中的任何处理器,这些不同类型的处理器包括:通用微处理器,例如处理器系列、处理器系列、公司的其它处理器系列中的处理器或另一公司的另一处理器;或数字信号处理器或微控制器。尽管图1只示出一个这样的处理器120,但裸处理硬件110可包括任何数量的处理器,包括:任何数量的多核处理器,每个多核处理器具有任何数量的执行核;以及任何数量的多线程处理器,每个多线程处理器具有任何数量的线程。
芯片集130可以是支持存储器操作、输入/输出操作、配置、控制、内部或外部接口、连接、或通信功能(例如,“胶合”逻辑和总线桥)和/或处理器120和/或系统100的任何类似功能的任何电路和逻辑组。芯片集130的各个元件可集合在单个芯片上、一对芯片上、散布在多个芯片中,和/或部分地、全部地、冗余地、或根据分布式方法集成到包括处理器120在内的一个或多个处理器中。在此实施例中,芯片集130包括如下所述的根据本发明一个实施例用于重定向中断的虚拟化逻辑132。在其它实施例中,虚拟化逻辑132可包含在系统100的其它地方。
系统存储器140可包括其上可存储诸如数据和/或指令的信息的任何介质,例如静态或动态随机存取存储器、基于半导体的只读存储器或闪速存储器、磁或光盘存储器、或可由处理器120读取的任何其它类型的介质、或这些介质的任何组合。
设备控制器150可表示任何类型的I/O、外围设备或可作为中断请求的来源的其它设备的控制器,例如硬盘控制器、音频控制器、网络接口控制器、外围总线控制器等。设备控制器150可在离散组件中实施,或可包含在具有任何其它设备控制器的集成组件中。在一个实施例中,设备控制器150可表示多功能I/O、外围设备或其它设备控制器中的功能。设备控制器150可包括用于存储配置信息的配置存储设备152。
处理器120、芯片集130、系统存储器140和设备控制器150可根据任何已知方法彼此耦合或相互通信,这些已知方法可以是例如直接法、或通过一种或多种并行、顺序、流水线、异步、同步、有线、无线或其它总线或点对点连接或通信方式的间接法。例如,在此实施例中,芯片集130包括接口131,接口131用于通过任何这样的连接或其它通信方式从设备控制器150接收信号、消息和/或诸如中断请求的事务,或将信号、消息和/或事务传送至设备控制器150和/或系统100中的任何其它代理或组件。类似地,设备控制器150包括接口151,接口151用于向和/或从芯片集130和/或系统100中的任何其它代理或组件传送和/或接收信号、消息和/或事务。系统100还可包括任何数量的额外代理、组件或连接。
系统100还包括VMM 160与VM 162和164。VMM 160可以是经安装而可在裸平台硬件110上运行或可供裸平台硬件110访问以向访客呈现VM(即,裸平台硬件110的抽象)或以其它方式创建VM、管理VM并在系统100内实现虚拟化策略的任何软件、固件或硬件主机。在其它实施例中,主机可以是能够控制裸平台硬件110的任何VMM、管理程序、OS、或其它软件、固件或硬件。访客可以是任何OS、包括VMM 160的另一实例在内的任何VMM、任何管理程序、或任何应用或其它软件。
根据VM中呈现的处理器和平台的体系结构,每个访客预期能访问裸平台硬件110或由VMM 160虚拟化的平台的资源,例如处理器和平台寄存器、存储器和输入/输出设备。图1示出两个VM 162和164,可在每个VM上安装访客OS和任何数量的访客应用。尽管图1示出两个VM,但在本发明的范围内,可创建任何数量的VM,并且可以安装任何数量的访客OS和访客应用以在每个VM上运行。
返回到芯片集130,虚拟化逻辑132可包括用于重定向来自物理设备控制器(如物理设备控制器150)的中断的任何电路、逻辑或其它结构,如固件。芯片集130还包括如上所述的接口131、配置存储设备134和数据存储设备136。配置存储设备134和数据存储设备136可包括其上可存储信息的任何介质;例如,配置存储设备134可包括可编程寄存器,而数据存储设备136可包括静态随机存取存储器。虚拟化逻辑132可从配置存储设备134和/或数据存储设备136读取信息以及将信息写入到配置存储设备134和/或数据存储设备136,以确定要捕获哪些物理设备控制器的中断、每个共享的物理设备控制器当前分配给哪个VM、要将所捕获的每个VM的中断重定向到哪里等等,以及维持这样的状态。配置存储设备134和数据存储设备136可映射到处理器110的地址空间,以便可以利用它们来在虚拟化逻辑132与VM 162和164之间交换信息。
芯片集130可通过接口131从设备控制器150接收中断请求。在一个实施例中,可根据任何已知的信令协议通过输入端子作为诸如水平或边缘触发中断信号的信号接收中断请求(“管脚中断”)。在另一实施例中,可根据任何已知的消息、事务或其它通信协议作为诸如总线消息或点对点事务的消息接收中断请求。例如,在设备控制器150通过外围组件互连Express(“PCI-Express”)总线耦合到芯片集130的实施例中,总线协议可包括消息信号中断(“MSI”),其中中断消息可包括32位地址字段和32位数据字段。包括利用基于信号和消息的中断请求的实施例在内的其它实施例也是可能的。
系统100可包括用于将中断请求按优先级排序并将它们递送给处理器120和/或系统100中的任何其它代理的一个或多个中断控制器。在一个实施例中,处理器120包括本地中断控制器122,芯片集130包括I/O中断控制器138。
可将中断请求引至处理器120以执行与设备控制器150相关联的中断处理程序。目标(intended)中断处理程序可由中断请求所传达的信息(例如,MSI中的地址和/或数据字段的内容)指示,或对于管脚中断,预期的中断处理程序可由输入端子、管脚或信号路径的身份(identity)指示。但是,为了支持设备控制器150的虚拟化,虚拟化逻辑132可捕获中断请求,即,虚拟化逻辑132拦截并修改要到处理器120的中断消息或信号。
图2示出根据本发明一个实施例可重定向中断的方法200。在对图2的方法实施例的描述中,可参照图1中的系统实施例的元件,但是,本发明的方法实施例在这方面不受限制。
在方法200的方框210中,配置信息处理系统(如系统100),使得将可以作为中断请求的来源的每个物理设备控制器(如设备控制器150)与中断处理程序相关联。可将配置信息存储在配置存储设备152中,配置存储设备152可以是例如MSI寄存器。
在包括MSI的实施例中,可通过例如虚拟化逻辑132来配置物理设备控制器150以利用它的MSI的地址字段中的第一地址值和数据字段中的第一数据值。根据由VMM 160维持的系统存储器的视图,第一地址值可以是与本地中断控制器122相关联的地址。根据由VMM
160维持的系统存储器的视图,第一数据值可以是与设备控制器150的中断处理程序相关联的地址。
在包括管脚中断的实施例中,可通过以下方法来配置物理设备控制器150:硬接线或软接线要由I/O中断控制器138接收的该物理设备控制器150的中断请求输出,使得该中断请求输出可由虚拟化逻辑132拦截。例如,可将中断请求输出多路传送至I/O中断控制器134或虚拟化逻辑132。I/O中断控制器138可编程为使设备控制器150的中断处理程序与来自设备控制器150的中断请求输出所连接到的输入相关联。
在方框212,将虚拟化逻辑132配置成捕获来自设备控制器150的中断请求。
在包括MSI的实施例中,虚拟化逻辑132可包括配置存储设备134中的多个位置(location),这些位置可用在芯片集130和设备控制器150之间的总线上捕获的MSI事务的地址和数据值编程。例如,图3示出配置存储设备134中的条目300,条目300包括物理MSI地址字段310、物理MSI数据字段320、虚拟MSI地址字段330和虚拟MSI数据字段340。在此实施例中,可将第一地址值和第一数据值分别编程到物理MSI地址字段310和物理MSI数据字段320中。然后,如下文进一步描述的,可使用条目300来将虚拟设备控制器与物理设备控制器150相关联。也可用第一地址和第一数据值来编程以条目300格式的额外条目,以将额外虚拟设备控制器与物理设备控制器150相关联。
在包括管脚中断的实施例中,可将中断请求信号从可由本地中断控制器138接收切换为可由虚拟化逻辑132接收。
在方框214,可将虚拟化逻辑132配置成使表示物理设备控制器150的虚拟设备控制器中的一个或多个虚拟设备控制器与一个或多个VM相关联。
在利用MSI的实施例中,可用所捕获的MSI事务的地址和数据值编程的配置存储设备134中的位置可包括可用与VM相关联的地址和数据值编程的额外的对应位置(例如,虚拟MSI地址字段330和虚拟MSI数据字段340)。例如,VM 152可能不能访问所有系统存储器140;因此,VM 152的系统存储器140视图可能不同于VMM 150的视图。根据VM 152的系统存储器140视图,与本地中断控制器122相关联的地址可能不是结合方框212描述的第一地址值,而可能是第二地址,并且与设备控制器150的中断处理程序相关联的地址可能不是第一数据值,而可能是第二数据值。因此,可用第二地址值编程虚拟MSI地址字段330,并用第二数据值编程虚拟MSI数据字段340。
在利用管脚中断的实施例中,虚拟化逻辑132可配置成代表对应于物理设备控制器150的虚拟设备控制器将中断请求发送至I/O中断控制器138。配置存储设备134或数据存储设备136可包括用于存储来自物理设备控制器的中断请求输入与去往I/O中断控制器138的中断请求输出之间的映射的位置。
在方框220,物理设备控制器150通过例如发出MSI事务或通过断言中断信号而做出第一中断请求。在方框222,虚拟化逻辑132捕获中断请求。在方框224,虚拟化逻辑132基于例如存储在数据存储设备136中的信息和/或通过轮询物理设备控制器150来确定要将第一中断请求给哪个VM。在方框226,虚拟化逻辑132在数据存储设备136的队列、缓冲器或其它位置中输入第一中断请求,使得VM可找到该请求以与虚拟化逻辑132交换信息。
在方框230,虚拟化逻辑132将对应于但不同于方框220中的第一中断请求的第二中断请求发送给处理器120。在一个实施例中,直到处理器120的控制权转移到第一中断请求要到的那个VM时才发送第二中断请求。该第二中断请求可以是消息或信号的形式。在它是消息的实施例中,消息中所包含的地址、数据和/或任何其它信息可以是对应于虚拟设备控制器而非物理设备控制器的信息。例如,可在处理器120和芯片集130之间的总线上发送MSI,其中地址字段中的虚拟MSI地址字段330是第二地址值,而数据字段中的虚拟MSI数据字段340是第二数据值。在第二中断请求是信号的实施例中,可将信号从虚拟化逻辑132发送到I/O中断控制器138,然后可将信号从I/O中断控制器138发送至处理器120。基于在方框214的描述中所论述的映射,从虚拟化逻辑132发送的信号可以是对应于虚拟设备控制器而非物理设备控制器150的信号。在任一实施例中,VMM 160都可以不知道信息对应的是虚拟设备控制器而非物理设备控制器,因为虚拟化是通过虚拟化逻辑132而非VMM 160执行的。
在方框240,处理器120接收第二中断请求,获取至中断处理程序的向量,并开始在目标VM中执行中断处理程序。在方框242,VM可通过数据存储设备136与虚拟化逻辑132交换信息。
在本发明的范围内,可在省略所示方框、增加额外方框、或重排、省略或添加额外方框的组合的情况下执行方法200。诸如226和230的一些方框可并行执行。
可在从创建到模拟到制作的各种阶段中设计根据本发明实施例设计的任何组件或组件的部分。表示设计的数据可用多种方式来表示该设计。首先,如同在模拟中有用一样,可利用硬件描述语言或另一功能描述语言来表示硬件。另外或作为替代,可在设计过程的某些阶段制作具有逻辑和/或晶体管门的电路级模型。此外,在某个阶段,大多数设计达到可用表示各种设备的物理布局的数据来对其建模的程度。在利用常规半导体制造技术的情况下,表示设备布局模型的数据可以是指定用于制造集成电路的掩膜的不同掩膜层上各种特征存在与否的数据。
在设计的任何表示中,可将数据存储在任何形式的机器可读介质中。经调制或以其它方式生成以传送这样的信息的光或电波、存储器、或诸如盘的磁或光存储介质都可作为机器可读介质。任何这些介质都可“携带”或“指示”本发明的实施例中所用的设计或其它信息。当传送指示或携带这些信息的电载波时,在执行电信号的复制、缓冲或再传送的程度,进行新的复制。因此,通信提供商或网络提供商的这些动作可构成对实施本发明技术的诸如载波的制品进行复制。
因此,公开了用于重定向中断的装置、方法和系统。尽管描述并在附图中示出了某些实施例,但应理解,这些实施例只是说明而非限制广泛的发明,并且本发明不限于所示和所描述的特定构造和布置,在研读本公开后,本领域技术人员可联想到各种其它修改。在诸如此类的技术领域中,发展迅速且不易预知进一步的进展,在不背离本公开的原理或随附权利要求的范围的情况下,在赋予技术发展的促进下,所公开的实施例可容易在布置和细节方面做出修改。
Claims (1)
1.一种装置,包括:
处理器;
物理设备控制器;以及
虚拟化逻辑,用于接收来自所述物理设备控制器的第一中断,并作为响应,将来自多个虚拟设备控制器之一的第二中断发送至所述处理器。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/347,970 | 2008-12-31 | ||
US12/347970 | 2008-12-31 | ||
US12/347,970 US9424211B2 (en) | 2008-12-31 | 2008-12-31 | Providing multiple virtual device controllers by redirecting an interrupt from a physical device controller |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101777005A true CN101777005A (zh) | 2010-07-14 |
CN101777005B CN101777005B (zh) | 2014-05-07 |
Family
ID=41717430
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910217299.5A Expired - Fee Related CN101777005B (zh) | 2008-12-31 | 2009-12-25 | 重定向物理设备控制器的中断而提供多个虚拟设备控制器的装置和方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9424211B2 (zh) |
JP (1) | JP4980416B2 (zh) |
CN (1) | CN101777005B (zh) |
DE (1) | DE102009060301A1 (zh) |
GB (1) | GB2466706B (zh) |
TW (1) | TWI525546B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8499112B2 (en) * | 2011-08-16 | 2013-07-30 | Hitachi, Ltd. | Storage control apparatus |
JP5846836B2 (ja) * | 2011-10-11 | 2016-01-20 | 株式会社日立製作所 | 仮想計算機、仮想計算機システム、及び仮想計算機制御方法 |
US9110878B2 (en) * | 2012-01-18 | 2015-08-18 | International Business Machines Corporation | Use of a warning track interruption facility by a program |
US9697154B2 (en) | 2014-08-20 | 2017-07-04 | Red Hat Israel, Ltd. | Managing message signaled interrupts in virtualized computer systems |
US11275600B2 (en) * | 2017-11-14 | 2022-03-15 | TidalScale, Inc. | Virtualized I/O |
CN108369604B (zh) * | 2017-12-28 | 2021-12-03 | 深圳前海达闼云端智能科技有限公司 | 一种多操作系统共享文件系统的方法、装置和电子设备 |
KR102498319B1 (ko) | 2018-06-04 | 2023-02-08 | 삼성전자주식회사 | 반도체 장치 |
CN112817690B (zh) * | 2021-01-22 | 2022-03-18 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 一种面向arm架构虚拟化领域的中断虚拟化处理方法及系统 |
US20230315659A1 (en) * | 2022-03-29 | 2023-10-05 | Mellanox Technologies, Ltd. | Interrupt emulation on network devices |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7818808B1 (en) | 2000-12-27 | 2010-10-19 | Intel Corporation | Processor mode for limiting the operation of guest software running on a virtual machine supported by a virtual machine monitor |
US7447794B1 (en) * | 2002-12-04 | 2008-11-04 | Silicon Graphics, Inc. | System and method for conveying information |
US20040117532A1 (en) * | 2002-12-11 | 2004-06-17 | Bennett Steven M. | Mechanism for controlling external interrupts in a virtual machine system |
US7111145B1 (en) * | 2003-03-25 | 2006-09-19 | Vmware, Inc. | TLB miss fault handler and method for accessing multiple page tables |
TWI253251B (en) | 2003-09-19 | 2006-04-11 | Inst Information Industry | Network address port translation gateway providing fast query and replacement for virtual host service, and the method thereof |
US7177967B2 (en) * | 2003-09-30 | 2007-02-13 | Intel Corporation | Chipset support for managing hardware interrupts in a virtual machine system |
US7048877B2 (en) * | 2004-03-30 | 2006-05-23 | Intel Corporation | Efficiently supporting interrupts |
US7707341B1 (en) * | 2004-05-11 | 2010-04-27 | Advanced Micro Devices, Inc. | Virtualizing an interrupt controller |
DE102004042170B4 (de) * | 2004-08-31 | 2009-02-19 | Advanced Micro Devices, Inc., Sunnyvale | Nachrichtenbasierte Interrupttabelle |
US7689747B2 (en) * | 2005-03-28 | 2010-03-30 | Microsoft Corporation | Systems and methods for an augmented interrupt controller and synthetic interrupt sources |
US7565471B2 (en) * | 2005-09-16 | 2009-07-21 | Emulex Design & Manufacturing Corporation | Message signaled interrupt extended (MSI-X) auto clear and failsafe lock |
US8286162B2 (en) | 2005-12-30 | 2012-10-09 | Intel Corporation | Delivering interrupts directly to a virtual processor |
US7802073B1 (en) * | 2006-03-29 | 2010-09-21 | Oracle America, Inc. | Virtual core management |
US20080162762A1 (en) * | 2006-12-29 | 2008-07-03 | Gilbert Neiger | Interrupt remapping based on requestor identification |
US7853744B2 (en) | 2007-05-23 | 2010-12-14 | Vmware, Inc. | Handling interrupts when virtual machines have direct access to a hardware device |
CN101354663A (zh) * | 2007-07-25 | 2009-01-28 | 联想(北京)有限公司 | 应用于虚拟机系统的真实cpu资源的调度方法及调度装置 |
US8453143B2 (en) * | 2007-09-19 | 2013-05-28 | Vmware, Inc. | Reducing the latency of virtual interrupt delivery in virtual machines |
US7934033B2 (en) * | 2008-03-25 | 2011-04-26 | Aprius, Inc. | PCI-express function proxy |
US8032680B2 (en) * | 2008-06-27 | 2011-10-04 | Microsoft Corporation | Lazy handling of end of interrupt messages in a virtualized environment |
ATE542177T1 (de) | 2008-08-19 | 2012-02-15 | St Microelectronics Rousset | Weiterleitungsverfahren eines unterbrechungssignals direkt an eine virtuelle bearbeitungseinheit in einem system mit einer oder mehreren physischen bearbeitungseinheiten |
-
2008
- 2008-12-31 US US12/347,970 patent/US9424211B2/en active Active
-
2009
- 2009-12-22 GB GB0922460.1A patent/GB2466706B/en not_active Expired - Fee Related
- 2009-12-23 DE DE102009060301A patent/DE102009060301A1/de not_active Ceased
- 2009-12-24 JP JP2009293549A patent/JP4980416B2/ja not_active Expired - Fee Related
- 2009-12-24 TW TW098144755A patent/TWI525546B/zh not_active IP Right Cessation
- 2009-12-25 CN CN200910217299.5A patent/CN101777005B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN101777005B (zh) | 2014-05-07 |
JP4980416B2 (ja) | 2012-07-18 |
DE102009060301A1 (de) | 2010-07-08 |
TWI525546B (zh) | 2016-03-11 |
GB2466706A (en) | 2010-07-07 |
GB2466706B (en) | 2012-04-25 |
JP2010157232A (ja) | 2010-07-15 |
US9424211B2 (en) | 2016-08-23 |
US20100169883A1 (en) | 2010-07-01 |
TW201030623A (en) | 2010-08-16 |
GB0922460D0 (en) | 2010-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101777005A (zh) | 重定向物理设备控制器的中断而提供多个虚拟设备控制器 | |
EP3519953B1 (en) | Intermediate host integrated circuit between a virtual machine instance and customer programmable logic | |
US10423438B2 (en) | Virtual machines controlling separate subsets of programmable hardware | |
US9442868B2 (en) | Delivering interrupts directly to a virtual processor | |
US8726295B2 (en) | Network on chip with an I/O accelerator | |
US20190042329A1 (en) | System with programmable multi-context accelerator circuitry | |
US9430296B2 (en) | System partitioning to present software as platform level functionality via inter-partition bridge including reversible mode logic to switch between initialization, configuration, and execution mode | |
US10095540B2 (en) | Virtual network provisioning prior to virtual machine manager launch by loading a partitioned network device with attribute data | |
CN101833470A (zh) | 注入事务以支持物理设备控制器的虚拟化 | |
US11188369B2 (en) | Interrupt virtualization | |
US20210328944A1 (en) | Methods, apparatus, and articles of manufacture to dynamically allocate cache | |
US20100174841A1 (en) | Providing multiple virtual device controllers by redirecting an interrupt from a physical device controller | |
US20210320886A1 (en) | Methods and apparatus for deterministic low latency packet forwarding for daisy chaining of network devices | |
US11513983B2 (en) | Interrupt migration | |
US20220414037A1 (en) | Methods and apparatus to manage processor interrupts | |
CN101982814A (zh) | 将用于虚拟化引擎的指令分页调度到本地存储设备 | |
US20230205585A1 (en) | Elevated Isolation of Reconfigurable Data Flow Resources in Cloud Computing |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20140507 Termination date: 20191225 |
|
CF01 | Termination of patent right due to non-payment of annual fee |