CN1906583A - 信息处理设备、中断处理控制方法、以及计算机程序 - Google Patents

信息处理设备、中断处理控制方法、以及计算机程序 Download PDF

Info

Publication number
CN1906583A
CN1906583A CNA2005800014874A CN200580001487A CN1906583A CN 1906583 A CN1906583 A CN 1906583A CN A2005800014874 A CNA2005800014874 A CN A2005800014874A CN 200580001487 A CN200580001487 A CN 200580001487A CN 1906583 A CN1906583 A CN 1906583A
Authority
CN
China
Prior art keywords
interrupt
main
interrupt process
interruption
response
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
Application number
CNA2005800014874A
Other languages
English (en)
Other versions
CN100549964C (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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Publication of CN1906583A publication Critical patent/CN1906583A/zh
Application granted granted Critical
Publication of CN100549964C publication Critical patent/CN100549964C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/4812Task transfer initiation or dispatching by interrupt, e.g. masked

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

在同时运行多个操作系统(OS)的系统中提供了改进的中断处理控制配置。在同时运行多个OS的系统中,设置用来执行中断处理控制的主OS,并且不将中断屏蔽设置权限赋予除了主OS之外的副OS。副OS向主OS报告副OS处于中断使能状态还是中断禁用状态。根据报告的信息,主OS执行副OS的中断屏蔽控制。通过此配置,有可能消除由于副OS自身的屏蔽控制而造成的中断处理保留的问题,并且基于主OS的意图执行中断控制。可利用较高的优先级执行所需中断处理。此外,由于主OS管理副OS中断向量区域,有可能实现存储区域减小。

Description

信息处理设备、中断处理控制方法、以及计算机程序
技术领域
本发明涉及信息处理设备、中断进程控制方法、以及计算机程序。更具体地,本发明涉及这样的信息处理设备、中断控制方法、以及计算机程序,其用于在包括多个OS的系统中设置用来控制中断进程的主操作系统(OS),以便减小整个系统的中断屏蔽(mask)时间、改善中断响应、并实现有效率的数据处理。
背景技术
在单个系统中具有多个OS的多操作系统(OS)中,每个OS可执行相应的进程,并且,以时序方式连续地切换诸如中央处理单元(CPU)和存储器的系统共用的硬件。
例如,通过分区管理软件程序来执行多个OS的进程(任务)的调度。如果OS(α)和OS(β)在单个系统中共存,其中OS(α)的进程为分区A,而OS(β)的进程为分区B,那么,分区管理软件程序确定分区A和分区B的调度,并通过基于所确定的调度而分配的硬件资源,执行OS的进程。
专利文档1公开了多OS系统的任务管理技术。根据该公开,通过被置于紧急进程上的优先级,调度要由多个OS执行的任务。
将处理数据的实体设置为分区。更具体地,设置逻辑分区,作为在系统中共享资源的实体。对逻辑分区分配各种资源,如物理处理器的使用时间、虚拟地址空间、以及存储器空间。随后,使用所分配的资源来执行进程。在逻辑分区中设置与任意物理处理器相对应的逻辑处理器,并基于逻辑处理器而执行数据处理。逻辑处理器不总是以一一对应的关系对应于物理处理器。例如,单个逻辑处理器可对应于多个物理处理器,并且,多个逻辑处理器可对应于单个物理处理器。
如果使用逻辑处理器并行执行多个进程,则通过调度多个逻辑处理器使用物理处理器。更具体地,多个逻辑处理器以分时方式使用物理处理器。
在多OS中,限制了作为物理可用的处理器的硬件资源。当前由一个OS使用的物理处理器不能由另一个OS使用。将处理器不能由另一个处理器使用的持续时间称为中断屏蔽周期。随着中断屏蔽周期被延长,减小了整个系统的效率。
[专利文档1]日本未审查专利申请公开No.2003-345612
发明内容
[本发明要解决的问题]
由此,期望提供用于在包括多个OS的系统中设置用来控制中断进程的主OS的信息处理设备、中断控制方法、以及计算机程序,以便减小整个系统的中断屏蔽时间、改善中断响应、并实现有效率的数据处理。
[解决问题的手段]
根据本发明的一个方面,信息处理设备处理用于多个OS的数据。多个OS包括控制中断进程的主OS和副OS。主OS存储与副OS处于中断使能状态还是中断禁用状态有关的状态信息,并控制中断进程,以基于状态信息,响应于中断的生成而进行中断进程执行和中断进程保留中的一个。
在本发明的一个实施例的信息处理设备中,主OS存储与中断进程处于进行中还是保留中有关的中断进程状态信息,并响应于副OS在中断使能状态和中断禁用状态之间的转换,而恢复进行中断进程执行。
在本发明的一个实施例的信息处理设备中,副OS向主OS通知与副OS处于中断使能状态还是中断禁用状态有关的状态信息,并且,主OS响应于来自副OS的通知而更新副OS的状态信息。
在本发明的一个实施例的信息处理设备中,主OS存储中断进程的优先级信息,并响应于优先级信息执行中断进程。
在本发明的一个实施例的信息处理设备中,主OS基于包含副OS的状态信息、以及与中断进程处于进行中还是保留中有关的中断进程状态信息的状态表,而执行状态管理。如果生成为副OS设计的中断,并且主OS基于状态表确定副OS处于中断禁用状态,则主OS在状态表中将该中断注册为保留的中断。如果生成为副OS设计的中断,并且主OS基于状态表确定副OS处于中断使能状态,则以如下方式,主OS取决于在处理器上运行的OS是主OS还是副OS而执行中断控制:
(a)如果主OS正在运行中,则主OS
(a1)响应于高优先级中断而执行中断进程,或
(a2)响应于低优先级中断而保留中断进程,并且
(b)如果副OS正在运行中,则副OS不考虑中断的优先级而执行中断进程。
在本发明的一个实施例的信息处理设备中,主OS基于包含副OS的状态信息、以及与中断进程处于进行中还是保留中有关的中断进程状态信息的状态表,而执行状态管理。如果生成为主OS设计的中断,则以如下方式,主OS取决于在处理器上运行的OS是主OS还是副OS而执行中断控制:
(a)如果在主OS正在运行中,则主OS不考虑中断的优先级而执行中断进程,并且
(b)如果在副OS正在运行中,则副OS
(b1)响应于高优先级中断而执行中断进程,或
(b2)响应于低优先级中断而保留中断进程。
根据本发明的第二方面,用于在多个OS上执行数据处理的中断进程控制方法包括以下步骤:从除了主OS之外的副OS接收与副OS处于中断使能状态还是中断禁用状态有关的状态信息;检测中断的生成;以及控制中断进程,以基于状态信息,响应于中断的生成而进行中断进程执行和中断进程保留中的一个。
在本发明的一个实施例的中断进程控制方法中,主OS存储与中断进程处于进行中还是保留中有关的中断进程状态信息,并响应于副OS在中断使能状态和中断禁用状态之间的转换,而恢复进行中断进程执行。
本发明的一个实施例的中断进程控制方法还可包括以下步骤:向主OS通知与副OS处于中断使能状态还是中断禁用状态有关的状态信息;以及响应于来自副OS的通知而更新副OS的状态信息。
在本发明的一个实施例的中断进程控制方法中,主OS存储中断进程的优先级信息,并执行响应于优先级信息的中断进程。
在本发明的一个实施例的中断进程控制方法中,主OS基于包含副OS的状态信息、以及与中断进程处于进行中还是保留中有关的中断进程状态信息的状态表,而执行状态管理。如果生成为副OS设计的中断,并且主OS基于状态表确定副OS处于中断禁用状态,则主OS在状态表中将该中断注册为保留的中断。如果生成为副OS设计的中断,并且主OS基于状态表确定副OS处于中断使能状态,则以如下方式,主OS取决于在处理器上运行的OS是主OS还是副OS而执行中断控制:
(a)如果主OS正在运行中,则主OS
(a1)响应于高优先级中断而执行中断进程,或
(a2)响应于低优先级中断而保留中断进程,并且
(b)如果副OS正在运行中,则副OS不考虑中断的优先级而执行中断进程。
在本发明的一个实施例的中断进程控制方法中,主OS基于包含副OS的状态信息、以及与中断进程处于进行中还是保留中有关的中断进程状态信息的状态表,而执行状态管理。如果生成为主OS设计的中断,则以如下方式,主OS取决于在处理器上运行的OS是主OS还是副OS而执行中断控制:
(a)如果主OS正在运行中,则主OS不考虑中断的优先级而执行中断进程,并且
(b)如果副OS正在运行中,则副OS
(b1)响应于高优先级中断而执行中断进程,或
(b2)响应于低优先级中断而保留中断进程。
根据本发明的第三方面,用于在多个OS上的数据处理中执行中断进程控制的计算机程序包括以下步骤:从除了主OS之外的副OS接收与副OS处于中断使能状态还是中断禁用状态有关的状态信息;检测中断的生成;以及控制中断进程,以基于状态信息,响应于中断的生成而进行中断进程执行和中断进程保留中的一个。
以诸如CD、FD、或MO的计算机可读存储介质,或者例如网络的通信介质的方式,向执行各种程序代码的通用计算机系统提供本发明的一个实施例的计算机程序。通过以计算机可读方式提供该计算机程序,计算机系统响应于计算机程序执行进程。
从下面对本发明的描述和附图中,本发明的这些和其它特征、以及优点将变得清楚。在本发明的描述的上下文中,系统表示多个设备的逻辑集合,并且,不限于将元件装在相同的机箱内的设备。
[优点]
根据本发明的实施例,在同时运行多个OS的系统中设置执行中断进程的主OS。利用执行中断控制进程的主OS,减小了整个系统的屏蔽时间,改善了中断响应,并有效地执行数据处理。
根据本发明的实施例,设置执行中断进程控制的主OS,并且,不将设置中断屏蔽的权限转交给除了主OS之外的副OS。副OS向主OS通知副OS处于中断使能状态还是中断禁用状态。主OS控制副OS的中断屏蔽。此配置防止副OS保留由于自身的屏蔽控制而造成的所需中断进程。根据主OS的意图,而控制所有中断进程。由此,利用优先级而执行所需中断进程。
根据本发明的实施例,在主OS中设置副OS中断向量管理单元。通常,主OS管理副OS的中断向量区域。与由OS各自执行的中断向量管理不同,共享了中断向量,并减小了存储区域。
附图说明
图1是图解本发明的一个实施例的信息处理设备的框图。
图2图解了处理器模块的结构。
图3图解了根据本发明的一个实施例的信息处理设备的操作系统。
图4图解了将逻辑处理器以分时方式分配到物理处理器的分配进程。
图5是图解根据本发明一个实施例的信息处理设备的主OS的功能图。
图6图解了在本发明的一个实施例中,由主OS管理的列出OS状态信息和中断进程状态信息的状态表。
图7图解了响应于中断的生成的副OS的状态和进程序列。
图8图解了使用处理器执行进程的OS(正在运行中的OS)、中断的优先级(高和低优先级)、中断目标OS、以及中断目标OS的中断许可状态的关系的列表。
具体实施方式
下面,通过参照附图描述根据本发明的实施例的信息处理设备、中断进程控制方法、以及计算机程序。
下面,通过参照图1描述本发明的一个实施例的信息处理设备的硬件结构。处理器模块101包括多个处理单元,并根据存储在只读存储器(ROM)104和HDD 123中的各种程序(包括操作系统(OS)和在OS上运行的应用程序)而处理数据。后面将通过参照图2描述处理器模块101。
响应于经由处理器模块101输入的命令,例如,图形引擎102生成要被显示在形成输出单元122的显示器的屏幕上的数据,执行3D绘图进程。主存储器(DRAM)103存储由处理器模块101执行的程序、以及在执行程序的过程中变化的参数。这些元件经由包括CPU总线的主机总线111互连。
主机总线111经由桥105连接到外部总线112,如PCI(外围组件互连/接口)总线。桥105控制主机总线111、外部总线112、控制器106、存储卡107和其它装置之间的数据输入和输出。
输入单元121将信息输入到由用户操作的输入装置,如键盘和定点装置。输出单元122包括例如液晶显示器和CRT(阴极射线管)中的一个的图像输出单元、以及例如扬声器的音频输出装置。
HDD(硬盘驱动器)123驱动在其内加载的硬盘,由此,记录或回放要由处理器模块101执行的程序、以及信息。
驱动器124读取存储在诸如磁盘、光盘、磁光盘、半导体存储器等的被加载的可移动记录介质127中的数据和程序,并经由接口113、外部总线112、桥105、以及主机总线111,将数据和程序提供到主存储器(DRAM)103。
连接端口125连接到外部装置128,并且,可包括USB、IEEE 1394总线等。连接端口125经由接口113、外部总线112、桥105、以及主机总线111连接到处理器模块101。连接到网络的通信单元126传送从HDD 123等提供的数据,并从外部接收数据。
下面,通过参照图2描述处理器模块的结构。如所示出的,处理器模块200包括:主处理器组201,其包括多个主处理器单元;以及多个副处理器组202-20n,其各自包括多个副处理器单元。每个组还包括存储控制器和次级高速缓冲存储器。例如,各自包括8个处理器单元的处理器组201-20n经由交叉臂(cross-bar)架构和分组交换网络中的一个而连接。响应于主处理器组201的主处理器的命令,选择多个副处理器组202-20n中的至少一个副处理器来执行预定程序。
描述了处理器模块的结构。每个处理器组中的存储流控制器控制对图1的主存储器103的数据输入和数据输出。次级高速缓冲存储器用作在每个处理器组中处理数据的存储区域。
下面,通过参照图3描述本发明的一个实施例的信息处理设备的操作系统(OS)。多OS信息处理设备具有以如图3所示的逻辑分层结构的方式而配置的多个OS。
如图3所示,在较低层上配置主OS 301。在较高层上配置多个副OS 302、303、以及304。将客户(guest)副OS 302和303和副系统控制OS 304设为副OS。连同系统控制OS 304一起,主OS 301形成逻辑分区,作为由通过参照图1和2讨论的处理器模块101执行的每个进程的执行单元,并将系统硬件资源(例如,作为计算资源的主处理器、副处理器、存储器以及装置)分配给每个逻辑分区。
作为副OS的客户OS 302和303为游戏(gaming)OS、Windows、Linux等,并在主OS 301的控制下操作。尽管在图3中仅示出了2个客户OS 302和303,但客户OS的数目不限于2。
客户OS 302和303在由主OS 301和系统控制OS 304设置的逻辑分区内操作。客户OS 302和303使用各自被分配给逻辑分区的硬件资源,如主处理器、副处理器、存储器以及装置来处理多个数据。
客户OS(a)302使用被分配给由控制OS 301和系统控制OS 304设置的逻辑分区2的、包括主处理器、副处理器、存储器以及装置的硬件装置,由此,执行与客户OS(a)302相对应的应用程序305。客户OS(b)303使用被分配给逻辑分区“n”的、包括主处理器、副处理器、存储器以及装置的硬件资源,由此,执行与客户OS(b)303相对应的应用程序306。主OS 301提供执行客户OS所需的客户OS编程接口。
作为副OS中的一个的系统控制OS 304生成包含逻辑分区管理程序的系统控制程序307,并连同主OS 301执行响应于系统控制程序307的操作控制。系统控制程序307使用系统控制程序编程接口控制系统策略。由控制OS 301向应用程序306提供系统控制程序编程接口。例如,系统控制程序307允许灵活的定制,例如,设置资源分配的上限。
系统控制程序307使用系统控制程序编程接口来控制系统的行为。例如,系统控制程序307产生新的逻辑分区,并在该逻辑分区上启动新的客户OS。在运行多个客户OS的系统中,以在系统控制程序307中编程的次序而初始化客户OS。系统控制程序307可在由主OS 301接收之前接收并检查从客户OS发出的资源分配请求,修改系统策略,并拒绝请求本身。这样,无特定的客户OS独占资源。其中实现系统策略的程序是系统控制程序。
主OS 301将特定逻辑分区(例如,逻辑分区1)分配给系统控制OS 304。主OS 301以管理程序(hypervisor)模式操作。客户OS以监控程序(supervisor)模式操作。系统控制OS 304和应用程序以问题(problem)模式(用户模式)操作。
逻辑分区是在系统中接收资源分配的实体。例如,将主存储器103分区为几个区域(见图1),并且,对每个逻辑分区赋予使用相应的区域的权限。下面列出了分配给逻辑分区的资源的类型。
a)物理处理器单位使用时间
b)虚拟地址空间
c)可由在逻辑分区中运行的程序访问的存储器
d)由控制OS使用以管理逻辑分区的存储器
e)事件端口
f)使用装置的权限
g)高速缓冲存储器分区
h)使用总线的权限
如先前所讨论的,每个OS在逻辑分区内操作。OS独占分配给逻辑分区的资源,以处理各种数据。在很多情况中,基于每个客户OS,为在系统上起作用的客户OS产生一个分区。对每个逻辑分区分配唯一标识符。系统控制OS 304通过将作为逻辑分区管理信息而生成的系统控制程序与标识符相关联,而管理系统控制程序。
由主OS 301和系统控制OS 304生成逻辑分区。紧接在产生之后,逻辑分区不具有资源,并对可用资源没有设置限制。逻辑分区采用两个状态(即,活动状态和结束状态)中的一个。紧接在产生之后的逻辑分区采用活动状态。逻辑分区响应于在逻辑分区中操作的客户OS的请求,而转换到结束状态,并停止分配给逻辑分区的所有逻辑处理器。
逻辑处理器是分配给逻辑分区的处理器,并对应于任意物理处理器,即,图2的处理器组内的处理器。逻辑处理器和物理处理器不总是以一一对应方式彼此相关。单个逻辑处理器可对应于多个物理处理器。可替换地,多个逻辑处理器可对应于单个物理处理器。由主OS 301确定逻辑处理器和物理处理器之间的对应关系。
主OS 301具有限制每个逻辑分区可用的资源量的功能。可对客户OS 302和客户OS 303在不与系统控制OS 304通信的情况下能够分配和释放的资源的使用量设置限制。
主OS提供具有以物理副处理器(作为计算资源)的抽象形式的逻辑副处理器的逻辑分区。如先前所讨论的,物理副处理器不是以一一对应方式与逻辑副处理器相关,并且,不需要物理副处理器在数目上与逻辑副处理器相同。根据需要,控制OS可由此使单个物理副处理器对应于多个逻辑副处理器。
如果逻辑副处理器的数目大于物理副处理器的数目,则控制OS以分时方式使用物理副处理器。逻辑副处理器可重复地停止,并随后恢复操作。副OS可监控这样的改变。
将处理数据的实体设置为分区。更具体地,将逻辑分区设置为在系统中共享资源的实体。对逻辑分区分配各种资源,如物理处理器的使用时间、虚拟地址空间、以及存储器空间。随后,使用所分配的资源来执行进程。在逻辑分区中设置与任意物理处理器相对应的逻辑处理器,并基于逻辑处理器而执行数据处理。逻辑处理器不总是基于一一对应的关系而对应于物理处理器。例如,单个逻辑处理器可对应于多个物理处理器,并且,多个逻辑处理器可对应于单个物理处理器。
如果使用逻辑处理器并行执行多个进程,则通过多个逻辑处理器调度物理处理器。更具体地,多个逻辑处理器以分时方式使用物理处理器。
参照图4,讨论如何以分时方式来使用物理处理器。如图4(a)所示,将与主OS和副OS中的一个相对应的单个逻辑处理器分配给单个物理处理器。逻辑处理器(a)独占物理处理器(1),而逻辑处理器(b)独占物理处理器2。
如图4(b)所示,被分配到单个物理处理器的多个逻辑处理器以分时方式执行进程。物理处理器1以逻辑处理器c→a→c→a→b→c→b的次序而按照时间被共享。执行与主OS和副OS中的一个的进程相对应的每个逻辑处理器。物理处理器2以逻辑处理器b→d→b→d→c→d→a的次序而按照时间被共享。执行与主OS和副OS中的一个的进程相对应的每个逻辑处理器。
本发明的一个实施例的信息处理设备是使用多个OS的多OS系统。如先前通过参照图3而讨论的,将多个OS划分为单个主OS和余下的副OS。下面描述本发明的一个实施例的信息处理设备的主OS和副OS的功能和中断进程控制。
在中断进程中,诸如输入和输出装置或系统时钟的装置异步中断CPU。为接受中断并执行中断进程,作为物理处理器的CPU在当前进程的中间挂起当前的进程,执行中断进程,并随后在中断进程完成之后继续进行原始进程。在中断进程中,作为上下文表而产生与所保留的进程相对应的硬件状态信息,并根据需要而将其存储在存储器中。在完成中断进程之后,CPU通过复原上下文而恢复硬件状态,并根据保留而继续进行进程。
下面列出了主OS和副OS的中断进程控制中的功能:
(1)主OS管理竞争资源,如设置中断屏蔽和中断向量。
(2)主OS记录处理数据的OS(包括主OS)的状态信息。
(3)代替直接控制中断屏蔽寄存器,副OS向主OS通知副OS处于中断使能状态还是中断禁用状态。
(4)主OS接收所有中断请求,并仅在副OS可中断且可操作时传送所需的中断。
通过这些功能,
(1)在从副OS屏蔽所有中断的周期中,清空所有中断屏蔽。
(2)由于共享中断向量,产生主OS和副OS的集成图像,以减小使用的存储器。
下面,通过参照图5描述主OS的功能。图5是图解中断进程控制中的主OS 510的功能的框图。
主OS 510包括中断优先级管理器511、副OS中断管理器512、副OS中断向量管理器513、中断因子注册管理器514、执行OS状态管理器515、中断传递器516、执行OS切换控制器517、中断进程结束通知器518、以及中断保留控制器519。下面描述每个元件的进程。
中断优先级管理器511基于与中断因子相对应的优先级而执行中断管理。中断进程包括为主OS设计的中断进程、以及为副OS设计的中断进程,并对每个中断设置优先级。在设置优先级时,利用低级和高级的二级优先级、或者三级或更多的多级优先级,对每个中断进程设置优先级。中断优先级管理器511确定与根据响应于中断因子而设置的优先级所引起的中断530相对应的进程。
副OS中断管理器512管理副OS的中断使能状态和中断禁用状态。如先前所讨论的,副OS 520向主OS 510通知副OS处于中断使能状态还是中断禁用状态。响应于来自副OS 520的通知,主OS 510中的副OS中断管理器512存储与每个副OS处于中断使能状态还是中断禁用状态有关的管理信息。
副OS中断管理器512将每个副OS的状态注册到状态表上,所述状态表列出与每个副OS处于中断使能状态还是中断禁用状态有关的状态。例如,状态表包含中断屏蔽寄存器,其将中断使能状态存储为(0),而将中断禁用状态存储为(1)。副OS中断管理器512基于中断屏蔽寄存器管理每个副OS的状态。如果随同处于中断禁用状态(即,处于屏蔽状态)的副OS而出现了中断请求,则该中断请求必须等待。随着副OS处于中断禁用状态(即,处于屏蔽释放状态),允许响应于中断请求的中断进程。
图5图解了单个副OS 520。如先前通过参照图3而讨论的,信息处理设备可容纳多个副OS。主OS 510中的副OS中断管理器512存储与副OS处于中断使能状态还是中断禁用状态有关的每个副OS的管理信息,并响应于每个副OS的状态而执行中断进程控制。
图6图解了存储为副OS中断管理器512的管理信息的状态表。如图6所示,状态表以相关形式列出了每个OS的状态的数据,即,与副OS处于中断使能状态还是中断禁用状态有关的状态信息、与所保留的中断相关的信息、以及与进行中的中断进程相关的信息。一旦从每个副OS接收到状态通知,副OS中断管理器512便响应于所接收的信息而更新状态表。响应于中断进程的出现、保留、传递和完成,副OS中断管理器512在状态表中注册与每个中断被保留还是正在进行有关的状态。如果已完成了对应的中断进程,则副OS中断管理器512从状态表中删除中断。
副OS中断向量管理器513管理每个副OS中的中断向量区域。中断向量是由中断因子定义的存储区域表,并由中断进程例程的起始地址组成。接收中断的处理器检查来自存储区域的中断句柄的地址,并跳转到该地址,以开始中断进程。副OS中断向量管理器513管理副OS的中断向量区域。
中断因子注册管理器514存储并管理为主OS设计的中断因子和为副OS设计的中断因子的注册信息。可由OS所使用的I/O装置来修改主OS和副OS的中断因子。中断因子注册管理器514向每个OS注册和删除中断因子。中断因子包括来自诸如键盘或鼠标的输入单元的中断进程、以及来自网络接口的数据输入。
执行OS状态管理器515记录并管理在物理处理器上执行数据处理的OS的信息。
中断传递器516执行中断传递进程,即,确定要向哪个处理器或处理器组通知每个中断请求,以执行对应的中断进程。
执行OS切换控制器517控制切换要由处理器执行的各种数据处理(包括任务)。如先前所讨论的,将逻辑处理器分配到物理处理器。OS按照时间共享至少一个处理器,以处理数据。OS切换控制器517根据OS的处理器使用调度而切换OS。
中断进程结束通知器518响应于中断请求而监控中断进程的执行状态,并向已执行被中断进程挂起的进程的OS通知中断进程的结束。当完成中断进程时,恢复与挂起的进程相对应的上下文,恢复挂起的进程的硬件状态,并随后继续进行原始进程。
中断保留控制器519执行中断保留控制进程。如先前所讨论的,在中断禁用状态中(即,在屏蔽状态中)出现的中断请求必须等待,直到释放屏蔽为止。中断保留控制器519管理待用状态上的保留中断。中断保留控制器519更新其内设置了中断保留信息的状态表,并且,如果在状态表中注册了所保留的中断,则向副OS 520通知所保留的中断。
下面,通过参照图7而描述主OS响应于副OS的两个状态,即“中断使能状态”和“中断禁用状态”执行的中断进程控制和状态转换。
如图7所示,步骤S101-S104示出了信息处理设备中的单个副OS的四个状态如下:
状态S101:副OS启动。
状态S102:初始化副OS。
状态S103:将副OS设置为处于中断禁用状态。
状态S104:将副OS设置为处于中断使能状态。
其中,随着副OS处于以下状态中的一个:
状态S103:中断禁用状态,以及
状态S104:中断使能状态,
而发生以下事件中的一个:
事件I201:主OS的中断,或
事件I202:副OS的中断。
下面描述响应于副OS的四个状态S101-S104之间的每个转换的进程序列1-9。当事件I201(即,主OS的中断)和事件I202(即,副OS的中断)中的一个发生时,执行进程序列1至9中的一个。
[序列1]
在从状态S101(副OS启动)到状态S102(副OS的初始化的完成)的状态转换中执行序列1。
在此状态转换中,副OS向主OS通知由副OS使用的中断因子。作为对图5的中断因子注册管理器514的通知步骤而执行此步骤。
主OS的中断因子注册管理器514检查由副OS通知的中断因子,并将所允许的中断因子注册为副OS中断因子。
[序列2]
响应于从步骤S102(副OS的初始化的完成)到步骤S103(副OS的中断禁用状态)的状态转换而执行序列2。
在转换期间,副OS向主OS通知副OS处于中断禁用状态。作为对图5的副OS中断管理器512的通知步骤而执行此步骤。
一旦从副OS接收到副OS处于中断禁用状态的通知,主OS的副OS中断管理器512便在列出屏蔽状态的状态表(见图6)中注册副OS的中断禁用状态。通过控制中断屏蔽寄存器-其中将中断禁用状态设置为(0),而将中断使能状态设置为(1)-副OS中断管理器512设置用来指示副OS处于中断禁用状态的(屏蔽)状态。如果在此状态下输入了中断请求,则该中断请求必须等待。
[序列3]
响应于从状态S102(副OS的初始化的完成)到状态S104(副OS的中断使能状态)的状态转换而执行序列3。
在该状态转换期间,副OS向主OS通知副OS处于中断使能状态。作为对图5的副OS中断管理器512的通知步骤而执行该步骤。
一旦从副OS接收到副OS处于中断使能状态的通知,主OS中的副OS中断管理器512便在列出屏蔽状态的状态表(见图6)中注册副OS的中断使能状态。通过控制中断屏蔽寄存器-其中将中断禁用状态设置为(0),而将中断使能状态设置为(1)-副OS中断管理器512设置用来指示副OS处于中断使能状态的(屏蔽释放)状态。如果在此状态下输入了中断请求,则在不等待的情况下执行该中断请求。
主OS在状态表中检查当前保留的中断的存在。状态表列出与每个OS处于中断使能状态还是中断禁用状态有关的OS状态信息、以及中断保留状态信息。图5的中断保留控制器519将中断保留状态信息写入到状态表。如果存在保留的中断,则中断保留控制器519向副OS通知所保留的中断。
[序列4]
响应于从状态S104(副OS中断使能状态)到状态S103(副OS中断禁用状态)的状态转换而执行序列4。
在该状态转换期间,副OS向主OS通知副OS从中断使能状态转换为中断禁用状态。作为对图5的副OS中断管理器512的通知步骤而执行此步骤。
一旦从副OS接收到副OS从中断使能状态转换为中断禁用状态的通知,主OS中的副OS中断管理器512便更新列出屏蔽状态的状态表(见图6),即,将副OS的状态注册信息从中断使能状态改变为中断禁用状态。通过控制中断屏蔽寄存器-其中,将中断禁用状态设置为(0),而将中断使能状态设置为(1)-,副OS中断管理器512设置用来指示副OS处于中断禁用状态的(屏蔽)状态。如果在此状态下输入了中断请求,则该中断请求必须等待。
[序列5]
响应于从状态S103(副OS中断禁用状态)到状态S104(副OS中断使能状态)的状态转换而执行序列5。
在该状态转换期间,副OS向主OS通知副OS从中断禁用状态转换为中断使能状态。作为对图5的副OS中断管理器512的通知步骤而执行此步骤。
一旦从副OS接收到副OS从中断禁用状态转换为中断使能状态的通知,主OS中的副OS中断管理器512便更新列出屏蔽状态的状态表(见图6),由此,将副OS的状态注册信息从中断禁用状态改变为中断使能状态。通过控制中断屏蔽寄存器-其中,将中断禁用状态设置为(0),而将中断使能状态设置为(1)-,副OS中断管理器512设置用来指示副OS处于中断使能状态的(屏蔽释放)状态。如果在此状态下输入了中断请求,则执行中断进程。
[序列6]
在S103的副OS中断禁用状态中作为事件I202而出现副OS中断时执行序列6。一旦检测到事件I202,即,出现副OS中断,主OS便参照状态表,以确定副OS处于中断使能状态还是中断禁用状态。现在,副OS处于中断禁用状态。
在验证了副OS处于中断禁用状态之后,主OS在状态表上将该中断注册为被保留。
当前不执行、而是保留中断进程。
[序列7]
在S104的副OS中断使能状态中作为事件I202而出现副OS中断时执行序列7。
序列7中的进程取决于是由主OS还是副OS执行处理器的进程而变得不同。
(a)主OS正在运行中
在使用处理器执行进程时,主OS作为事件I202而检测副OS中断。主OS参照副OS的状态表,以确定副OS处于中断使能状态还是中断禁用状态。副OS处于中断使能状态(S104)。
在验证了副OS处于中断使能状态之后,主OS检查该中断的优先级。利用高优先级或低优先级对该中断设置优先级。下面描述响应于高优先级和低优先级的中断进程。
(a-1)高优先级的中断进程
如果所生成的中断因子处于高优先级,则执行以下进程(1)至(7)。下面,[主OS]表示由主OS执行的进程,而[副OS]表示由副OS执行的进程。
(1)[主OS]主OS将所生成的中断注册为正在被处理,作为响应于状态表(图6)的中断的副OS的数据。
(2)[主OS]主OS将处理器的应用从主OS切换到副OS。作为图5的OS切换控制器517的步骤而执行此切换步骤。
(3)[主OS]主OS将该中断传递到副OS。作为图5的中断传递器516的步骤而执行此处理步骤。
(4)[副OS]副OS响应于该中断而执行中断进程。
(5)[副OS]在完成该中断进程之后,副OS向主OS通知该中断进程的完成。中断进程结束通知器从副OS接收结束通知。
(6)[主OS]主OS从状态表中删除与注册并完成的中断进程相对应的条目。
(7)[主OS]在验证未输入其它高优先级中断之后,主OS从副OS切换到主OS。作为图5的OS切换控制器517的步骤而执行此处理步骤。
通过上述处理步骤,利用优先级而执行具有高优先级的副OS中断进程。下面描述低优先级的中断进程。如果所生成的中断因子处于低优先级,则主OS将所生成的中断在状态表(图6)中注册为与该中断相对应的副OS的保留中断信息。
在此时间点上,不执行所生成的中断,而必须等待。
(b)副OS正在运行中
如果副OS使用处理器执行进程,则执行以下处理步骤。下面,[主OS]表示由主OS执行的进程,而[副OS]表示由副OS执行的进程。
(1)[主OS]一旦检测到副OS中断的生成,主OS便参照副OS的状态表,以确定副OS处于中断使能状态还是中断禁用状态。在此情况下,副OS处于中断使能状态(S104)。
(2)[主OS]在验证副OS处于中断使能状态之后,主OS将所生成的中断注册为正在被处理,作为响应于状态表(图6)中的中断的副OS的数据。
(3)[主OS]主OS将中断请求传递给副OS。作为图5的中断传递器516的步骤而执行此处理步骤。
(4)[副OS]副OS执行中断进程。
(5)[副OS]一旦完成了中断进程,副OS便向主OS通知中断进程的结束。图5的中断进程结束通知器518从副OS接收结束通知。
(6)[主OS]主OS从状态表中删除与注册并完成的中断进程相对应的条目。
副OS使用处理器执行响应于所生成的中断的中断进程。副OS如果处于中断使能状态,则在不等待的情况下执行中断进程。
总之,在序列7中、即在随同处于中断使能状态的副OS而出现副OS中断时,执行中断进程。
(A)如果主OS正在运行中,那么,
(A-1)响应于高优先级中断而执行中断进程,以及
(A-2)响应于低优先级中断而保留中断进程。
(B)如果副OS正在运行中,那么,不考虑中断的优先级而执行中断进程。
[序列8]
如果随同处于S103的中断禁用状态的副OS而发生作为主OS中断的事件I201,则执行序列8。
在此情况下,同样,序列8取决于是由主OS还是副OS执行使用处理器的进程而变得不同。
(a)主OS正在运行中
如果在主OS使用处理器执行进程时,主OS检测到作为主OS中断的事件I201,则将所生成的中断传递到主OS。主OS执行中断进程。
(b)副OS正在运行中
如果在副OS使用处理器执行进程时,主OS检测到作为主OS中断的事件I201,则主OS检查所生成的中断的优先级。在这里使用低和高的两个优先级。下面分别描述响应于高优先级中断和低优先级中断的中断进程。
(b-1)高优先级中断
如果中断因子处于高优先级,则执行以下处理步骤(1)至(7)。下面,[主OS]表示由主OS执行的进程,而[副OS]表示由副OS执行的进程。
(1)[主OS]主OS将处理器应用的进程从副OS切换到主OS。作为图5的OS切换控制器517的步骤而执行该切换步骤。
(2)[主OS]主OS执行中断进程。
(3)[主OS]主OS将处理器应用的进程从主OS切换到副OS。作为图5的OS切换控制器517的步骤而执行该切换步骤。
由此,执行响应于高优先级中断的主OS中断进程。下面描述响应于低优先级中断的主OS中断进程。如果所生成的中断处于低优先级,则主OS将所生成的中断在状态表(图6)中注册为主OS的保留中断信息。
在此时间点上,不执行所生成的中断,而必须等待。
[序列9]
如果随同处于S104的中断使能状态的副OS而发生作为主OS中断的事件I201,则执行序列9。
此进程等同于在上面提到的序列8的进程。更具体地,如果发生为主OS设计的中断,则不考虑副OS处于中断使能状态还是中断禁用状态而执行相同的进程。
下面总结响应于主OS中断而执行的进程(序列8和9)。
(A)如果在主OS正在运行时出现中断,则不考虑中断优先级而执行中断进程。
(B)如果在副OS正在运行时出现中断,那么,
(B-1)响应于高优先级中断而执行中断进程,但
(B-2)响应于低优先级中断而保留中断进程。
图8列出了执行处理器应用的进程的OS(正在运行的OS)、优先级(高或低)、中断目标OS、以及中断目标OS的中断使能和禁用状态。如所列出的,可能存在16个状态设置情形。
根据本发明的一个实施例,主OS存储并管理与每个副OS处于中断使能状态还是中断禁用状态有关的、所有副OS的状态信息(图7的状态表)。
下面总结对副OS中断进程和主OS中断进程的响应。
[对副OS中断进程的响应]
当发生为副OS设计的中断时,主OS参照状态表。如果副OS处于中断禁用状态,则主OS在状态表中将所生成的中断设置并注册为被保留(序列6)。
如果副OS处于中断使能状态,则取决于执行处理器应用的进程的OS是主OS还是副OS,而如下执行中断保留进程或中断进程(序列7)。
(A)如果主OS正在运行中,那么,
(A-1)响应于高优先级中断而执行中断进程,但
(A-2)响应于低优先级中断而保留中断进程。
(B)如果副OS正在运行中,则不考虑中断的优先级而执行中断进程。
[对主OS中断进程的响应]
当发生为主OS设计的中断时,取决于执行处理器应用的进程的OS是主OS还是副OS,而如下执行中断保留进程或中断进程(序列8和9)。
(A)如果主OS正在运行中,则不考虑中断的优先级而执行中断进程。
(B)如果副OS正在运行中,那么,
(B-1)响应于高优先级中断而执行中断进程,但
(B-2)响应于低优先级中断而保留中断进程。
主OS基于所有副OS的状态信息(即,取决于每个副OS处于中断使能状态还是中断禁用状态)、生成中断时的状态信息(即,中断的优先级)、以及所生成的中断是为主OS还是副OS设计的,而控制中断进程和中断保留进程的执行。
根据本发明的实施例,不将屏蔽中断的权限交递给副OS。副OS向主OS通知副OS处于中断使能状态还是中断禁用状态。基于该通知,主OS控制对副OS的中断屏蔽。此配置克服了副OS根据副OS自身的屏蔽控制而保留所需的中断进程的不便。由此,由主OS控制所有中断进程。由于主OS中的副OS中断向量管理器513(见图5)管理副OS的中断向量区域,所以,与由各个OS执行中断向量管理的情况不同,共享了中断向量。如先前所讨论的,中断向量是由中断因子定义的存储区域的表。例如,中断因子由中断进程例程的起始地址组成。接收中断的处理器检查来自存储区域的中断句柄的地址,并跳转到该地址,以开始中断进程。主OS和副OS共享中断向量,并且由此,减小了所需存储区域。
已通过参照特定实施例而讨论了本发明。显然,本领域的技术人员可对实施例做出修改和改变,而不背离本发明的范围。已仅为示例目的而公开了本发明的实施例,并且,其不意图限制本发明的范围。仅通过参照所附权利要求而确定本发明的范围。
可通过软件、硬件或其组合来执行以上参考步骤系列。如果通过软件来执行该步骤系列,那么,例如,从记录介质或经由网络而将形成软件的程序安装到合并于硬件结构中的计算机上,或安装到执行各种处理的通用计算机。
可预先将该程序记录到作为记录介质的硬盘和只读存储器(ROM)中的一个,还可将该程序临时或永久地存储(记录)在可移动记录介质上。记录介质包括软盘、致密盘只读存储器(CD-ROM)、磁光(MO)盘、数字多用盘(DVD)、磁盘、半导体存储器等。可以封装软件提供这样的可移动介质。
可将该程序从可移动记录介质安装到计算机。可以无线方式将该程序从下载站点传送到计算机。还可经由诸如LAN(局域网)和因特网中的一个的网络而以有线方式传送该程序。随后,由计算机接收该程序,并将其安装到例如计算机中的硬盘的记录介质上。
在此说明书中讨论的处理步骤以所述的时序次序依次执行。可替换地,可并行或分别执行所述步骤。在此说明书中,系统表示由多个设备组成的逻辑系统,而每个设备的元件不一定被包含在相同的包装(机箱)中。
[工业应用性]
根据本发明的实施例,在并行运行多个操作系统的系统中设置执行中断进程的主操作系统(OS)。利用执行中断控制进程的主OS,减小了整个系统的屏蔽时间,改善了中断响应,并有效率地执行数据处理。
根据本发明的实施例,设置执行中断进程控制的主OS,并且,不将设置中断屏蔽的权限转交给主OS之外的副OS。副OS向主OS通知副OS处于中断使能状态还是中断禁用状态。主OS控制副OS的中断屏蔽。此配置防止副OS保留由于自身的屏蔽控制而造成的所需中断进程。根据主OS的意图,而控制所有中断进程。由此,利用优先级而执行所需中断进程。
根据本发明的实施例,在主OS中设置副OS中断向量管理单元。通常,主OS管理副OS的中断向量区域。与由OS各自执行的中断向量管理不同,共享了中断向量,并减小了存储区域。
权利要求书
(按照条约第19条的修改)
1、一种用于处理数据的信息处理设备,包括多个操作系统,所述多个操作系统包括控制中断进程的主操作系统以及副操作系统,主操作系统连同被设置为副操作系统的系统控制操作系统一起设置作为处理单元的逻辑分区,并管理与逻辑分区相关的硬件资源,副操作系统在由主操作系统和系统控制操作系统设置的逻辑分区内操作,并利用被分配到该逻辑分区的硬件资源执行软件应用程序,主操作系统存储与副操作系统处于中断使能状态还是中断禁用状态有关的状态信息,并控制中断进程,以基于所述状态信息,响应于中断的生成而进行中断进程执行和中断进程保留中的一个。
2、如权利要求1所述的信息处理设备,其中,主操作系统存储与中断进程处于进行中还是保留中有关的中断进程状态信息,并响应于副操作系统在中断使能状态和中断禁用状态之间的转换,而恢复进行中断进程执行。
3、如权利要求1所述的信息处理设备,其中,副操作系统向主操作系统通知与副操作系统处于中断使能状态还是中断禁用状态有关的状态信息,并且,
其中,主操作系统响应于来自副操作系统的通知而更新副操作系统的状态信息。
4、如权利要求1所述的信息处理设备,其中,主操作系统存储中断进程的优先级信息,并响应于优先级信息执行中断进程。
5、如权利要求1所述的信息处理设备,其中,主操作系统基于包含副操作系统的状态信息、以及与中断进程处于进行中还是保留中有关的中断进程状态信息的状态表,而执行状态管理,
如果生成为副操作系统设计的中断,并且主操作系统基于状态表确定副操作系统处于中断禁用状态,则主操作系统在状态表中将该中断注册为保留的中断,并且,
如果生成为副操作系统设计的中断,并且主操作系统基于状态表确定副操作系统处于中断使能状态,则以如下方式,取决于在处理器上运行的操作系统是主操作系统还是副操作系统而执行中断控制:
(a)如果主操作系统正在运行中,则主操作系统
(a1)响应于高优先级中断而执行中断进程,或
(a2)响应于低优先级中断而保留中断进程,并且
(b)如果副操作系统正在运行中,则副操作系统不考虑中断的优先级而执行中断进程。
6、如权利要求1所述的信息处理设备,其中,主操作系统基于包含副操作系统的状态信息、以及与中断进程处于进行中还是保留中有关的中断进程状态信息的状态表,而执行状态管理,并且,
如果生成为主操作系统设计的中断,则以如下方式,取决于在处理器上运行的操作系统是主操作系统还是副操作系统而执行中断控制:
(a)如果在主操作系统正在运行中,则主操作系统不考虑中断的优先级而执行中断进程,并且
(b)如果在副操作系统正在运行中,则副操作系统
(b1)响应于高优先级中断而执行中断进程,或
(b2)响应于低优先级中断而保留中断进程。
7、一种用于在多个操作系统上执行数据处理的中断进程控制方法,该方法包括以下步骤:
在控制中断进程的主操作系统中,向逻辑分区管理硬件资源,其中将逻辑分区作为主操作系统连同设置为副操作系统的系统控制操作系统中的进程执行单元来处理;
在副操作系统中,在由主操作系统和系统控制操作系统设置的逻辑分区内,利用被分配到正在使用的逻辑分区的硬件资源来执行软件应用程序;
在主操作系统中,从除了主操作系统之外的副操作系统接收与副操作系统处于中断使能状态还是中断禁用状态有关的状态信息;
检测中断的生成;以及
控制中断进程,以基于状态信息,响应于中断的生成而进行中断进程执行和中断进程保留中的一个。
8、如权利要求7所述的中断进程控制方法,其中,主操作系统存储与中断进程处于进行中还是保留中有关的中断进程状态信息,并响应于副操作系统在中断使能状态和中断禁用状态之间的转换,而恢复进行中断进程执行。
9、如权利要求7所述的中断进程控制方法,还包括以下步骤:
向主操作系统通知与副操作系统处于中断使能状态还是中断禁用状态有关的状态信息;以及
响应于来自副操作系统的通知而更新副操作系统的状态信息。
10、如权利要求7所述的中断进程控制方法,其中,主操作系统存储中断进程的优先级信息,并响应于优先级信息执行中断进程。
11、如权利要求7所述的中断进程控制方法,其中,主操作系统基于包含副操作系统的状态信息、以及与中断进程处于进行中还是保留中有关的中断进程状态信息的状态表,而执行状态管理,
如果生成为副操作系统设计的中断,并且主操作系统基于状态表确定副操作系统处于中断禁用状态,则主操作系统在状态表中将该中断注册为保留的中断,并且,
如果生成为副操作系统设计的中断,并且主操作系统基于状态表确定副操作系统处于中断使能状态,则以如下方式,主操作系统取决于在处理器上运行的操作系统是主操作系统还是副操作系统而执行中断控制:
(a)如果主操作系统正在运行中,则主操作系统
(a1)响应于高优先级中断而执行中断进程,或
(a2)响应于低优先级中断而保留中断进程,并且
(b)如果副操作系统正在运行中,则副操作系统不考虑中断的优先级而执行中断进程。
12、如权利要求7所述的中断进程控制方法,其中,主操作系统基于包含副操作系统的状态信息、以及与中断进程处于进行中还是保留中有关的中断进程状态信息的状态表,而执行状态管理,并且,
如果生成为主操作系统设计的中断,则以如下方式,取决于在处理器上运行的操作系统是主操作系统还是副操作系统而执行中断控制:
(a)如果在主操作系统正在运行中,则主操作系统不考虑中断的优先级而执行中断进程,并且
(b)如果在副操作系统正在运行中,则副操作系统
(b1)响应于高优先级中断而执行中断进程,或
(b2)响应于低优先级中断而保留中断进程。
13、一种用于在多个操作系统上执行数据处理的计算机程序,该计算机程序包括以下步骤:
在控制中断进程的主操作系统中,向逻辑分区管理硬件资源,其中将逻辑分区作为主操作系统连同设置为副操作系统的系统控制操作系统中的进程执行单元来处理;
在副操作系统中,在由主操作系统和系统控制操作系统设置的逻辑分区内,利用被分配到正在使用的逻辑分区的硬件资源来执行软件应用程序;
在主操作系统中,从除了主操作系统之外的副操作系统接收与副操作系统处于中断使能状态还是中断禁用状态有关的状态信息;
检测中断的生成;以及
控制中断进程,以基于状态信息,响应于中断的生成而进行中断进程执行和中断进程保留中的一个。

Claims (13)

1、一种用于处理数据的信息处理设备,包括多个操作系统(OS),多个OS包括控制中断进程的主OS以及副OS,主OS存储与副OS处于中断使能状态还是中断禁用状态有关的状态信息,并控制中断进程,以基于所述状态信息,响应于中断的生成而进行中断进程执行和中断进程保留中的一个。
2、如权利要求1所述的信息处理设备,其中,主OS存储与中断进程处于进行中还是保留中有关的中断进程状态信息,并响应于副OS在中断使能状态和中断禁用状态之间的转换,而恢复进行中断进程执行。
3、如权利要求1所述的信息处理设备,其中,副OS向主OS通知与副OS处于中断使能状态还是中断禁用状态有关的状态信息,并且,
其中,主OS响应于来自副OS的通知而更新副OS的状态信息。
4、如权利要求1所述的信息处理设备,其中,主OS存储中断进程的优先级信息,并响应于优先级信息执行中断进程。
5、如权利要求1所述的信息处理设备,其中,主OS基于包含副OS的状态信息、以及与中断进程处于进行中还是保留中有关的中断进程状态信息的状态表,而执行状态管理,
如果生成为副OS设计的中断,并且主OS基于状态表确定副OS处于中断禁用状态,则主OS在状态表中将该中断注册为保留的中断,并且,
如果生成为副OS设计的中断,并且主OS基于状态表确定副OS处于中断使能状态,则以如下方式,取决于在处理器上运行的OS是主OS还是副OS而执行中断控制:
(a)如果主OS正在运行中,则主OS
(a1)响应于高优先级中断而执行中断进程,或
(a2)响应于低优先级中断而保留中断进程,并且
(b)如果副OS正在运行中,则副OS不考虑中断的优先级而执行中断进程。
6、如权利要求1所述的信息处理设备,其中,主OS基于包含副OS的状态信息、以及与中断进程处于进行中还是保留中有关的中断进程状态信息的状态表,而执行状态管理,并且,
如果生成为主OS设计的中断,则以如下方式,取决于在处理器上运行的OS是主OS还是副OS而执行中断控制:
(a)如果在主OS正在运行中,则主OS不考虑中断的优先级而执行中断进程,并且
(b)如果在副OS正在运行中,则副OS
(b1)响应于高优先级中断而执行中断进程,或
(b2)响应于低优先级中断而保留中断进程。
7、一种用于在多个操作系统(OS)上执行数据处理的中断进程控制方法,该方法包括以下步骤:
从除了主OS之外的副OS接收与副OS处于中断使能状态还是中断禁用状态有关的状态信息;
检测中断的生成;以及
控制中断进程,以基于状态信息,响应于中断的生成而进行中断进程执行和中断进程保留中的一个。
8、如权利要求7所述的中断进程控制方法,其中,主OS存储与中断进程处于进行中还是保留中有关的中断进程状态信息,并响应于副OS在中断使能状态和中断禁用状态之间的转换,而恢复进行中断进程执行。
9、如权利要求7所述的中断进程控制方法,还包括以下步骤:
向主OS通知与副OS处于中断使能状态还是中断禁用状态有关的状态信息;以及
响应于来自副OS的通知而更新副OS的状态信息。
10、如权利要求7所述的中断进程控制方法,其中,主OS存储中断进程的优先级信息,并响应于优先级信息执行中断进程。
11、如权利要求7所述的中断进程控制方法,其中,主OS基于包含副OS的状态信息、以及与中断进程处于进行中还是保留中有关的中断进程状态信息的状态表,而执行状态管理,
如果生成为副OS设计的中断,并且主OS基于状态表确定副OS处于中断禁用状态,则主OS在状态表中将该中断注册为保留的中断,并且,
如果生成为副OS设计的中断,并且主OS基于状态表确定副OS处于中断使能状态,则以如下方式,主OS取决于在处理器上运行的OS是主OS还是副OS而执行中断控制:
(a)如果主OS正在运行中,则主OS
(a1)响应于高优先级中断而执行中断进程,或
(a2)响应于低优先级中断而保留中断进程,并且
(b)如果副OS正在运行中,则副OS不考虑中断的优先级而执行中断进程。
12、如权利要求7所述的中断进程控制方法,其中,主OS基于包含副OS的状态信息、以及与中断进程处于进行中还是保留中有关的中断进程状态信息的状态表,而执行状态管理,并且,
如果生成为主OS设计的中断,则以如下方式,取决于在处理器上运行的OS是主OS还是副OS而执行中断控制:
(a)如果在主OS正在运行中,则主OS不考虑中断的优先级而执行中断进程,并且
(b)如果在副OS正在运行中,则副OS
(b1)响应于高优先级中断而执行中断进程,或
(b2)响应于低优先级中断而保留中断进程。
13、一种用于在多个操作系统(OS)上执行数据处理的计算机程序,该计算机程序包括以下步骤:
从除了主OS之外的副OS接收与副OS处于中断使能状态还是中断禁用状态有关的状态信息;
检测中断的生成;以及
控制中断进程,以基于状态信息,响应于中断的生成而进行中断进程执行和中断进程保留中的一个。
CNB2005800014874A 2004-09-29 2005-09-26 信息处理设备、中断处理控制方法 Expired - Fee Related CN100549964C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004283529A JP4345630B2 (ja) 2004-09-29 2004-09-29 情報処理装置、割り込み処理制御方法、並びにコンピュータ・プログラム
JP283529/2004 2004-09-29

Publications (2)

Publication Number Publication Date
CN1906583A true CN1906583A (zh) 2007-01-31
CN100549964C CN100549964C (zh) 2009-10-14

Family

ID=36118873

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005800014874A Expired - Fee Related CN100549964C (zh) 2004-09-29 2005-09-26 信息处理设备、中断处理控制方法

Country Status (4)

Country Link
US (1) US8584125B2 (zh)
JP (1) JP4345630B2 (zh)
CN (1) CN100549964C (zh)
WO (1) WO2006035728A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101828189A (zh) * 2008-07-22 2010-09-08 Lsi公司 用于中断写入恢复的数据存储方法、设备和系统
CN102770846A (zh) * 2010-12-21 2012-11-07 松下电器产业株式会社 虚拟计算机系统及虚拟计算机系统控制方法
CN105453029A (zh) * 2013-08-23 2016-03-30 Arm有限公司 处理用于数据存取的存取属性
WO2017161638A1 (zh) * 2016-03-24 2017-09-28 宇龙计算机通信科技(深圳)有限公司 一种多系统的冻结与唤醒方法及装置

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2075696A3 (en) * 2007-05-10 2010-01-27 Texas Instruments Incorporated Interrupt- related circuits, systems and processes
US8180997B2 (en) * 2007-07-05 2012-05-15 Board Of Regents, University Of Texas System Dynamically composing processor cores to form logical processors
GB2454817B (en) * 2008-01-10 2012-07-04 Ibm Method and device for interrupt handling in a logically partitioned data processing system
JP4877317B2 (ja) * 2008-12-16 2012-02-15 日本電気株式会社 情報処理装置、割り込み制御方法
US8695010B2 (en) 2011-10-03 2014-04-08 International Business Machines Corporation Privilege level aware processor hardware resource management facility
WO2015097839A1 (ja) * 2013-12-27 2015-07-02 株式会社日立製作所 優先度割込み対応リアルタイムハイパバイザ
US11755484B2 (en) 2015-06-26 2023-09-12 Microsoft Technology Licensing, Llc Instruction block allocation
US10191747B2 (en) 2015-06-26 2019-01-29 Microsoft Technology Licensing, Llc Locking operand values for groups of instructions executed atomically
US9952867B2 (en) 2015-06-26 2018-04-24 Microsoft Technology Licensing, Llc Mapping instruction blocks based on block size
US10175988B2 (en) 2015-06-26 2019-01-08 Microsoft Technology Licensing, Llc Explicit instruction scheduler state information for a processor
US10409599B2 (en) 2015-06-26 2019-09-10 Microsoft Technology Licensing, Llc Decoding information about a group of instructions including a size of the group of instructions
US9946548B2 (en) 2015-06-26 2018-04-17 Microsoft Technology Licensing, Llc Age-based management of instruction blocks in a processor instruction window
US10169044B2 (en) 2015-06-26 2019-01-01 Microsoft Technology Licensing, Llc Processing an encoding format field to interpret header information regarding a group of instructions
US10409606B2 (en) 2015-06-26 2019-09-10 Microsoft Technology Licensing, Llc Verifying branch targets
US10346168B2 (en) 2015-06-26 2019-07-09 Microsoft Technology Licensing, Llc Decoupled processor instruction window and operand buffer
US11126433B2 (en) 2015-09-19 2021-09-21 Microsoft Technology Licensing, Llc Block-based processor core composition register
US10768936B2 (en) 2015-09-19 2020-09-08 Microsoft Technology Licensing, Llc Block-based processor including topology and control registers to indicate resource sharing and size of logical processor
US11016770B2 (en) 2015-09-19 2021-05-25 Microsoft Technology Licensing, Llc Distinct system registers for logical processors
US11531552B2 (en) 2017-02-06 2022-12-20 Microsoft Technology Licensing, Llc Executing multiple programs simultaneously on a processor core
US11625267B2 (en) * 2017-08-02 2023-04-11 Felica Networks, Inc. Information processing apparatus and information processing method for changing contents of a process to be performed after an interrupt is detected
JP6814756B2 (ja) * 2018-02-08 2021-01-20 日立オートモティブシステムズ株式会社 ハイパーバイザ、演算装置
CN112286847B (zh) * 2020-11-05 2023-03-10 成都菁蓉联创科技有限公司 一种提升系统外部中断响应速度的方法、装置和控制器
JP7258256B1 (ja) * 2022-07-19 2023-04-14 三菱電機株式会社 プログラマブルロジックコントローラ、シーケンス制御システム、及び活性状態制御プログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4674038A (en) * 1984-12-28 1987-06-16 International Business Machines Corporation Recovery of guest virtual machines after failure of a host real machine
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
JP3138985B2 (ja) * 1989-03-14 2001-02-26 富士通株式会社 仮想計算機
JPH06250850A (ja) * 1993-02-26 1994-09-09 Hitachi Ltd 入出力割込み要因の処理方法
JP3073903B2 (ja) 1995-03-06 2000-08-07 株式会社日立製作所 情報処理装置及びそのi/o割込み制御方法
JP3196004B2 (ja) * 1995-03-23 2001-08-06 株式会社日立製作所 障害回復処理方法
US6633942B1 (en) * 1999-08-12 2003-10-14 Rockwell Automation Technologies, Inc. Distributed real-time operating system providing integrated interrupt management
EP1410170B1 (en) * 2000-12-21 2010-01-20 Microsoft Corporation Logical substitution of processor control in an emulated computing environment
JP2003345612A (ja) * 2002-05-28 2003-12-05 Sony Corp 演算処理システム、コンピュータ・システム上でのタスク制御方法、並びにコンピュータ・プログラム
US7281075B2 (en) 2003-04-24 2007-10-09 International Business Machines Corporation Virtualization of a global interrupt queue
US7788669B2 (en) * 2003-05-02 2010-08-31 Microsoft Corporation System for isolating first computing environment from second execution environment while sharing resources by copying data from first portion to second portion of memory

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101828189A (zh) * 2008-07-22 2010-09-08 Lsi公司 用于中断写入恢复的数据存储方法、设备和系统
CN102770846A (zh) * 2010-12-21 2012-11-07 松下电器产业株式会社 虚拟计算机系统及虚拟计算机系统控制方法
CN102770846B (zh) * 2010-12-21 2016-08-31 松下电器(美国)知识产权公司 虚拟计算机系统控制装置及虚拟计算机系统控制方法
CN105453029A (zh) * 2013-08-23 2016-03-30 Arm有限公司 处理用于数据存取的存取属性
CN105453029B (zh) * 2013-08-23 2018-11-09 Arm 有限公司 处理用于数据存取的存取属性
WO2017161638A1 (zh) * 2016-03-24 2017-09-28 宇龙计算机通信科技(深圳)有限公司 一种多系统的冻结与唤醒方法及装置

Also Published As

Publication number Publication date
US20080046621A1 (en) 2008-02-21
WO2006035728A1 (ja) 2006-04-06
US8584125B2 (en) 2013-11-12
JP4345630B2 (ja) 2009-10-14
CN100549964C (zh) 2009-10-14
JP2006099331A (ja) 2006-04-13

Similar Documents

Publication Publication Date Title
CN1906583A (zh) 信息处理设备、中断处理控制方法、以及计算机程序
CN1147785C (zh) 执行多个指令流的多程序流程同时处理器
CN1760836A (zh) 信息处理系统、信息处理方法和程序
CN1149492C (zh) 遥控方法和服务器
CN100351788C (zh) 嵌入式设备的驱动方法
CN1254746C (zh) 应用执行装置及方法
CN1698034A (zh) 信息处理装置、进程控制方法、以及计算机程序
CN1287282C (zh) 执行实时操作的方法和系统
CN1288556C (zh) 运算处理系统和控制方法,任务管理系统和方法
CN1152305C (zh) 虚拟机系统
CN1284095C (zh) 多处理器系统中的任务分配方法和多处理器系统
CN1227589C (zh) 用于保存返回状态的数据处理设备和方法
CN1993674A (zh) 多芯架构中的资源管理
CN1162777C (zh) 中断管理装置和中断管理方法
CN101069161A (zh) 调度方法、调度装置和多处理器系统
CN1881183A (zh) 信息处理装置、进程控制方法及其计算机程序
CN1601474A (zh) 执行实时操作的方法和系统
CN1734438A (zh) 信息处理设备、信息处理方法和程序
CN1264078A (zh) 执行多个操作系统的计算机
CN1906584A (zh) 信息处理装置、处理控制方法和计算机程序
CN1791862A (zh) 操作系统
CN1233016A (zh) 具有事件相关矢量选择的历境控制器和采用其的处理器
CN101078999A (zh) 一种实现数据备份和恢复的方法及系统
CN1908904A (zh) 实时内部简易监视器
CN1906598A (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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20091014

Termination date: 20150926

EXPY Termination of patent right or utility model