发明名称 用以在多处理机环境中为正确处理机模拟输入输出指令及服务软体系统管理中断之装置与方法
摘要 一种可用以在一多处理机环境中控制I/O之方法,其包含之步骤有:决定一正请求一中断之I/O指令,是否正受到上述多处理机环境内之一处理机的处理,以及可在该处理机与一I/O装置间,传送资料或一命令;此一I/O指令被侦测到,便执行一指令;决定上述多处理机环境内之何者处理机,正在执行一I/O指令;若仅有一处理机正在执行一I/O指令,便设定一Last Processor指示值,以指明该处理机为上述执行该I/O指令之处理机;以及向应该I/O指令,在上述Last Processor指示值所指明之处理机,与该I/O装置间,传送资料或一命令。在本发明之另一特征中,所提供之一方法,可用以服务一多处理机环境内之一I/O指令所起始之一软体系统管理中断(SMI),其所包含之步骤有:侦测一软体SMI之发生;决定该多处理机环境内之何者处理机,具有一用以指示上述软体SMI所起始之处理机的保存状态资讯;以及在一SMI处理常式,与上述被决定具有该软体SMI之处理机间传送资讯。
申请公布号 TW470885 申请公布日期 2002.01.01
申请号 TW088116939 申请日期 2000.04.08
申请人 凤凰科技有限公司 发明人 安东尼P.卡沙诺;大卫S.艾瑞曲
分类号 G06F13/10;G06F15/16 主分类号 G06F13/10
代理机构 代理人 恽轶群 台北巿南京东路三段二四八号七楼;陈文郎 台北巿南京东路三段二四八号七楼
主权项 1.一种多处理机系统,其包含: 至少一第一和第二处理机,彼等各可用以执行一I/O 指令,以便在该处理机与一I/O装置间,传送资料或 一命令; I/O和陷址中断(trap)硬体,其可用以在接收到一来自 一处理机之选定I/O指令的当儿,执行多数处理机上 面之一中断,以及可在该I/O装置与上述之一处理机 间,传送资料或一命令; 一可用以决定何者处理机正在执行一I/O指令之第 一装置; 一在运作上可于仅有一处理机,正在执行一I/O指令 时,用以设定一LastProcessor指示値,以指明该处理机 成为上述执行一I/O指令之处理机的第二装置;和 一可用以响应上述选定之I/O指令,在上述 LastProcessor指示値所指明之处理机与该I/O装置间, 传送资料或一命令之第三装置。2.如申请专利范 围第1项所申请之多处理机系统,其中之I/O和陷址 中断硬体系一模拟区块,其可用以将彼等来自一输 入装置或处理机之资料或命令,转译成一能与另一 输入装置或处理机相容之不同格式。3.如申请专 利范围第1项所申请之多处理机系统,其中的以决 定何者处理机正在执行一I/O指令之第一装置,系一 第一电子电路,其可用以就每一多数处理机,指明 上述处理机刚执行过之一I/O指令有关之指令位址, 与上述处理机有关之当前位址间的指令位址计数 差,是否小于或等于一预定数目,以及可使用此指 标,来决定何者处理机正在执行一I/O指令。4.如申 请专利范围第3项所申请之多处理机系统,其中之 第一电子电路,系一逻辑电路,其可用以决定何时 一特定处理机有关之指令位址计数差系等于1,以 及可清除上述身为一正在执行一I/O指令之处理机 之特定处理机的指标,除非该特定处理机有关之最 后I/O指令,系直接或间接指明上述I/O装置有关之一 埠。5.如申请专利范围第3项所申请之多处理机系 统,其中之预定数目为2。6.如申请专利范围第1项 所申请之多处理机系统,其中,每一第一和第二处 理机,系包含一第一逻辑电路,其可在正执行一I/O 指令时,设定一第一指示値,以及 其中之第一装置,系包含一第二逻辑电路,可用以 决定何者处理机具有被等被设定之第一指示値。7 .一种可用以在一多处理机环境中控制I/O之方法, 其包含之步骤有: 决定一正请求一中断之I/O指令,是否正受到上述多 处理机环境内之一处理机的处理,以便可在该处理 机与一I/O装置间,传送资料或一命令; 若此一I/O指令被侦测到,便执行一中断; 决定上述多处理机环境内之何者处理机,正在执行 一I/O指令; 若仅有一处理机正在执行一I/O指令,便设定一 LastProcessor指示値,以指明该处理机为上述执行该I/ O指令之处理机;以及 响应该I/O指令,在上述LastProcessor指示値所指明之 处理机与该I/O装置间,传送资料或一命令。8.如申 请专利范围第7项所申请之方法,其中之中断执行 步骤系一步骤,其可将上述要传送之资料或命令, 转译成一能与一要接收该资料或命令之装置相容 之不同格式。9.如申请专利范围第7项所申请之方 法,其中决定何者处理机正在执行一I/O指令之步骤 系一步骤,其可就每一多数处理机,指明上述处理 机刚执行过之一I/O指令有关之指令位址,与上述处 理机有关之当前位址间的指令位址计数差,是否小 于或等于一预定数目,以及可使用此资讯,来决定 何者处理机正在执行一I/O指令。10.如申请专利范 围第9项所申请之方法,其中尚包含之步骤有:当一 特定处理机有关之指令位址计数差等于1时,清除 上述身为一正在执行一I/O指令之处理机之特定处 理机的指标,除非该特定处理机有关之最后I/O指令 ,系直接或间接指明上述I/O装置有关之一埠。11.一 种电脑程式产品,其包含: 一其中具现有电脑可读取式程式码具之电脑可用 媒体,其可在一I/O陷址中断期间,在一多处理机环 境内之一适当处理机与一I/O装置间,提供彼等之I/O 功能,上述电脑程式产品内之电脑可读取式程式码 具,系包含: 一第一电脑可读取式程式码具,其可用以使硬体决 定,该多处理机环境内之何者处理机,正在执行一I/ O指令; 一第二电脑可读取式程式码具,其可用以使硬体决 定,若该多处理机环境内,仅有一处理机正在执行 一I/O指令,以及在此一情况下,其可设定一 LastProcessor指示値,以指明该处理机为上述执行一I/ O指令之处理机;和 一第三电脑可读取式程式码具,其可用以使硬体在 上述LastProcessor指示値所指明之处理机与该I/O装置 间,传送资料或一命令。12.如申请专利范围第11项 所申请之电脑程式产品,其中之第一电脑可读取式 程式码具,系包含一第四电脑可读取式程式码具, 其可用以就每一多数处理机,决定上述处理机刚执 行过之一I/O指令有关之指令位址,与上述处理机有 关之当前位址间的指令位址计数差,是否小于或等 于一预定数目,以及可使用该资讯,来决定何者处 理机正在执行一I/O指令。13.如申请专利范围第11 项所申请之电脑程式产品,其中之第一电脑可读取 式程式码具,系包含一第五电脑可读取式程式码具 ,其可用以决定何时一特定处理机有关之指令位址 计数差系等于1,以及可清除上述身为一正在执行 一I/O指令之处理机之特定处理机的指标,除非该特 定处理机有关之最后I/O指令,系直接或间接指明上 述I/O装置有关之一埠。14.如申请专利范围第11项 所申请之电脑程式产品,其中之预定数目为2。15. 一种多处理机系统,其包含: 至少一第一和第二处理机,彼等各可用以执行一I/O 指令,以便在该处理机与一I/O装置间,传送资料或 一命令; 一I/O和陷址中断硬体,其可用以在接收到一来自一 处理机之选定I/O指令的当儿,执行多数处理机上面 之一中断,以及可在该I/O装置与上述之一处理机间 ,传送资料或一命令;和 一第一装置,其可用以就每一多数处理机,提供一 指标,以指明上述处理机刚执行过之一I/O指令有关 之指令位址,与上述处理机有关之当前位址间的指 令位址计数差,是否小于或等于一预定数目,以及 可响应上述选定之I/O指令,使用该资讯来决定,何 者处理机要连接至该I/O装置,以便在该I/O装置与该 处理机间,传送资料或一命令,而完成其连接之动 作。16.如申请专利范围第15项所申请之多处理机 系统,其中尚包含一逻辑电路,其可用以在一特定 处理机有关之指令位址计数差等于1时,清除一具 有一小于或等于上述预定数目之指令计数差之处 理机的指标,除非该特定处理机有关之最后I/O指令 ,系直接或间接指明上述特定I/O装置有关之一埠。 17.一种可用以在一多处理机环境中控制I/O之方法, 其包含之步骤有: 决定一正请求一中断之I/O指令,是否正受到上述多 处理机环境内之一处理机的处理,以便可在该处理 机与一I/O装置间,传送资料或一命令; 若此一I/O指令被侦测到,便执行一中断; 就上述多处理机环境内之每一多数处理机,提供一 指标,以指明上述处理机刚执行过之一I/O指令有关 之指令位址,与上述处理机有关之当前位址间的指 令位址计数差,是否小于或等于一预定数目;以及 响应上述选定之I/O指令,使用该资讯来决定何者处 理机要连接至该I/O装置,以便在该I/O装置与该处理 机间,传送资料或命令,而完成其连接之动作。18. 如申请专利范围第17项所申请之方法,其中之指标 提供步骤系包含一步骤,其可在一特定处理机有关 之指令位址计数差等于1时,清除一具有一小于或 等于上述预定数目之指令计数差之处理机的指标, 除非该特定处理机有关之最后I/O指令,系直接或间 接指明上述特定I/O装置有关之一埠。19.一种电脑 程式产品,其包含: 一其中具现有电脑可读取式程式码具之电脑可用 媒体,其可在一I/O中断期间,在一多处理机环境内 之一适当处理机与一I/O装置间,提供彼等之I/O功能 ,上述电脑程式产品内之电脑可读取式程式码具, 系包含: 一第一电脑可读取式程式码具,其可用以使硬体就 上述多处理机环境内之每一多数处理机,提供一指 标,以指明上述处理机刚执行过之一I/O指令有关之 指令位址,与上述处理机有关之当前位址间的指令 位址计数差,是否小于或等于一预定数目;以及 一第二电脑可读取式程式码具,其可用以使硬体使 用该指标,来决定何者处理机要连接至该I/O装置, 以便在该I/O装置与该处理机间,传送资料或命令, 而完成其连接之动作。20.一种电脑程式产品,其中 之第一电脑可读取式程式码具,系包含第三电脑可 读取式程式码具,其可用以决定何时一特定处理机 有关之指令位址计数差系等于1,以及可清除上述 身为一正在执行一I/O指令之处理机之特定处理机 的指标,除非该特定处理机有关之最后I/O指令,系 直接或间接指明上述特定I/O装置有关之一埠。21. 一种可用以服务一多处理机环境内之一I/O指令所 起始之一软体系统管理中断(SMI)的方法,其所包含 之步骤有: 侦测一软体SMI之发生; 决定该多处理机环境内之何者处理机,具有一用以 指示上述起始该软体SMI之处理机的保存状态资讯; 以及 在一SMI处理常式,与上述被决定已起始该软体SMI之 处理机间,传送资讯。22.如申请专利范围第21项所 申请之方法,其中之处理机决定步骤系一步骤,其 可决定上述多处理机环境内之一处理机,所具有一 中断保存状态区域内之一EIP'値,是否与一直接跟 在一使一BIOS软体SMI呼叫常式内之软体SMI起始之I/O 呼叫指令后面之指令所在之一偏离位置相同。23. 如申请专利范围第21项所申请之方法,其中之处理 机决定步骤系一步骤,其可决定一处理机I/O保存状 态区域内之EIP値,是否与一用以起始一BIOS软体SMI 呼叫常式内之软体SMI之I/O呼叫指令所在之一偏离 位置相同。24.如申请专利范围第23项所申请之方 法,其中之处理机决定步骤系一步骤,其可决定上 述处理机I/O保存状态区域内之ECX、ESI、和EDI値,是 否与一中断保存状态区域内之ECX、ESI、和EDI値相 同。25.如申请专利范围第22项所申请之方法,其中 之处理机决定步骤系一步骤,其可决定一处理机I/O 保存状态区域内之EIP値,是否与一用以起始一BIOS 软体SMI呼叫常式内之软体SMI之I/O呼叫指令所在之 一偏离位置相同。26.一种可用以服务一多处理机 环境内之一I/O指令所起始之一软体系统管理中断( SMI)的方法,其所包含之步骤有: 侦测一软体SMI之发生; 指明上述多处理机环境内一已起始该软体SMI之处 理机,倘若下两测试次序无关下皆为真:1)上述多处 理机环境内之处理机,所具有一中断保存状态区域 内之一EIP'値,系与一直接跟在一使一BIOS软体SMI呼 叫常式内之软体SMI起始之I/O呼叫指令后面之指令 所在之一偏离位置相同,以及2)上述处理机有关之 一I/O保存状态区域内之EIP値,系与上述用以起始该 BIOS软体SMI呼叫常式内之软体SMI之I/O呼叫指令所在 之一偏离位置相同;以及 在该SMI处理常式与上述指明之处理机间,传送资讯 。27.一种多处理机系统,其包含: 至少一第一和第二处理机,彼等各可用以产生一 BIOS软体SMI呼叫常式内之特定I/O呼叫指令,而起始 一软体系统管理中断(SMI); 一可用以处理彼等系统管理中断之SMI处理常式; 一可用以侦测一软体SMI之发生的第一逻辑电路; 一第二逻辑电路,其可在第一逻辑电路侦测到一软 体SMI之发生后,用以决定上述多处理机环境内之何 者处理机,系具有上述指示已起始该软体SMI之处理 机的保存状态资讯;和 一第三逻辑电路,其可用以在该SMI处理常式,与上 述被决定已起始该软体SMI之处理机间,传送资讯。 28.如申请专利范围第27项所申请之多处理机系统, 其中之第二逻辑电路,系包含一第三逻辑电路,其 可用以决定上述多处理机环境内之一处理机,所具 有之一中断保存状态区域内的一个EIP'値,是否与 一直接跟在一使上述BIOS软体SMI呼叫常式内之软体 SMI起始之I/O呼叫指令后面之指令所在之一偏离位 置相同。29.如申请专利范围第27项所申请之多处 理机系统,其中之第二逻辑电路,系包含一第四逻 辑电路,其可用以决定一处理机I/O保存状态区域内 之一EIP値,是否与一用以起始上述BIOS软体SMI呼叫 常式内之软体SMI之I/O呼叫指令所在之一偏离位置 相同。30.如申请专利范围第28项所申请之多处理 机系统,其中之第二逻辑电路,系包含一第四逻辑 电路,其可用以决定一处理机I/O保存状态区域内之 一EIP値,是否与一用以起始上述BIOS软体SMI呼叫常 式内之软体SMI之I/O呼叫指令所在之一偏离位置相 同。31.一种电脑程式产品,其包含:一其中具现有 电脑可读取式程式码具之电脑可用媒体,其可用以 决定一多处理机环境内之何者处理机,已起始一软 体系统管理中断(SMI),以及可在一SMI处理常式与该 处理机间提供通讯,上述电脑程式产品内之电脑可 读取式程式码具,系包含: 一第一电脑可读取式程式码具,其可用以侦测一软 体SMI之发生; 一第二电脑可读取式程式码具,其可在第一电脑可 读取式程式码具,侦测到一软体SMI之发生后,用以 指明上述多处理机环境内之何者处理机,系具有上 述指示已起始该软体SMI之处理机的保存状态资讯; 和 一第三电脑可读取式程式码具,其可用以在该SMI处 理常式,与上述被决定已起始该软体SMI之处理机间 ,传送资讯。32.如申请专利范围第31项所申请之电 脑程式产品,其中之第二电脑可读取式程式码具所 包含之程式码,可用以决定上述多处理机环境内之 一处理机,所具有之一中断保存状态区域内的一个 EIP'値,是否与一直接跟在一使上述BIOS软体SMI呼叫 常式内之软体SMI起始之I/O呼叫指令后面之指令所 在之一偏离位置相同。33.如申请专利范围第31项 所申请之电脑程式产品,其中之第二电脑可读取式 程式码其所包含之程式码,可用以决定一处理机I/O 保存状态区域内之一EIP値,是否与一用以起始一 BIOS软体SMI呼叫常式内之软体SMI之I/O呼叫指令所在 之一偏离位置相同。34.一种电脑程式产品,其包含 :一其中具现有电脑可读取式程式码具之电脑可用 媒体,其可用以决定一多处理机环境内之何者处理 机,已起始一软体系统管理中断(SMI),以及可在一SMI 处理常式与该处理机间提供通讯,上述电脑程式产 品内之电脑可读取式程式码具,系包含: 一第一电脑可读取式程式码具,其可用以侦测一软 体SMI之发生; 一第二电脑可读取式程式码具,其可在第一电脑可 读取式程式码具,侦测到一软体SMI之发生后,用以 指明上述多处理机环境内之一处理机,为已起始该 软体SMI,倘若下两测试次序无关下皆为真: 1)上述多处理机环境内之处理机,所具有一中断保 存状态区域内之一EIP'値,系与一直接跟在一使一 BIOS软体SMI呼叫常式内之软体SMI起始之I/O呼叫指令 后面之指令所在之一偏离位置相同,以及 2)上述处理机有关之一I/O保存状态区域内之EIP値, 系与上述用以起始该BIOS软体SMI呼叫常式内之软体 SMI之I/O呼叫指令所在之一偏离位置相同;以及 在该SMI处理常式与上述指明之处理机间传送资讯 。图式简单说明: 第一图系一可显示本发明有关I/O指令陷址中断处 理流程之方块流程图;以及 第二图系一可显示一多处理机环境内之一软体SMI 后之处理机决定步骤的方块流程图。
地址 美国
您可能感兴趣的专利