CN1007938B - 虚拟计算机系统的输入输出控制方式 - Google Patents

虚拟计算机系统的输入输出控制方式

Info

Publication number
CN1007938B
CN1007938B CN86105553A CN86105553A CN1007938B CN 1007938 B CN1007938 B CN 1007938B CN 86105553 A CN86105553 A CN 86105553A CN 86105553 A CN86105553 A CN 86105553A CN 1007938 B CN1007938 B CN 1007938B
Authority
CN
China
Prior art keywords
input
output apparatus
vmcp
interrupt
instruction
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
Application number
CN86105553A
Other languages
English (en)
Other versions
CN86105553A (zh
Inventor
田中俊治
梅野英典
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of CN86105553A publication Critical patent/CN86105553A/zh
Publication of CN1007938B publication Critical patent/CN1007938B/zh
Expired legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Executing Machine-Instructions (AREA)
  • Debugging And Monitoring (AREA)

Abstract

虚拟计算机I/O控制系统在虚拟计算机程序VMCP的控制下至少有一虚拟计算机VM在运行。其中对VM所占有的I/O设备的I/O中断,该系统可以两种模式加以处理,即不经VMCP的介入而直接执行的I/O直接执行模式和由VMCP进行模似的I/O模拟执行模式。该系统具有识别要求切换为直接执行模式的I/O设备的识别手段。判别是否满足所定的模式切换条件的判定手段和切换上述两种模式的切换手段。

Description

本发明涉及虚拟计算机系统(以下称VMS)的输入、输出控制方式,特别是关于虚拟计算机(以下称为VM)的操作系统发出的输入输出命令以及由此产生的输入输出中断,可以不通过虚拟计算机的控制程序(以下称为VMCP)来处理,而由硬件直接执行的一种虚拟计算机系统的输入输出控制方式。
通常的虚拟计算机系统(VMS)在实计算机系统及其硬件的构成上(如中央处理机、主存、输入输出设备等)没有什么差别。在主存上驻有虚拟计算机控制程序(VMCP),通过VMCP的硬件模拟功能便可以在逻辑上构成多台计算机即虚拟计算机并可由这样构成的多台虚拟机进行各种运算处理。这种虚拟计算机系统的构成如图10所示。图10中90为实计算机系统。91是它的中央处理机(以下称为CPU),92即驻有VMCP的主存装置,93为输入输出设备,94为输入、输出控制装置。90-1、90-2、90-3则分别是由VMCP所逻辑实现的虚拟计算机VM。VM90-1由CPU91-1、主存装置92-1、输入输出设备93-1,输入输出控制装置94-1所构成。VM90-2、VM90-3虚拟机亦均由类似的相应部分所组成。本例中实现了三台虚拟机,实际上由VMCP也可以实现三台以上的多台虚拟机。在该系统中各虚拟机即VM90-1、VM90-2、VM90-3在逻辑上与实计算机系统(以下称为主机系统)90具有几乎相同的硬件构成。各虚拟机的主存92-i(i=1,2,3)上驻有用于控制、驱动各VM机的操作系统OS。这复数个OS可在同一台主机系统下同时运行。图10中各VM机的硬件构成(CPU、主存、输入输出设备、输入输出控制装置)虽然是由VMCP在逻辑上加以实现的,但构成这些虚拟机部件的大部分实体均存在于主计算机相应的硬件构成中。例如,VM机的主存装置或者是占有主计算机内存92的某一部分,或者是与主计算机共享其内存。
此外,VM机的输入输出设备或者是几台虚拟机共享主机系统的输入输出设备,或者是一台虚拟机占有某几台输入输出设备,或者是虚拟机没有与主机系统相对应的输入输出设备而完全由VMCP的虚拟功能实现模拟的输入输出设备。无论是哪一种情况, 从各虚拟机主存92-i(i=1、2、3)的操作系统OS看来,各虚拟机就好像与主计算机系统具有同样的硬件构成(CPU,主存,输入输出设备,输入输出控制装置)。
在这样的虚拟计算机系统中,与虚拟机上的OS执行I/O指令时,势必需要VMCP的介入,即必须利用VMCP的模拟功能。对于I/O指令执行频度很高的负荷,VMCP的模拟开销势必增大而成为问题。为了解决这一问题,亦即为了削减执行VM机的I/O命令时的模拟开销,本发明的作者提出不经过VMCP的介入而由硬件直接执行来自VM机的输入、输出命令的新方法。这一方法以《虚拟计算机系统的I/O执行方式》为题于1984年1月18日申请了日本专利。(参阅日本专利申请特願昭59-5587号明细书)。于1985年1月16日申请了美国专利(申请号No.691,909),于1985年1月16日申请了欧洲专利(申请号No.85100372,3),于1985年4月1日申请了中国专利(申请号No.85101171)。但是,在该方式中未能解决在不停止VM机运行情况下将硬件直接执行模式与通过VMCP进行模拟执行的模式互相切换的问题。
本发明的目的正在于改善这一缺点。它将提供一种新的虚拟计算机系统的输入、输出控制方式,对于来自VM机的输入输出命令以及由此产生的输入输出中断,它可以在不停止VM机运行的状态下将硬件直接执行模式(称为输入输出直接执行模式)与通过VMCP模拟执行模式(称为输入输出模拟执行模式)互相切换。
为了实现上述目的,本发明的虚拟计算机系统具有如下特征。
在虚拟计算机控制程序(VMCP)的管理下,至少有一台虚拟机(VM)在运行。当该VM机上的操作系统(OS)对该机所占有的输入输出设备发出I/O命令并引起I/O中断时,该虚拟机系统可以两种模式即不经VMCP而直接执行的模式和由VMCP模拟执行的模式来处理上述I/O命令及I/O中断。
该虚拟计算机系统具有识别要求切换为直接输入输出模式的输入输出设备的识别手段、判别是否满足向预定模式切换所需条件的判定手段以及将上述两种模式进行切换的模式切换手段。它能够用上述识别手段识别出要求切换为直接输入输出模式的输入输出设备,然后用上述判定手段判别该输入输出设备是否满足模式切换条件,并在满足切换条件的时点作如下处理,若要求直接执行I/O的虚拟机尚未占有要求模式切换输入输出设备,则使其占有该设备,并且若该VM机尚未占有控制该输入输出设备中断的中断子类,则使其占有该输入输出中断子类。同时用上述模式切换手段进行模式切换,使模拟执行模式下的输入输出设备切换为直接执行模式。
图1为按本发明进行模式切换的处理流程图。图2为本发明所适用的虚拟计算机系统的主要构成图。图3为图2中控制块的详细说明图。图4为图3中输入输出设备VM用字段的详细说明图。图5为图3的实输入输出设备控制块的详细说明图。图6为程序状态字PSW的说明图。图7为控制寄存器的说明图。图8为虚拟输入输出控制块的说明图。图9为本发明所用A命令的说明图。图10则是一般虚拟计算机系统的构成图。
以下,结合附图详细说明本发明的实施例。
首先,说明本发明的原理。
本发明的输入输出模式控制由以下两方面组成,即如何将输入输出模式由模拟执行模式切换为直接执行模式以及反之由直接执行模式转为模拟执行模式。在直接执行模式下工作的输入输出设备,其输入输出控制完全由占有该设备的虚拟机的OS来进行而与VMCP无关。另一方面,在模拟执行模式下工作的输入输出设备,OS发出的输入输出命令的执行以及与此相关的输入输出向OS的中断请求均需介由VMCP来进行。
因此,从模拟执行模式向直接执行模式切换时,由VMCP判定是否可以将输入输出控制权委托给OS,然后在满足模式切换条件的时点,直接执行模式设置在主存的标识段里指出该输入输出设备执行模式。
而从直接执行模式转为模拟执行模式可采取如下三种方法。
第一种方法是,在模式切换要求产生时点,通过设置执行模式的方法解除原来的直接执行模式,进而由调查输入输出设备状态的命令将设备的硬件状态信息传送给VMCP,VMCP以此信息为依据进行输入输出操作的模拟。
第二种方法是,在模式切换要求产生时点,通过设定执行模式方法解除直接执行模式,进而由VMCP将对该设备的输入输出命令执行要求强迫挂起,然后由询问设备状态命令确认该外设输入输出操作已经完成后便解除先前的强迫挂起状态,转入模拟执行模式。
第三种方法是,在模式切换要求产生时点,由设定执行模式的方法解除直接执行模式,进而由VMCP将该外设的输入输出命令执行要求先强迫挂起,经过一定时间间隔后解除强迫挂起状态,并由询问状态命令读取该外设的硬件状态信息传给VMCP,VMCP根据这一信息进行输入输出的模拟处理。
下面结合附图具体说明上述方法。
图1是由模拟执行模式切换为直接执行模式的流程图。首先根据图1说明模式切换的概要,然后结合后面各图加以详细说明。
图1(a)为本实施例中输入输出设备从模拟执行模式转为直接执行模式的处理流程图。
首先,切换条件判定开始(101框),接着当控制权转给该虚拟机的OS时,调查VMCP是否持有对该输入输出设备执行I/O命令的要求队列(102框)。若没有要求队列,再调查VMCP是否持有该外设对要求直接执行模式的VM机的中断请求挂起(103框),若无挂起的中断,则调检VMCP以及其它VM机是否正在使用该外设或者该外设的中断挂起(104框)。若没有挂起的中断请求,则调查该VM机是否占有或可能占有控制该外设输入输出中断的中断子类(105框)。若该VM机占有或可能占有该中断子类的情况下,则调查该VM机是否占有或可能占有要求切换为直接执行模式的该外部设备(106框)。若该VM机占有或可能占有该外设时,由A命令(参阅后述图9)将该外设切换为直接执行模式。不过若该VM机尚未占有中断子类或尚未占有该外部设备时,应先进行占有处理(107框)。经以上处理便完成了向直接执行模式切换的条件判定(108框)。在上述各切换条件全部满足时点,便可将模拟执行模式下的输入输出设备切换为直接执行模式。
图1(b)为本实施例中用上述第一种方法将直接执行模式下的输入输出设备切换为模拟执行模式的处理流程图。下面对图1(b)进行说明。
首先,当切换为模拟模式的要求一旦产生(110框),便由STSCH命令将该外设的状态取入VMCP(111框)。接着由A命令将该外设切换为模拟模式(112框)。通过以上处理便完成了模式切换(113框)。
图1(c)为用上述第二种方法将直接执行模式下的输入输出设备切换为模拟执行模式的处理流程图。以下对图1(c)加以说明。
首先,切换要求产生(115框)。接着VMCP将对该外设的输入输出命令执行要求强迫挂起。(116框)。然后由A命令解除该外设原有的直接执行模式(117框)。接下去开始对切换条件进行判定(118框)。首先检查该外设是否还有未执行完的输入输出操作(119框)。如果已全部执行完了,VMCP便将刚才强迫挂起的命令执行要求解除挂起状态(120框)。经以上处理便结束了切换条件的判定处理(121框),此时便能将直接执行模式下的外部设备切换为模拟执行模式。
图1(d)为用上述第三种方法将直接执行模式下的输入输出设备切换为模拟执行模式的处理流程图。以下对图1(d)加以说明。
首先、切换要求发生(122框)。VMCP将对该外设的输入输出命令执行要求强迫挂起(123框)。接着由A命令解除该外设原有的直接执行模式(124框)。然后、将定时中断请求块登记在VMCP的定时中断请求队列中,以便经过预定的时间间隔后产生一个定时中断请求(125框)。接着定时中断产生(126框)。由STSCH命令将该外设的状态信息取给VMCP(127框)。然后VMCP解除先前强迫挂起的输入输出命令执行请求的挂起状态(128框)。经过以上处理便完成了该外设由直接执行模式向模拟执行模式的切换(129框)。
图2为采用本发明的虚拟计算机系统的主要构成图。
图2中,1为主存装置。2为前置保存区(以下称为PSA),VMCP将硬件的状态信息存放在该区。2-1,…,2-i,…2-n则分别表示虚拟机,VMi,(i=1~n)的PSA。3是前置寄存器,当VMi机运行时,用它存放其PSA    2-i(i=1~n)的地址,当控制权移交给VMCP时,则用它存放VMCP的PSA的地址。4是命令寄存器。5是命令执行部件,6为命令执行部件中的命令执行微程序发生器。7是中断电路。8是中断电路内的中断微程序发生器。9是一群输入输出设备。10-1,10-j,…,10-k分别为各输入输出设备。
图3是主存1内的VMCP用于输入输出控制而使用的控制块的结构图。
图3中,11-1,…,11-i,…,11-n为虚拟机控制块,表示虚拟机VMi(i=1~n)的虚拟的计算机资源状态。12为实计算机的控制块。它表示VMCP控制下的实计算机的资源状态。虚拟控制块11-i由以下几部分构成。13-i为虚拟机程序状态字VPSW,用于存放各虚拟机VMi的程序状态字。14-i用作虚拟控制寄存器, 它通过中断子类控制各虚拟机VMi的输入输出中断。15-i为虚拟输入输出控制块,用来记录各虚拟机VMi所拥有的输入输出设备群的状态,15-i中的15-i-r则对应着VMi的该外设群中第r个外设的状态。16为对全部实输入输出设备进行控制的实输入输出控制块。16中的16-j(j=1~k)则表示VMCP控制下的各输入输出设备10-j的状态。17是软件与微程序发生器间的接口,它载有硬件控制信息。该区域不能由软件进行读写,而只能由微程序引用或进行写入操作。该接口部17内的18-j(j=1~k)用来表示各输入输出设备10-j的状态。19-1,…,19-j,…,19-k则是各输入输出设备用作虚拟机外设时所需的控制手段,以便控制VM机的输入输出。
图4即上述各设备虚拟机用字段19-j的明细图。图中j=1~k。设备虚拟机字段19-j由以下几个子段组成。19-j-1为虚拟机号子字段,19-i-2为实子类号子字段,19-j-3为输入输出直接执行模式标志位,它只占一个比特拉,19-j-4为体系结构号子字段。虚拟机号字段用来识别是哪一个虚拟机要求该外设作输入输出的直接执行。直接执行模式标志19-j-3占一个比特拉,当该位为“1”时有效。实子类号字段19-j-2存放控制该外设输入输出中断的中断子类号,当该子字段的值为q时,该设备的输入输出中断将受后面图7所示的控制寄存器14的q比特位之值Mq的控制。这一点以后再详细叙述。直接执行模式标志位19-j-3为“1”时,表示设备10-j处于直接执行模式下,为“0”时表示不是直接执行模式。
下面叙述在模拟执行模式及直接执行模式下是怎样处理来自OS的I/O命令及来自输入输出设备的I/O中断的。
设某一OSi向处于模拟模式下的输入输出设备10-j发生执行I/O命令的要求,该请求信号通过图2中的信号线100被送入命令寄存器4,命令寄存器4通过信号线101将执行该命令的起动信号送至命令执行部件5。命令执行部件5及微程序电路6通过信号线102检查设备10-j所对应的输入输出设备字段18-j中的直接执行模式标志位19-j-3的内容。因此时19-j-3为“0”,于是将VMCP的PSA的地址置入前缀寄存器3中,控制权被交给VMCP的输入输出命令控制程序。该控制程序根据虚拟输入输出控制块15-i的信息进行该输入输出命令的模拟。
由VMCP进行的模拟中,按照虚拟输入输出控制块15-i的信息和输入输出命令的种类的不同,对输入输出设备10-j也许发出,也许不发出输入输出命令。在需要发输入输出命令的情况下,将执行此命令所必需的信息及虚拟机识别信息作为输入输出命令执行请求送入实输入输出控制块16中对应该输入输出设备的控制块16-j去排队。图5是实输入输出设备控制块16-j的明细图。16-j由输入输出执行请求指针16-j-1,实状态字段16-j-2,输入输出执行中指示器16-j-3,占有该设备的VM机识别字段16-j-4所组成。输入输出执行请求指针16-j-1中存放最先对输入输出设备10-j的输入输出命令执行请求的区域的地址。图5中表示排队队列中有两个输入输出执行请求21-1和21-2,则16-j-1中放的是21-1的地址。没有输入输出命令执行请求时,16-j-1中存在的是实输入输出控制块16-j的首地址。换句话说,当指针16-j-1的内容与实输入输出控制块16-j的首地址相等时就意味着控制块16-j中没有输入输出执行请求队列。当一个命令执行请求所对应的输入输出命令发出后,该请求便从请求队列中被删去,同时将该请求的首地址存入输入输出执行中指示器16-j-3中。此外还将实状态字段16-j-2的a比特拉位置“1”,表示该输入输出设备正在使用之中。
如果不是为了执行来自OS的输入输出命令的模拟处理,而是VMCP本身发出输入输出命令时,要把执行该输入输出命令所需的信息以及VMCP请求执行输入输出命令的标志信息作为输入输出命令请求,送入实输入输出控制块16-j去排队。在执行VMCP的输入输出命令时,实状态字段16-j-2的a比特拉和b比特拉同时置为“1”。与输入输出命令执行完毕产生中断时,a和b由VMCP复位为“0”。
另一方面对于来自输入输出设备10-j的中断请求,VMCP是这样进行模拟处理的。图6表示程序状态字PSW的构造,图7为控制寄存器的构造。我们用图6和图7来进行说明。输入输出中断的控制是由图6所示的PSW13的I比特位20和载有控制输入输出中断的中断子类的控制寄存器14共同进行的。当PSW13的I比特位20为“1”且设备10-j的虚拟机用字段19-j中的实子类号字段19-j-2所指定的控制寄存器14的相应比特位为“1”时,该外部设备10-j才能产生中断请求,该中断请求信号通过信号线104被送至中断电路7。中断电路7和中断微程序部件8通过信号线105检查外设10-j的虚拟机用字段19-j中的输入输出直接 执行标志位19-j-3的值,因模拟方式下该位为“0”,于是将VMCP的PSA2的地址存入前缀寄存器3,然后产生输入输出中断,将控制权交给VMCP的输入输出中断控制程序。
VMCP的输入输出中断控制程序以输入输出执行中指示器16-j-3所示的输入输出命令执行请求的虚拟机识别信息为依据,将输入输出中断信息存入该虚拟机的虚拟控制块(VBLOKS)11-i中的虚拟设备控制块15-i-r中。由于各虚拟机操作系统OSi的体系结构不尽相同,因而传送给OSi的输入输出中断信息也互不相同。因此VMCP需将存放在VMCP的PSA2中的输入输出中断信息和存放在输入输出设备字段18-j中的中断信息变换为符合OSi体系结构的形式再存入虚拟设备控制块15-i-r中,与此同时设置标志表示VMCP已挂起该输入输出设备的中断请求。图8详细说明虚拟I/O设备控制块15-i-r的构造。15-i-r由虚拟设备状态字段15-i-r-1和子类表示字段15-i-r-2两部分组成。上面所说的作出VMOP已挂起该中断请求的标志就是将虚拟设备状态字段15-i-r-1的g比特位置为“1”。
当OSi的虚拟程序状态字VPSW13-i的I比特位和虚拟控制寄存器14-i中与虚拟设备控制块15-i-r对应的中断子类同时为“1”时,VMCP将输入输出中断请求送给OSi的PSA2-i,同时、将虚拟设备控制块15-i-r的虚拟设备状态字段15-i-r-1的g比特位复位为“0”。
OSi向直接输入输出模式下的输入输出设备10-j发生输入输出命令执行要求时,通过图2的信号线100将信号送至命令寄存器4。命令寄存器4通过信号线101将该命令的起动信号送给命令执行部件5。命令执行部件5和命令执行微程序部件6通过信号线102检查设备10-j所对应的输入输出设备字段18-j的直接执行标志位19-j-3,因此时19-j-3的值为“1”,于是通过信号线103直接执行OSi发出的输入输出命令。
直接执行模式下的输入输出设备10-j的中断请求是由硬件电路产生的。当PSW13的I位20为“1”且设备10-j对应的虚拟机用字段19-j中的实子类字段19-j-2的值所指定的控制寄存器14的相应位为“1”时,输入输出中断才得以产生。中断部件7和中断微程序部件8通过信号线105检查该设备10-j的设备字段18-j中的直接执行标志位19-j-3的值,由于此时该位为“1”,便产生输入输出中断、将中断信息存入该虚拟机的PSA2-i中。因OSi的体系结构不同,存入虚拟机的PSA2-i中的中断信息也不同。因此在输入输出设备字段18-j中存有识别占有该设备的OSi的体系结构的标志信息,中断部件7和中断微程序部件8据此将中断信息变换为符合OSi体系结构的形式存入VMi虚拟机的PSA2-i中。
图9表示本发明所设置的A命令的构造。如前所述,A命令可以变更直接执行模式标志位19-j-3的值从而指定设备10-j是否取直接执行模式。下面对A命令加以说明。
如图9所示,A命令是所谓S形命令。其第2操作数地址(D2/B2)的内容由以下几项组成。输入输出设备号用于指定作为命令对象的输入输出设备,虚拟机号用于识别是哪一个虚拟机要求设备作直接输入输出,体系结构识别号用于指定该虚拟机的体系结构,模式标志则用于指出存放模式标志位(模式标志位指定该设备是否取直接执行模式)的字段的地址。
A命令发出后,通过信号线100将信号送至命令寄存器4,由信号线101将A命令的起动信号送至命令执行部件5。命令执行部件5和命令执行微程序部件6通过信号线102将位于通用寄存器中的第2操作数地址(D2/B2)所指示的虚拟机号、模式标志、体系结构识别号分别存入设备字段18-j中的虚拟机号字段19-j-1、输入输出直接执行模式标志位19-j-3、体系结构号字段19-i-4中。上述设备字段18-j的地址存于特定的通用寄存器中。
欲使模拟执行模式下的输入输出设备切换为直接执行模式时,VMCP用如下方法进行。首先、为了识别要求模式切换的输入输出设备,将该设备10-j对应的虚拟设备控制块15-i-r的虚拟状态字段15-i-r-1(参照图8)的f位置为“1”。
该虚拟设备控制块15-i-r所对应的设备10-j在后述的5个条件全部得到满足时,由VMCP作如下处理。若此时设备10-j尚未被要求它作直接执行的虚拟机VMi所占有,则将实状态字段16-j-2的e比特位置“1”,同时将VMi的识别信息送入占有虚拟机识别字段。此外若VMi机尚未占有虚拟机用字段19-j的实子类号字段19-j-2所指定的子类,则使其占有该子类。关于该子类的占有后面再讲叙。接下来便可以由A命令将设备10-j切换为直接执行模式。
此外,在随后VMi运行时,使控制寄存器14中表示该虚拟机所占有的直接执行模式设备的中断子类的比特位与该虚拟机VMi的虚拟控制寄存器14-i的 相应比特位取相同值,而且PSW13的I比特位20亦与VPSW13-i的I比特位取相同值。
上面说过向直接执行模式切换时,需满足5个条件。这5个条件是:
(1)当控制权移交给VMi机的OSi时点,VMCP没有对该设备10-j的输入输出命令执行请求队列。亦即,与设备10-j对应的实输入输出设备控制块16-j中没有这一队列。
(2)与该模式切换设备相对应的虚拟机VMi的虚拟设备控制块15-i-r中没有挂起的输入输出中断请求。
(3)对该模式切换设备,VMCP以及VMi以外的其它VM机都没有正在执行的输入输出而且也没有挂起的该设备的输入输出中断请求。
(4)对该模式切换设备的输入输出中断起控制作用的输入输出中断子类已被VMi所占有或者可以被占有。
(5)该模式切换设备已经被VMi所占有或者可以被占有。
以下分别叙述这5个条件的必要性以及VMCP判定这5个条件的方法。
(1)设备10-j切换为直接执行模式后,如果VMCP或者VMi之外的其它VM机要求该设备执行输入输出命令的话,已排队的命令执行请求就会进入执行状态,此时如果VMi发出对该输入输出有影响的命令,就可能使VMCP或者其它VM机的输入输出控制发生混乱。
另一方面,如果在该设备的实输入输出设备控制块16-j中有已排队的VMi机的命令执行请求时,VMi机即使发出会影响该排队的命令执行请求的命令,但由于发出的命令是被直接执行的,不可能对已排队的命令执行请求产生影响。这样就可能导致VMi机自己的输入输出控制发生混乱。
VMCP对这一条件的判定方法是,检查该设备所对应的实输入输出设备控制块16-j的首地址与输入输出请求指针16-j-1的值是否相等,二者相等时表示该实输入输出设备控制块16-j中没有已排队的输入输出命令执行请求。
(2)假设在虚拟设备控制块15-i-r中有VMi的中断请求挂起的状态下,便将设备切换为直接执行模式,OSi对该设备发出输入输出命令时,本来,必须由命令执行部件5、命令执行微程序部件6以及设备群9作和通常向中断请求挂起中的设备发输入输出命令时同样的操作,但是,由于来自硬件的输入输出中断已经发生,命令执行部件5,命令执行微程序部件6以及设备群9会产生本不应产生的操作,从而可能使OSi的输入输出控制发生混乱。作为判定此条件的方法,当虚拟状态字段15-i-r-1的f比特位为“1”、g比特位为“0”时,表示没有挂起的中断请求。
(3)如果VMCP或其它VM机正在进行输入输出处理或有挂起的中断请求时,便将该设备10-j切换为直接执行模式的话,当OSi对该设备发出输入输出命令时,随命令种类的不同或者会使执行中的输入输出停止,或者会使挂起中的中断请求解除挂起,从而导致VMCP或其它VM机的输入输出发生混乱。
VMCP的判定方法是,当该设备的实输入输出设备控制块16-j的实状态字段16-j-2的b比特位为“1”时,表示VMCP正在执行输入输出处理或有挂起的输入输出中断请求。另外,实状态字段16-j-2的a比特位为“1”时,根据输入输出执行中指示器16-j-3指示的输入输出请求内的VM识别信息可以判定其它VM机是否正在进行输入输出处理或有挂起的输入输出中断请求。
注意,该设备10-j即使正在由OSi进行输入输出处理或输入输出中断挂起中,也可以进行模式切换。此时,将表示设备正使用中的实设备控制块16-j中的实状态字段16-j-2的a比特位置“0”,同时清除在输入输出命令执行中指示器16-j-3存放地址输入输出命令执行请求的区域。
(4)为了直接执行输入输出中断,VMi必须处于开中断状态,即仅当VPSW13-i的I比特位为“1”且控制寄存器14-i中与该设备对应的比特位为“1”时,中断响应才是可能的。此外,由于输入输出操作与CPU是异步进行的,因此在VMi机运行以外的时间,表示该中断子类的比特位的值或者取VPSW13-i的I比特位和控制寄存器14-i对应位的值,同时必须置为关中断状态。因此在直接执行模式下,VMi必须占有该外设的输入输出中断子类。也就是说VMi必须已经占有或可能占有该中断子类。
VMCP对此条件的判定方法如下。首先在主存1上设置占有子类字段22及各VMi占有子类字段24-i。子类号变换表23-i表示OSi识别的虚拟子类号与硬件识别的实子类号之间的对应关系。欲使VMi占有某一实子类号Mg,必须以其它VM的子类号变换表中不存在 与Mg对应的虚拟子类号为充分必要条件。当VMi占有某实子类号时,将占有子类字段22以及VMi的占有子类字段24-i中相应的位置“1”。
VMi为了使设备10-j切换为直接执行模式,可以根据VMi的占有子类字段24-i来判定是否已占有子类表示字段15-i-r-2所示的实子类。或者检查其它VM机的子类变换表23-i中是否没有与该实子类号对应的虚拟子类号,从而判定VMi是否可能占有该实子类。
注意,在子类表示字段15-i-r-2中存放着虚拟子类号和实子类号。实子类号是根据子类变换表23-i将虚拟子类号加以变换而得到的。此外,在VMi处于输入输出执行中状态时,子类表示字段15-i-r-2中的实子类号被置于对应的输入输出设备字段18-j的实子类号字段19-j-2中以便用于输入输出中断的控制。
(5)一旦切换为直接执行模式后,该设备的输入输出控制便完全委托给VMi机的操作系统OSi,VMCP不持有输入输出管理信息,因此其它VM机便不能再向该设备发输入输出命令。
实状态字段16-j-2的e比特位为“1”表示设备10-j已由16-j-4所示的VM机所占有。16-j-4是表示由哪一个VM机占有设备的占有机识别字段。当VMCP使某一VMi机占有设备10-j时,便将实状态字段16-j-2的e比特位置“1”,同时在占有机识别字段16-j-4中设置VMi机的特征信息表示它已占有该设备。
VMCP判定此条件的方法是,若VMi已占有设备10-j,则检查实状态字段16-j-2的e比特位应为“1”,而且占有机识别字段16-j-4中已经设置了能识别VMi机已占有该设备的VMi的特征信息。此外当满足以下3个条件时,则判定VMi机是可能占有设备10-j。
(1)设备10-j未被其它VM机所占有。
(2)实输入输出设备控制块16-j中没有其它VM机的输入输出命令执行请求。
(3)其它VM机没有在设备10-j中作输入输出处理,而且也没有该设备挂起的中断请求。
必须满足以上3个条件的理由与上述向直接执行模式切换所需的条件一样,也是为了保证不引起其它VM机的输入输出控制发生混乱。
下面叙述将直接执行模式切换为模拟执行模式时的3种处理方法。
第1种方法,当切换要求产生时,首先发出STSCH命令查询该设备10-j的设备状态。
该命令使命令执行部件5以及命令执行微程序部件6通过信号线102将存放在软件与微程序之间的接口17中与设备10-j对应的设备字段18-j中的该设备的状态信息存贮在主存1上的某一区域,以便程序可以引用。VMCP便可以上述STSCH命令所得的输入输出设备状态信息为依据来设定VMCP所需的控制信息。例如,当设备10-j处于输入输出执行中或中断请求挂起状态时,VMCP将实控制块(RBLOKS)12中实设备控制块16-j内的实状态字段16-j-2的a比特置为“1”,并且生成输入输出执行请求,将该请求的首地址送入输入输出执行中指示器16-j-3中。这样就使得该设备好象早已处于模拟执行状态下了。VMCP得到这一信息后便由A命令将该设备字段18-j的直接执行模式标志位19-j-3置为“0”,从而使该设备切换为模拟执行模式。
第2种方法是,当模式切换要求发生时,首先将要求切换的设备的实输入输出设备控制块16-j中的实状态字段16-j-2的c比特位置“1”,然后由A命令将该设备字段18-j中的直接执行模式标志位置为“0”,将16-j的实状态字段16-j-2的d比特位置为“1”。该d比特位为“1”时,OS以及VMCP的输入输出执行请求全部被送入实设备控制块16-j排队,实际上不会再发生输入输出命令。在这期间VMCP便处理该设备10-j的输入输出中断,并以该中断为启动信号发出STSCH命令去判定有关该设备的输入输出处理是否已全部结束。若全部结束则将实状态字段16-j-2的d比特位复位为“0”,以便开始为实设备控制块16-j中已排队的命令执行请求服务。此后对该设备的输入输出控制便通过VMCP来进行。
第3种方法是,与模式切换要求产生时,将实状态字段16-j-2的c及d比特位置“1”,然后由A命令将直接执行模式标志位19-j-3置“0”。为了在经过预先设定的时间间隔后,使该设备切换为模拟执行模式,将一个定时中断请求块登记入VMCP原来拥有的定时中断请求队列。在该定时中断请求块中存有定时时间以及中断发生后控制将移交VMCP某一程序的入口地址。于是在定时中断发生前的这段时间,VMCP进行该设备10-j的输入输出中断请求的处理。
经过定时间隔后,上述定时中断发生,此时VMCP作以下处理。首先对实状态字段16-j-2的c比特位为“1”的输入输出设备发出STSCH命令,根据该命令所 得的设备状态信息,设定所需的输入输出控制信息。这和第一种方法的处理是完全相同的。这样做的结果在VMCP看来仿佛这些设备先前就已处于模拟模式似的。然后将实状态字段16-j-2的d比特位置“0”,以便开始为实设备控制块16-j中已排队的命令执行请求服务。按下去对该设备的输入输出控制便由VMCP来进行。
这样,在本实施例中,输入输出设备的直接执行模式的设定及解除,均无需停止VM机的运行和对OS作重新加载装入,而可在VM机运行中进行。而且VMCP对于直接执行模式下的输入输出设备也可以发输入输出命令,其方法是,当VMCP对直接执行模式下的设备发输入输出命令时,先将该设备切换为模拟执行模式,切换后在执行VMCP的输入输出命令的同时,再发生将该设备切换为直接执行模式的请求。这样,在VMCP的输入输出命令执行完了后,在整理该VM机所占有输入输出设备的输入输出环境时,便可以再次将该设备设定为直接执行模式。
如上所述,通过本发明,对VM机占有的输入输出设备所发的输入输出命令,以及由这些命令所产生的输入输出中断可以无需VMCP的参与而由硬件直接执行。这种直接执行模式与介由VMCP模拟执行输入输出的模式可以在VM机运行中互相切换,从而可高效率地进行输入输出控制。

Claims (10)

1、一用于运转多个操作系统的虚拟机系统中,包括有多个输入输出设备和一个用于起动上述输入输出设备处理指令和处理输入/输出中断的电路,在虚拟机控制程序(VWCP)控制下,(i)当一个运转中的操作系统发出一第一指令起动所述多个输入/输出设备之中的第一输入/输出设备时,而所述第一输入/输出设备是在执行直接输入/输出模式并且已发出用于所述一个运转操作系统的中断级,所述电路起动所述第一输入/输出设备以执行由第一指令不中断所述VMCP的输入/输出操作,(ii)当所述第一输入/输出设备发出一个输入/输出中断后,所述电路对所述输入/输出中断进行处理而不用中断所述VMCP;(iii)当所述一个运转的操作系统发出的所述第一指令中的所述第一输入/输出设备是在模拟模式工作中,或是当另一个运转操作系统发出第二指令要求启动一个第二输入/输出设备,所述电路对VMCP提供一中断指令要求执行第一或第二指令模拟;(iv)当一个输入/输出中断从所述第一或第二输入/输出设备发出之后,所述电路对所述VMCP提供一个输入/输出中断以要求所述输入/输出中断执行模拟;(v)所述VMCP执行所述第一或第二指令的模拟或输入/输出中断的模拟以响应所述指令中断或所述由所述电路提供的输入/输出中断;一种将所述第一输入/输出设备的操作模式从模拟模式变换到直接输入/输出执行模式的方法,包括以下步骤:
(a)由所述VMCP检测第一输入/输出设备执行模拟状态,和检测从所述VMCP发出的,与所述第一输入/输出设备相关的输入/输出起动指令的执行状态;
(b)确定所述模拟执行状态和所述输入/输出起动指令的所述执行状态是否满足一个预定的模式变化条件,当确定结果是肯定时,对执行所述第一输入/输出设备的操作模式的所述电路发出所述直接输入/输出执行模式命令。
2、根据权利要求1的输入/输出控制方法,其中所述预定的模式变化条件是,所述模拟不是处于从上述一操作系统发出的所述输入/输出起动模拟,也不是由所述电路发出的所述输入/输出中断的模拟执行中,和所述输入/输出起始指令不在这样一个状态:即其中所述VMCP发出一个输入/输出指令不是用于模拟的,及所述VMCP还没有接收到一个输入/输出中断,该中断指出输入/输出操作的完成。
3、根据权利要求2的输入/输出控制的方法,其中所进行的操作步骤(b)包括:写入一个信号,该信号指出直接输入/输出执行模式进入到一个预定存储区域,该存储区域是由在上述虚拟机系统的主存之中的所述电路使用的,这样以对上述电路指出所述第一输入/输出设备的直接输入/输出执行模式。
4、一用于运转多个操作系统的虚拟机系统中,包括多个输入/输出设备和一个用于起动所述输入/输出设备处理指令和输入/输出中断处理的电路,在虚拟机控制程序(VMCP)的控制下,(ⅰ)当一个运转操作系统发出一第一指令来起动所述多个输入/输出设备之中一个第一输入/输出设备时,所述第一输入/输出设备是在一个直接输入/输出执行模式下,且已发出了用于所述一个运转操作系统中断级,所述电路起动所述第一输入/输出设备以执行一个由第一指令不用中断所述VMCP的输入/输出操作;(ⅱ)当从所述第一输入/输出设备发出输入/输出中断之后,所述电路对所述输入/输出中断进行处理,不用中断所述VMCP;(ⅲ)当所述一个运转操作系统发出的第一指令中的所述第一输入/输出设备是在模拟模式时或当另一运转操作系统发出一第二指令需要启始一个第二输入/输出设备时,所述电路对VMCP提供一个指令中断以请求所述第一或第二指令的模拟执行;(ⅳ)当从所述第一或第二输入/输出设备发出输入/输出中断之时,所述电路对VMCP提供输入/输出中断请求所述输入/输出中断的模拟执行;(ⅴ)所述VMCP执行所述第一或第二指令的模拟,或输入/输出中断的模拟以响应所述指令中断或由所述电路提供的所述输入/输出中断;用于将所述第一输入/输出设备的操作模式从直接输入/输出执行模式转换到模拟模式的输入/输出控制方法包括下述步骤:
(a)在对所述电路指出了所述第一输入/输出设备的模拟模式之后,检测所述第一输入/输出设备的执行状态;及
(b)响应从所述电路发出的对第一输入/输出设备中断指令,由取决于上述检测步骤的结果指令中断指定的操作系统发出的输入/输出设备的启动指令执行模式变换。
5、根据权利要求4的输入/输出控制方法,所述的步骤(a)进一步包括写入一个指明一个直接输入/输出执行模式的信号。进到所述虚拟机系统的主存的存储区域之中的所述电路可访问的预定存储区域,这样以对所述电路指出所述第一输入/输出的设备的模拟模式。
6、根据权利要求4的输入/输出控制方法,上述步骤(a)进一步包括读出由所述电路写入到所述虚拟机系统的主存中所述第一输入/输出设备的执行状态的信息,这样以检测所述第一输入/输出设备的上述执行状态。
7、根据权利要求4的输入/输出控制方法,所述执行模拟处理步骤包括一个步骤,即,当所述第一输入/输出设备的状态检测执行揭示出,所述第一输入/输出设备没有处在由所述输入/输出启动操作到所述电路还没有发出一个指出输入/输出操作的完成的输入/输出中断之间的一个特别执行状态下,发出一个相应于所述一个操作系统发出的所述输入/输出起始指令的输入/输出起始指令。
8、根据权利要求7的输入/输出控制方法,所述执行模拟处理步骤包括一步骤,当所述检测所述第一输入/输出设备的执行状态的步骤揭示出第一输入/输出设备是处在所述特别执行状态时,指出所述第一输入/输出设备是忙于所述一个操作系统。
9、根据权利要求7的输入/输出控制方法,进一步包括:
(c)延迟所述中断指令,直到所述电路对上述VMCP发出输入/输出操作完成的输入/输出中断;
(d)向发出所述输入/输出启动指令的所述一操作系统指出指明输入/输出操作完成的所述输入/输出中断是被延迟了,这由所述延迟的指令中断在响应指明输入/输出操作完成的所述输入/输出中断的一个输出指定;及
(e)对所述输入/输出中断执行模拟处理,指出输入/输出操作的完成。
10、根据权利要求9的I/O控制方法,进一步包括:
(f)测量从指出模拟模式之时起过去的时间的步骤;及
(g)禁止上述步骤(d)的步骤,如果上述I/O中断指出上述I/O操作的完成在预定时间之内没有示出,即上述第一I/O设备是忙于上述一个操作系统。
CN86105553A 1985-07-31 1986-07-30 虚拟计算机系统的输入输出控制方式 Expired CN1007938B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP60170430A JPH0792761B2 (ja) 1985-07-31 1985-07-31 仮想計算機システムの入出力制御方法
JP170430/85 1985-07-31

Publications (2)

Publication Number Publication Date
CN86105553A CN86105553A (zh) 1987-07-15
CN1007938B true CN1007938B (zh) 1990-05-09

Family

ID=15904768

Family Applications (1)

Application Number Title Priority Date Filing Date
CN86105553A Expired CN1007938B (zh) 1985-07-31 1986-07-30 虚拟计算机系统的输入输出控制方式

Country Status (6)

Country Link
US (1) US4887202A (zh)
EP (1) EP0210640B1 (zh)
JP (1) JPH0792761B2 (zh)
KR (1) KR930008265B1 (zh)
CN (1) CN1007938B (zh)
DE (1) DE3687805T2 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1318967C (zh) * 2002-05-17 2007-05-30 株式会社Ntt都科摩 用于向应用提供事件的方法以及使用该方法的电子设备
CN100335997C (zh) * 2004-01-14 2007-09-05 威达电股份有限公司 多个输入/输出装置的切换控制系统及其方法
CN101369258B (zh) * 2006-01-17 2010-12-01 株式会社Ntt都科摩 输入输出控制系统

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5129064A (en) * 1988-02-01 1992-07-07 International Business Machines Corporation System and method for simulating the I/O of a processing system
JP2629278B2 (ja) * 1988-06-30 1997-07-09 株式会社日立製作所 仮想計算機システム
US5276815A (en) * 1988-10-24 1994-01-04 Fujitsu Limited Input and output processing system for a virtual computer
JPH02171934A (ja) * 1988-12-26 1990-07-03 Hitachi Ltd 仮想計算機システム
JP2535609B2 (ja) * 1989-02-07 1996-09-18 富士通株式会社 計算機システム
JPH02208740A (ja) * 1989-02-09 1990-08-20 Fujitsu Ltd 仮想計算機制御方式
DE58908886D1 (de) * 1989-09-29 1995-02-23 Siemens Nixdorf Inf Syst Verfahren und Unterbrechungssteuerung zur Behandlung von Unterbrechungsanforderungen bei Ein-/Ausgabeoperationen in einem virtuellen Maschinensystem.
US5283900A (en) * 1989-10-02 1994-02-01 Spectron Microsystems, Inc. Real-time operating system and virtual digital signal processor for the control of a digital signal processor
DE69132300T2 (de) * 1990-03-12 2000-11-30 Hewlett Packard Co Durch Anwender festgelegter direkter Speicherzugriff mit Anwendung von virtuellen Adressen
JP2708608B2 (ja) * 1990-05-25 1998-02-04 富士通株式会社 仮想計算機のipl処理方式
CA2070285C (en) * 1990-10-03 1998-04-07 Yuji Hidaka Input/output command issuing control system in data processing system
JP3093293B2 (ja) * 1991-02-08 2000-10-03 日本電気株式会社 情報処理装置の割り込み方式
US5291599A (en) * 1991-08-08 1994-03-01 International Business Machines Corporation Dispatcher switch for a partitioner
JP2677474B2 (ja) * 1992-01-14 1997-11-17 富士通株式会社 仮想計算機の制御情報収集装置および方法
JPH06187178A (ja) * 1992-12-18 1994-07-08 Hitachi Ltd 仮想計算機システムの入出力割込み制御方法
GB9311935D0 (en) * 1993-06-09 1993-07-28 Madge Networks Ltd Processor
US6055559A (en) * 1994-03-07 2000-04-25 Fujitsu Limited Process switch control apparatus and a process control method
US5603059A (en) * 1994-04-22 1997-02-11 Pitney Bowes Inc. Software architecture system having a virtual I/O channel including multi-layered communication interface in between virtual stations and physical modules
US5799169A (en) * 1995-10-02 1998-08-25 Chromatic Research, Inc. Emulated registers
US6067527A (en) * 1995-10-12 2000-05-23 Gilbarco, Inc. Point of sale system, method of operation thereof and programming for control thereof
US5925109A (en) * 1996-04-10 1999-07-20 National Instruments Corporation System for I/O management where I/O operations are determined to be direct or indirect based on hardware coupling manners and/or program privilege modes
US5978912A (en) * 1997-03-20 1999-11-02 Phoenix Technologies Limited Network enhanced BIOS enabling remote management of a computer without a functioning operating system
BR0112170A (pt) * 2000-07-05 2004-07-27 Ernst & Young Llp Aparelho provendo um ou mais serviços de computador para diversos clientes, combinação de um primeiro aparelho e um segundo aparelho substancialmente idêntico ao citado primeiro aparelho, e, processos para prover um ou mais serviços de computador para diversos clientes, para operar um computador real em nome de diversos clientes, e para prover, para diversos clientes, um ou mais serviços de computador
JP2002132518A (ja) * 2000-10-25 2002-05-10 Fujitsu Ltd 仮想計算機システムおよび仮想計算機間の入出力装置交換方法
US8079034B2 (en) * 2003-09-15 2011-12-13 Intel Corporation Optimizing processor-managed resources based on the behavior of a virtual machine monitor
US7454756B2 (en) * 2004-03-05 2008-11-18 Intel Corporation Method, apparatus and system for seamlessly sharing devices amongst virtual machines
US7725895B2 (en) * 2004-03-31 2010-05-25 Intel Corporation Processor control register virtualization to minimize virtual machine exits
US7941799B2 (en) 2004-05-27 2011-05-10 International Business Machines Corporation Interpreting I/O operation requests from pageable guests without host intervention
CN100454278C (zh) * 2006-01-19 2009-01-21 联想(北京)有限公司 计算机系统及其i/o端口访问控制方法
JP5010164B2 (ja) * 2006-03-31 2012-08-29 株式会社日立製作所 サーバ装置及び仮想計算機の制御プログラム
CN100464295C (zh) * 2006-05-17 2009-02-25 联想(北京)有限公司 一种基于虚拟机的安全输入方法
JP4295783B2 (ja) * 2006-12-13 2009-07-15 株式会社日立製作所 計算機、仮想デバイスの制御方法
US7478185B2 (en) * 2007-01-05 2009-01-13 International Business Machines Corporation Directly initiating by external adapters the setting of interruption initiatives
JP5018252B2 (ja) * 2007-06-06 2012-09-05 株式会社日立製作所 デバイス割り当て変更方法
US8151265B2 (en) * 2007-12-19 2012-04-03 International Business Machines Corporation Apparatus for and method for real-time optimization of virtual machine input/output performance
JP5172009B2 (ja) 2009-03-31 2013-03-27 三菱電機株式会社 実行順序決定装置
KR20120062854A (ko) * 2009-10-01 2012-06-14 미쓰비시덴키 가부시키가이샤 계산기 장치
US8402461B2 (en) * 2009-11-15 2013-03-19 Hewlett-Packard Development Company, L. P. Switching between direct mode and indirect mode for virtual machine I/O requests
JP2011118578A (ja) * 2009-12-02 2011-06-16 Renesas Electronics Corp 情報処理装置
EP3002703B1 (en) 2009-12-14 2017-08-30 Citrix Systems Inc. Methods and systems for communicating between trusted and non-trusted virtual machines
WO2011075484A2 (en) 2009-12-14 2011-06-23 Citrix Systems, Inc. A secure virtualization environment bootable from an external media device
US20120167082A1 (en) * 2010-12-23 2012-06-28 Sanjay Kumar Direct sharing of smart devices through virtualization
US9760511B2 (en) * 2014-10-08 2017-09-12 International Business Machines Corporation Efficient interruption routing for a multithreaded processor
US11042494B1 (en) * 2018-06-21 2021-06-22 Amazon Technologies, Inc. Direct injection of a virtual interrupt
US11115324B2 (en) 2019-08-27 2021-09-07 Nokia Solutions Networks Oy System and method for performing segment routing over an MPLS network

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6049352B2 (ja) * 1978-02-13 1985-11-01 株式会社日立製作所 デ−タ処理装置
JPS6013501B2 (ja) * 1978-09-18 1985-04-08 富士通株式会社 仮想計算機システムにおけるチヤネルアドレス制御方式
US4456954A (en) * 1981-06-15 1984-06-26 International Business Machines Corporation Virtual machine system with guest architecture emulation using hardware TLB's for plural level address translations
EP0072107B1 (en) * 1981-08-03 1989-05-31 International Business Machines Corporation Peripheral sub-systems accommodating guest operating systems
US4533996A (en) * 1982-02-23 1985-08-06 International Business Machines Corporation Peripheral systems accommodation of guest operating systems
US4494189A (en) * 1982-04-26 1985-01-15 International Business Machines Corporation Method and means for switching system control of CPUs
US4571674A (en) * 1982-09-27 1986-02-18 International Business Machines Corporation Peripheral storage system having multiple data transfer rates
JPS6057438A (ja) * 1983-09-08 1985-04-03 Hitachi Ltd 仮想計算機システム制御装置
JPH0619747B2 (ja) * 1984-01-18 1994-03-16 株式会社日立製作所 I/o命令実行方法、i/o割込処理方法およびそれらを用いた計算機システム
JPS60159948A (ja) * 1984-01-30 1985-08-21 Nec Corp 命令例外処理方式
JPS60225944A (ja) * 1984-04-25 1985-11-11 Hitachi Ltd 仮想計算機システム
US4674038A (en) * 1984-12-28 1987-06-16 International Business Machines Corporation Recovery of guest virtual machines after failure of a host real machine
JPS61206057A (ja) * 1985-03-11 1986-09-12 Hitachi Ltd アドレス変換装置
JPH07110406B2 (ja) * 1992-02-14 1995-11-29 正利 横木 耐磨耗性金属材およびその製造方法
JP3069435B2 (ja) * 1992-06-25 2000-07-24 松下電工株式会社 アンテナ線引込装置の引込み線の接続構造

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1318967C (zh) * 2002-05-17 2007-05-30 株式会社Ntt都科摩 用于向应用提供事件的方法以及使用该方法的电子设备
CN100335997C (zh) * 2004-01-14 2007-09-05 威达电股份有限公司 多个输入/输出装置的切换控制系统及其方法
CN101369258B (zh) * 2006-01-17 2010-12-01 株式会社Ntt都科摩 输入输出控制系统

Also Published As

Publication number Publication date
CN86105553A (zh) 1987-07-15
EP0210640A3 (en) 1989-06-21
JPH0792761B2 (ja) 1995-10-09
US4887202A (en) 1989-12-12
DE3687805D1 (de) 1993-04-01
DE3687805T2 (de) 1993-06-09
EP0210640A2 (en) 1987-02-04
KR870001510A (ko) 1987-03-14
EP0210640B1 (en) 1993-02-24
KR930008265B1 (ko) 1993-08-27
JPS6231437A (ja) 1987-02-10

Similar Documents

Publication Publication Date Title
CN1007938B (zh) 虚拟计算机系统的输入输出控制方式
CN1011357B (zh) 多重处理的方法和设备
JP2945498B2 (ja) システム間通信方式
JPH0695898A (ja) 仮想計算機の制御方法および仮想計算機システム
US4318174A (en) Multi-processor system employing job-swapping between different priority processors
JPH0131214B2 (zh)
US4660144A (en) Adjunct machine
JP2870254B2 (ja) 仮想計算機の入出力割り込み処理方式
EP0547991A2 (en) Adaptive method for starting tasks in a multi-tasking operating system
JPH02210542A (ja) 仮想計算機システムにおける実行制御方式
WO2021253875A1 (zh) 内存管理方法和相关产品
CN2528080Y (zh) 支持信息信号式中断的芯片组以及控制器
CN85101171A (zh) 虚拟机系统及其计算机系统的输入/输出执行方法
KR100294314B1 (ko) 데이터처리시스템및방법과그런시스템과의통신시스템
JPH0348937A (ja) 仮想計算機システムにおける入出力命令実行方式
JPS61184643A (ja) 仮想計算機の起動制御方式
JPS6022775B2 (ja) 入出力システム
JPH0126093B2 (zh)
JPH01126738A (ja) 多重ジョブの実行におけるデータセット競合制御方式
JPH1153327A (ja) マルチプロセッサシステム
JP2590872B2 (ja) タスクスケジュール方法
JPH06187312A (ja) マルチcpuシステムにおける処理方法および装置
JPS62221041A (ja) 仮想計算機システムにおけるデイスパツチ制御装置
Lauesen Program control of operating systems
JPH11161506A (ja) 情報処理装置のディスパッチ方法、情報処理装置及びその記録媒体

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C13 Decision
GR02 Examined patent application
C14 Grant of patent or utility model
GR01 Patent grant
C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee