中断控制装置及控制方法.pdf

上传人:000****221 文档编号:504540 上传时间:2018-02-19 格式:PDF 页数:30 大小:1.15MB
返回 下载 相关 举报
摘要
申请专利号:

CN200410104699.2

申请日:

2004.12.27

公开号:

CN1637712A

公开日:

2005.07.13

当前法律状态:

授权

有效性:

有权

法律详情:

专利权的转移IPC(主分类):G06F 9/48登记生效日:20151118变更事项:专利权人变更前权利人:松下电器产业株式会社变更后权利人:株式会社索思未来变更事项:地址变更前权利人:日本大阪府变更后权利人:日本神奈川县|||授权|||实质审查的生效|||公开

IPC分类号:

G06F9/48

主分类号:

G06F9/48

申请人:

松下电器产业株式会社;

发明人:

喜多村启; 浅井登; 安武刚一

地址:

日本大阪府

优先权:

2003.12.25 JP 431252/2003

专利代理机构:

永新专利商标代理有限公司

代理人:

胡建新

PDF下载: PDF下载
内容摘要

本发明的中断控制装置具备中断向量寄存器,用来分别保持地址信息,该地址信息对应于中断资源之中OS所管理的第1类中断资源及OS不管理的第2类中断资源,对于OS管理的第1类中断资源所发生的中断,根据中断向量寄存器的地址信息启动共用中断入口函数,该共用中断函数对第1类中断资源共用并且作为调度处理的对象,对于用户管理的第2类中断资源所发生的中断,根据中断向量寄存器的地址信息启动扩展中断入口函数,该扩展中断入口函数不是上述调度处理的对象。

权利要求书

1: 一种中断控制装置,用来对来自发生中断的中断资源的中断进 行控制,来作为控制计算机系统的OS一部分,其特征为, 具备: 表格机构,用来保持地址信息,该地址信息分别对应于中断资源 之中OS所管理的第1类中断资源以及OS不管理的第2类中断资源; 启动机构,对于第1类中断资源所发生的中断,根据表格机构的 地址信息启动第1控制处理,该第1控制处理包含与第1类中断资源 共用的管理处理,而对于第2类中断资源所发生的中断,根据表格机 构的地址信息启动第2控制处理,该第2控制处理不包含上述管理处 理。
2: 根据权利要求1所述的中断控制装置,其特征为: 上述启动机构在上述第2控制处理中,依次执行上下文(context) 的保存、与发生了中断的第2类中断资源对应的中断处理、以及所保 存的上下文的恢复。
3: 根据权利要求1所述的中断控制装置,其特征为: 上述中断控制装置还具有受理机构,用来从应用程序受理表示特 定的中断资源和地址信息的通知, 上述表格机构按照由受理机构所受理的通知,来保持与第2类中 断资源对应的地址信息。
4: 根据权利要求3所述的中断控制装置,其特征为: 上述启动机构在上述第2控制处理中,依次执行上下文的保存、 与发生了中断的第2类中断资源对应的中断处理以及所保存上下文 的恢复。
5: 根据权利要求4所述的中断控制装置,其特征为: 上述启动机构在上述第2控制处理中,在开始上述上下文保存之 前禁止其他的中断输入,在上述第2控制处理完成前解除上述中断输 入的禁止。
6: 根据权利要求4所述的中断控制装置,其特征为, 上述中断控制装置还具备: 转换缓冲器,用来对虚拟存储用的页表之中与执行中的进程对应 的页数据进行缓存; 更新机构,用来在上述第2控制处理中更新上述转换缓冲器,以 便在上述中断处理执行前保持与该中断处理对应的页数据。
7: 根据权利要求6所述的中断控制装置,其特征为: 上述受理机构还从应用程序受理下述通知,该通知表示与第2类 中断资源对应的中断处理的进程ID, 上述更新机构根据由受理机构所受理的通知中所示的进程ID, 从上述页表读出上述页数据,将其存储到上述转换缓冲器中。
8: 根据权利要求1所述的中断控制装置,其特征为: 上述表格机构还为每个中断资源保持中断等级和表示是上述第1 类还是第2类的分类, 上述启动机构根据所发生中断的中断等级和表格机构中所保持 的分类,来判别是第1类和第2类的哪一类。
9: 根据权利要求8所述的中断控制装置,其特征为: 上述中断控制装置还具有受理机构,用来从应用程序受理表示特 定的中断资源和地址信息的通知, 上述表格机构按照由受理机构所受理的通知,来保持与第2类中 断资源对应的地址信息。
10: 根据权利要求9所述的中断控制装置,其特征为: 上述启动机构在上述第2控制处理中,依次执行上下文的保存、 与发生了中断的第2类中断资源对应的中断处理以及所保存上下文 的恢复。
11: 根据权利要求10所述的中断控制装置,其特征为: 上述启动机构在上述第2控制处理中,在开始上述上下文保存之 前禁止其他的中断输入,在上述第2控制处理完成前解除上述中断输 入的禁止。
12: 根据权利要求10所述的中断控制装置,其特征为: 上述中断控制装置还具备: 转换缓冲器,用来对虚拟存储用的页表之中与执行中的进程对应 的页数据进行缓存; 更新机构,用来在上述第2控制处理中更新上述转换缓冲器,以 便在上述中断处理执行前保持与该中断处理对应的页数据。
13: 根据权利要求12所述的中断控制装置,其特征为: 上述受理机构还从应用程序受理下述通知,该通知表示与第2类 中断资源对应的中断处理的进程ID, 上述更新机构根据由受理机构所受理的通知中所示的进程ID, 从上述页表读出上述页数据,将其存储到上述转换缓冲器中。
14: 根据权利要求1到6的任一项所述的中断控制装置,其特征 为: 上述启动机构对所发生中断的中断等级和指定等级的优先顺序 进行比较,来判别是上述第1类和第2类的哪一类。
15: 根据权利要求14所述的中断控制装置,其特征为: 上述中断控制装置还具有受理机构,用来从应用程序受理表示特 定的中断资源和地址信息的通知, 上述表格机构按照由受理机构所受理的通知,来保持与第2类中 断资源对应的地址信息。
16: 根据权利要求14所述的中断控制装置,其特征为: 上述启动机构在上述第2控制处理中,依次执行上下文的保存、 与发生了中断的第2类中断资源对应的中断处理以及所保存上下文 的恢复。
17: 根据权利要求16所述的中断控制装置,其特征为: 上述启动机构在上述第2控制处理中,在开始上述上下文保存之 前禁止其他的中断输入,在上述第2控制处理完成前解除上述中断输 入的禁止。
18: 根据权利要求16所述的中断控制装置,其特征为, 上述中断控制机构,还具备: 转换缓冲器,用来对虚拟存储用的页表之中与执行中的进程对应 的页数据进行缓存; 更新机构,用来在上述第2控制处理中更新上述转换缓冲器,以 便在上述中断处理执行前保持与该中断处理对应的页数据。
19: 根据权利要求18所述的中断控制装置,其特征为: 上述受理机构还从应用程序受理下述通知,该通知表示与第2类 中断资源对应的中断处理的进程ID, 上述更新机构根据由受理机构所受理的通知中所示的进程ID, 从上述页表读出上述页数据,将其存储到上述转换缓冲器中。
20: 一种中断控制方法,用来对来自发生中断的中断资源的中断 进行控制,作为控制计算机系统的OS一部分,其特征为, 具有: 受理步骤,用来从应用程序受理表示特定的中断资源和地址信息 的通知; 追加步骤,在对中断资源中与OS所管理的第1类中断资源对应 的地址信息进行保持的管理表中,根据受理机构受理的通知来追加与 OS不管理的第2类中断资源对应的地址信息; 启动步骤,用来对于第1类中断资源所发生的中断,根据表格机 构的地址信息启动第1控制处理,该第1控制处理包含对第1类中断 资源共用的管理处理,对于第2类中断资源所发生的中断,根据表格 机构的地址信息启动第2控制处理,该第2控制处理不包含上述管理 处理。
21: 一种程序,用来对来自发生中断的中断资源的中断进行控制, 作为控制计算机系统的OS一部分,其特征为, 上述程序使计算机执行: 受理步骤,用来从应用程序受理表示特定的中断资源和地址信息 的通知; 追加步骤,在对中断资源中与OS所管理的第1类中断资源对应 的地址信息进行保持的管理表中,根据由受理机构所受理的通知来追 加与OS不管理的第2类中断资源对应的地址信息; 启动步骤,用来对于第1类中断资源所发生的中断,根据表格机 构的地址信息启动第1控制处理,该第1控制处理包含对第1类中断 资源共用的管理处理,对于第2类中断资源所发生的中断,根据表格 机构的地址信息启动第2控制处理,该第2控制处理不包含上述管理 处理。

说明书


中断控制装置及控制方法

    【技术领域】

    本发明涉及作为控制计算机系统的OS(操作系统)的一部分、对来自发生中断的中断资源的中断进行控制的中断控制装置。

    背景技术

    一般情况下,计算机系统中的中断控制是通过在OS中对来自各中断资源的中断进行一维管理来处理的。

    图1表示的是,在以往的计算机系统中发生中断时从OS的核心空间向用户进程空间的转移关系。如该图所示,在核心空间602内,从用来受理中断的中断处理部开始,在利用调度程序进行中断调度处理之后,转移到进程空间601内地用户进程。

    图2表示的是,在以往计算机系统中中断控制装置的结构。在该该图中,分层次表示:作为发生中断的中断资源的外围设备、中断控制器、CPU、OS及应用进程。图3是着眼于各结构要件的寄存器结构来表示图2中的处理流程的动作说明图。采用图3,更具体地说明图2中的动作。

    中断控制器(INTC)502用来检测来自各种外围设备(I/O装置)501a、501b等的中断发生,设置与该中断原因对应的原因编号寄存器502a的原因编号标识。如果该中断原因未通过软件的设定而被屏蔽,则中断控制器502向CPU503通知中断发生。

    CPU503具有与中断等级相应的中断向量寄存器503a,在受理了来自中断控制器502的中断通知之后,从分配该中断原因的中断向量寄存器读出中断向量,执行OS所管理的中断入口函数505。通过执行该中断入口函数505,转移到中断原因的判别和用户的中断处理程序。此时,调度程序506在与其他中断和其他进程之间进行调度调整,在调整后启动与中断原因对应的中断处理程序507a或507b等,进行与中断请求对应的处理(或者将对应的处理调出)。

    一般情况下,通过上面的动作,以往的中断控制装置进行一系列的中断控制。

    可是,通常的OS未假设出只将特定的中断资源作为OS的管理范围之外的情形,而这样一来则需要特别的机构。作为所需的特别机构,在特开2001-216172号公报(下面,称为文献1)中公示出,利用多个OS和从OS独立出的中断管理程序的实现方法。

    根据文献1,公示出从OS独立出的中断管理程序是利用下述两种方法的中断控制方法,该方法一种是抢占一个OS所管理的中断资源而将其分配给另一个OS的方法,另一种是根据OS的执行状态对启动各个中断处理程序的时间进行决定的方法。根据这种中断控制方法,可以将所发生的外部中断通过中断管理程序暂时处理后,向多个OS分配中断处理,并由分配目的地的OS执行中断处理。另外,中断处理在多个OS间进行了复用的情况下,由于采用中断管理程序来管理中断状态,因而也能够实现排他控制。

    但是,根据以往的中断控制装置,存在下述问题,即在只将特定的中断资源作为OS的管理范围之外时,不能保证从发生中断到执行与中断对应的应用程序的响应性也就是实时性。

    具体而言,在将操作系统(OS)上特定的中断资源由其他程序进行分离并独立管理的情况下,存储下面的问题。

    (1)在文献1中,中断管理程序为了协调中断处理的OS间的多路复用,必须通过上述中断管理程序来管理中断状态。例如,图3所示的调度程序506在文献1中,对应于进行更复杂调度调整的中断管理程序。由于新安装该中断管理程序来执行处理,因而除以往OS中所安装的中断入口函数之外,还增加中断状态的管理处理,使实时性变差。

    (2)与文献1无关,以往并不存在以下述结构:将与特定的中断原因对应的用户中断处理函数,配置到用户进程空间而不是OS的地址空间(核心空间),并在不妨碍中断响应性的状况下转移到所配置的中断处理函数。在从图1所示的核心空间602向进程空间601转移的过程中,调度程序的响应性依赖于OS的性能。对于通用的OS来说,其课题为没有在发生中断后向应用程序进行转移的时间保证,也就是说没有实时保证。

    (3)在文献1中其构成为,为了将CPU的中断资源通过多个OS进行分开管理,至少需要2个以上的OS,并且未假设出在1个OS和该OS上进行动作的应用程序间进行中断资源分开的情形。

    【发明内容】

    鉴于上述课题,本发明的目的为,提供一种中断控制装置、其控制方法及程序,用来在广泛应用的OS中对于来自特定中断资源的中断保证实时性。特别是,本发明的目的为,提供一种在广泛应用的OS上保证实现内部设备所广泛需要的实时性的中断控制装置、其控制方法及程序。

    为解决上述课题,本发明的中断控制装置,对来自发生中断的中断资源的中断进行控制,作为控制计算机系统的OS,具备:表格机构,用来保持地址信息,该地址信息分别对应于中断资源中OS所管理的第1类中断资源以及OS不管理的第2类中断资源;启动机构,对于第1类中断资源所发生的中断,根据表格机构的地址信息启动第1控制处理,该第1控制处理包含对第1类中断资源共用的管理处理,对于第2类中断资源所发生的中断,根据表格机构的地址信息启动第2控制处理,该第2控制处理不包含上述管理处理。

    根据这种结构,可以对于第1类中断资源,启动实时性较差而通用性性较高的中断处理,对于第2类中断资源,启动对中断快速响应且实时性方面优良的中断处理。

    在此,上述中断控制装置还可以具有受理机构,用来从应用程序受理表示特定的中断资源和地址信息的通知,上述表格机构按照由受理机构所受理的通知,来保持与第2类中断资源对应的地址信息。

    根据这种结构,应用程序可以将需要实时性的任意中断资源,从第1类自由地设定变更成第2类。

    在此,上述启动机构也可以在上述第2控制处理中,依次执行上下文的保存、与发生了中断的第2类中断资源对应的中断处理以及所保存上下文的恢复。

    在此,上述启动机构也可以在上述第2控制处理中,在开始上述上下文保存之前禁止其他的中断输入,并在上述第2控制处理完成前解除上述中断输入的禁止。

    根据这种结构,由于在与第2类中断资源对应的中断处理过程中,在需要实时性的处理完成前禁止其他的中断输入,因而可以更可靠地确保实时性。

    在此,上述中断控制装置还可以具备:转换缓冲器,用来对虚拟存储用的页表之中与执行中的进程对应的页数据进行缓存;更新机构,用于上述启动机构在上述第2控制处理中更新上述转换缓冲器,以便在执行上述中断处理前保持与该中断处理对应的页数据。

    在此,上述受理机构还可以从应用程序受理下述通知,该通知表示与第2类中断资源对应的中断处理的进程ID,上述更新机构根据由受理机构所受理的通知示出的进程ID,从上述页表读出上述页数据将其存储到上述转换缓冲器中。

    根据这种结构,由于对虚拟存储用的被称为所谓TLB(TranslationLook aside Buffer)的转换缓冲器进行更新,因而可以容易地将中断处理配置到进程空间。

    在此,上述表格机构还可以为每个中断资源保持中断等级和表示是上述第1类还是第2类的分类,上述启动机构根据所发生中断的中断等级和表格机构中所保持的分类,来判别是第1类和第2类的哪一类。

    在此,上述启动机构也可以比较所发生中断的中断等级和指定等级的优先顺序,判别是上述第1类和第2类的哪一类。

    根据这种结构,可以将任意的中断等级从第1类变更成第2类,或者将比指定级更低的(或高的)中断等级的中断资源设定为第2类。

    如同上面所说明的那样,根据本发明的中断控制装置,可以同时存在实时性较差而通用较高的中断处理、以及对中断快速响应且实时性方面优良的中断处理。另外,由于在应用程序所指定的任意中断等级中,不经第2类OS的管理处理就启动用户独享的中断处理,因而能够实现其控制方法。

    另外,对于应用程序所管理的第2类中断资源以及由OS所管理的第1类中断资源之间的中断处理的排他控制,因为不需要另外设置协调机构,也不发生因协调机构本身而引起的处理延迟,所以可以在不妨碍响应性的状况下,实现排他控制。

    再者,还能够将应用程序所管理的中断处理函数安装到与核心空间不同的应用程序的用户进程空间。向与第2类中断资源对应的中断处理也就是中断处理函数(用户进程空间)的转移,可以保证实时性。

    另外,对于本发明的中断控制方法及程序,也具有与上述相同的方法、作用及效果。

    【附图说明】

    图1表示的是从以往OS的核心空间向用户进程空间的中断控制转移关系。

    图2表示的是以往计算机系统中中断控制装置的结构。

    图3是着重于各结构要件的寄存器结构来表示图2中的处理流程的动作说明图。

    图4是表示实施方式1中中断控制装置结构的框图。

    图5是着重于寄存器结构来表示处理流程的动作说明图。

    图6是表示对扩展中断入口函数进行注册的处理的流程图。

    图7是表示中断控制处理的流程图。

    图8是表示其他中断控制处理的流程图。

    图9表示的是对每个中断等级使第1类和第2类的任一个相对应的管理表格示例。

    图10是表示实施方式2中中断控制装置结构的框图。

    图11是表示对扩展中断入口函数进行注册的处理的流程图。

    图12是表示中断控制处理的流程图。

    【具体实施方式】

    (实施方式1)

    下面,参照附图说明本发明中断控制方式的实施方式。

    <中断控制装置的结构>

    图4是表示本发明实施方式1中中断控制装置系统结构的框图。在该图中,分层表示出应用程序、OS、CPU、中断控制器及外部设备。与图2所示的以往系统结构不同之处是,具备:用户管理中断号通知部112,用于应用程序从本进程对OS通知用户想要管理的中断等级,也就是作为OS管理范围之外的中断等级;扩展中断入口函数通知部113,用来通知应用程序所准备的称为扩展中断入口函数108的函数地址;中断向量更新部110,用来在OS内获取上述应用程序所准备的扩展中断入口函数的地址通知。扩展中断入口函数108及用户处理程序109并不是作为OS的一部分,而是作为应用程序来准备的。

    对于图4所示的中断控制装置,采用着重于各结构要件的寄存器结构来表示处理流程的图5,更具体地加以说明。

    中断控制器102用来检测来自各种外围设备(I/O装置)101a、101b等的中断发生,设置与该中断原因对应的原因编号寄存器102a中的原因编号标识。如果该中断原因未通过软件的设定被屏蔽,则中断控制器102向CPU103通知中断发生。

    CPU103具有与中断等级相对应的中断向量寄存器103a。中断向量寄存器103a具备中断等级寄存器,用来按优先级较高的顺序保持与从等级0到等级n的中断等级对应的地址。

    在图5的示例中,在中断向量寄存器103a中从等级0到等级m的中断等级寄存器用于第1类中断,各自保持着共用中断入口函数105的起始地址。另外,从等级m+1到等级n的中断等级寄存器用于第2类中断,各自保持着扩展中断入口函数108的起始地址。在此,所谓第1类中断,是指与以往技术相同通过OS经由共用的管理处理(主要是调度程序106的调度处理)来启动中断处理(用户的中断处理程序107a、107b等)的通用性优良的中断。所谓第2类中断是应用程序所管理的中断,并且是指不经由上述管理处理地启动中断处理(用户的中断处理程序109a、109b等)的能保证实时性的中断。

    在受理了来自中断控制器102的中断通知之后,根据指定给该中断原因的中断向量寄存器的地址,调出共用中断入口函数105及扩展中断入口函数108的任一个。在该图的示例中,第1类中断时,调出共用中断入口函数105,第2类中断时,调出扩展中断入口函数108。

    通过执行共用中断入口函数105,来进行中断原因的判别以及向用户的中断处理程序107a和107b的转移。此时,调度程序106进行和其他中断之间的多路复用协调以及和其他处理之间的调度调整,并在调整后启动与中断原因对应的中断处理程序107a或107b等。通过调出中断处理程序107a和107b,来执行(或者调出)与中断请求对应的中断处理。

    另一方面,通过执行扩展中断入口函数105,来进行中断原因的判别以及向用户的中断处理程序107a和107b的转移。此时,由于不经由调度程序106的调整,因而能够在不延迟的状况下启动与中断原因对应的中断处理程序109a和109b。通过调出中断处理程序109a和109b,来执行(或者调出)与中断请求对应的中断处理。

    <来自应用程序的注册处理>

    图6是表示将由用户应用程序所准备的中断处理程序(也就是扩展中断入口函数108)的地址向CPU内的中断向量寄存器进行注册的处理的流程图。该图的过程是在将需要实时性的任意中断原因设定为第2类中断的情况下执行的,例如在启动应用程序时的最初时进行。

    首先,执行中的应用程序(下面,只称为应用程序)从OS所管理的中断资源之中选择需要实时性的任意中断资源的资源编号(S301)。在图5的示例中,作为中断资源,选择中断原因(外围设备的名称或号码)及中断等级。这种情况下,如果中断原因和中断等级以1对1或多对1的方式相对应,则应选择的资源编号只是中断等级就可以。应用程序再将所选择出的中断资源编号通知给OS(S302)。接着,将用于在与上述所选择出的中断等级对应的中断向量表中存储地址的、扩展中断入口函数的名称(或起始地址),通知给OS(S303)。

    收到该通知后,OS中的中断向量更新部110判定与所通知的资源编号对应的向量寄存器是否在向量表中(S304)。判定为在表格中时,进而应用程序将扩展中断入口函数的起始地址(也可以是本进程内的任意地址)通知给OS(S305)。OS中的中断向量更新部110将所通知的地址存储到向量表内的向量寄存器中(S306),结束本处理。在上述步骤S304中,如果与从应用程序所通知的资源编号对应的向量寄存器不在向量表中,则进行错误处理(S307)并结束本处理。

    借此,对于应用程序所任意选择出的中断资源,能够将扩展中断入口函数的地址存储到向量表中。

    <中断控制处理>

    图7是表示图6中的注册处理后实际发生中断时的中断控制处理的流程图。

    在从外围I/O等的中断资源发生中断的情况下,管理该中断的中断控制器102将该中断原因的中断发生通知给CPU(S401)。CPU向指定给该中断原因的中断向量寄存器进行转移(S402)。选择与所通知的中断原因相对应、CPU内的中断向量寄存器(S403)。

    在转移目的地的中断向量寄存器是上述图6中所注册的扩展中断入口函数108的地址的情况下,执行该扩展中断入口函数108(S405)。如果是此外的中断向量寄存器,则执行现有的OS的共用中断入口函数105(S404)。

    其结果,如图5所示,由于在中断向量寄存器内所存储的中断入口函数的地址不只是由现存的OS来管理的共用中断入口函数105的地址,还存在由应用程序准备的扩展中断入口函数108的地址,因而应用程序能够单独进行实时性良好的中断处理。在图5的示例中,中断等级比等级m更大时,作为第2类中断启动扩展中断入口函数108。

    如上所述,中断控制装置对于第2类中断,在任意的中断等级中不经OS内部的管理处理,而可以以良好的响应性启动用户函数独享的中断处理。

    还有,也可以取代图7所示的中断控制,而执行图8所示的中断控制处理。图8与图7相比不同之处为,取代步骤S405而执行步骤S504~S508。因为图8的步骤S501~S503、S509分别与图7的步骤S401~S404相同,所以省略其说明,并且以不同之处为重点进行说明。

    S504~S508的处理表示利用由第2类中断调出的扩展中断入口函数的中断处理,或者通过扩展中断入口函数调出的中断处理。

    首先,通过启动扩展中断入口函数,先禁止其他中断处理的输入(S504)。这种禁止可以是通过对中断控制器102的屏蔽寄存器设定进行变更,而对可屏蔽中断的全部或一部分进行禁止。接着,对当前执行中的进程上下文(CPU各种控制寄存器的数据等)进行保存(S505),选择执行与发生了中断的资源对应的用户中断处理程序109a等(S506),在用户的中断处理程序结束后恢复所保存的上下文(S507),将中断输入的禁止予以解除(S508)。

    根据该中断控制处理,由于禁止其他的中断输入,因而能够更可靠地执行中断处理。其结果,可以更可靠地保证实时性。还有,中断禁止及其解除也可以根据在中断处理过程中所需的实时性而进行。例如,也可以在通过S504加以禁止之后,在实时处理完成之时予以解除。

    这样,可以实现应用程序所管理的第2类中断和由OS所管理的第1类中断的排他控制。在图5的示例中,第1类中断和第2类中断之间的多路复用协调本身,因为按照中断等级分开第1类和第2类,所以不经OS而由CPU来实现。因此,无需另外设置对第1类中断和第2类中断进行协调的机构,而在向第2类的中断处理转移中,也不发生处理延迟。

    另外,在图5中表示了根据所发生的中断比等级m靠上还是在其以下来区分是第1类还是第2类的示例,但是也可以将中断等级单独设定为第1类还是第2类。图9表示,此时为每个中断等级使之与第1类或第2类的任一个任意相对应的管理表格一个示例。

    另外,在图9及图5中,也可以没有图6所示的注册步骤,而预先注册各自的中断入口函数。

    (实施方式2)

    图10是表示本发明实施方式2中的中断控制装置系统结构的框图。该图与图4的系统结构相比主要不同之处在于,具备:进程ID通知部114,用于应用程序对OS通知本进程的ID;TLB更新部117,用来根据OS内从上述应用程序所通知的进程ID对CPU的TLB进行更新。另外,在该图中表明,在CPU内具备:页表115,是虚拟存储用的虚拟地址和实际地址之间的对应表;TLB116,用于根据页表115对与执行中的进程对应的页数据进行暂时缓存。

    在图10的中断控制装置中,采用图11所示的流程图来说明应用程序对中断入口函数进行注册的处理。在图11的流程图中表示出,将图6所示的由用户准备的中断处理程序(扩展中断入口函数)向CPU内的中断向量寄存器进行注册的步骤以及进程ID的通知步骤。因为与图6相同号的步骤是相同的处理内容,所以省略其说明,并且以不同的步骤为重点进行说明。

    应用程序在与所通知的资源编号对应的向量寄存器处于向量表格中的情况(S304)下,通过API(Application Program Interface)从OS取得本进程的进程ID(S801),并将所取得的进程ID通知给OS(S802)。收到该通知后的OS在TLB更新部117内存储所通知的进程ID和中断等级。

    借此,完成从应用程序向OS的进程ID的通知以及OS内TLB更新部117中的进程ID的存储。

    接着,图12是表示在图11中的注册处理后实际发生了中断时的中断控制处理的流程图。图12与图8所示的中断控制处理相比不同之处在于,在步骤S505和S506之间追加了步骤S901。因为与图8相同号的步骤是相同的处理内容,所以省略其说明,并且以不同之处为重点进行说明。

    在执行扩展中断入口函数的过程中,在保存上下文(S505)之后,给TLB更新部117发出TLB的更新指令,收到该指令后的TLB更新部117将所通知的进程ID的页数据从页表读出,将其存储到TLB116中(S901)。这样,由于根据进程ID来更新TLB116,因而可以参照用户进程空间地址。

    根据上面,可以将与应用程序所管理的第2类中断对应的中断处理函数,安装到作为与核心空间不同空间的应用程序的用户进程空间。

    另外,由于在发生中断后,从扩展中断入口处理(核心空间)向应用程序所管理的中断处理函数(用户进程空间)进行转移,但不通过核心内的调度程序106,因而没有妨碍中断响应性的状况。

    还有,本发明并不限定为上述的各实施示例,而可以在不脱离其宗旨的范围内进行各种变形并实施。

    本发明适合于作为控制计算机系统的OS一部分对来自将发生中断的中断资源之中断进行控制的中断控制装置,特别适合于将计算机系统上的中断资源、由OS和应用程序分别管理各自中断的中断控制装置、中断控制方法及程序。

    以上用实施例结合附图充分地说明了本发明,但需要注意的是本领域的技术人员可以进行各种改变和变更。因此,除非该改变和变更超出了本发明的范围,否则它们应可以被本发明所解释。

中断控制装置及控制方法.pdf_第1页
第1页 / 共30页
中断控制装置及控制方法.pdf_第2页
第2页 / 共30页
中断控制装置及控制方法.pdf_第3页
第3页 / 共30页
点击查看更多>>
资源描述

《中断控制装置及控制方法.pdf》由会员分享,可在线阅读,更多相关《中断控制装置及控制方法.pdf(30页珍藏版)》请在专利查询网上搜索。

本发明的中断控制装置具备中断向量寄存器,用来分别保持地址信息,该地址信息对应于中断资源之中OS所管理的第1类中断资源及OS不管理的第2类中断资源,对于OS管理的第1类中断资源所发生的中断,根据中断向量寄存器的地址信息启动共用中断入口函数,该共用中断函数对第1类中断资源共用并且作为调度处理的对象,对于用户管理的第2类中断资源所发生的中断,根据中断向量寄存器的地址信息启动扩展中断入口函数,该扩展中断入。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1