可动态构建的计算机系统的制作方法_3

文档序号:8344593阅读:来源:国知局
/O资源进行分配,创建对SPU的中断,并存储它们的存储器堆栈。MM CPU还决定哪个SPU将继续中断服务之后的进程。这意味着被中断的SPU不一定必须是丽CPU返回堆栈信息所到的相同处理器;MM CPU可以决定将堆栈信息返回到不同的SPU(运行相同的操作系统)。通过相同的令牌,当进行中断服务时,相同的操作系统可以或可以不分配给相同的处理器。只要操作系统可以与SPU兼容,就取决于丽CPU算法来确定将哪个处理器分配给操作系统。此外,为了处理中断和堆栈,MM CPU算法处理并存储所有的导致中断的事件。以此方式,MM CPU总是知道机器上每个进程的状态。每个MM都包括多个控制交换机:控制I/O 52、管理I/O 54、存储器54和用于在多个SPU之间进行选择的SPU交换机55。
[0103]参见图17,还示出了保持活跃控制器(KAC) 56,它的功能是发送信息到其他的丽机器或丽的参考帧外部的设备,以及从其他的丽机器或丽的参考帧外部的设备接收信息。优选地,信息通过数据和控制线57在MM设备之间共享,并且包括进程数据、进程表是、机器状态以及根据该发明的其他信息,例如云密钥和序列信息,以及调度和I/O信息,这将在下面结合图35和39说明。
[0104]根据本发明的MM具有基于规则集和/或算法在计算机周边设备组件和处理单元之间动态地按特定路线发送信号的能力。在元指导器架构中,没有中央处理器或清楚定义的系统。在优选的设计中,逻辑交换机不对组件之间的物理连接进行切换,它处理信号信息,并在逻辑上确定连接。逻辑式交换机称为指导器交换机。
[0105]指导器交换机的目的是为了提供处理单元和资源之间的抽象层以对应用程序和进程进行调度。指导器交换机处理来自处理单元的地址信息,并将其转换成另一虚拟化地址,或优选地在存储器读取和写入情况下物理存储并获取信息的两个或更多地址。它不需要修改地址,尽管它例如可以对数据加密。交换机的逻辑部分确定交换机如何工作。有几个逻辑性质将在后面描述,但基本上说,逻辑部分控制如何处理地址信号和控制信号。逻辑代表控制第一域的功能的另一进程域。该布置可以是递归的;其中交换机可以放置在计算机系统内不同的层上,并可以在指导器交换机之间传输信号以方便它们工作和操作。指导器交换机在其他的指导器交换机之间通信信息,或者在系统组件中包括系统。当指导器交换机执行这些通信时,系统存在,系统在它们的通信结束时停止存在。在非递归配置中,元指导器与其他的递归元指导器系统通信以创建多域系统。与递归的MM系统类似,当发生MM通信和任务分配时,这些多畴系统存在,当它们的通信结束时,停止存在。
[0106]参见图18和19,示出了根据该发明各自被包括在冯?诺依曼和哈佛架构配置中的元指导器60。在每一情形中,对存储器的请求,无论是指令还是数据存储器,都通过容错MM交换机61(例如,图17示出的存储器控制交换机54)根据MM逻辑和算法运行的规定,例如通过MM CPU(图17中的50)进行变换。在冯?诺依曼的情形(图18)中,对数据或指令存储器的CPU请求通过MM变换,并在逻辑上在整个存储器62内分为数据和指令区域,示出为多个存储器单元Men-1至Men-6。这有效地将冯?诺依曼架构变换成哈佛架构。在哈佛的情形(图19)中,对数据存储器的CPU请求被变换成存储器A或存储器B内的任何存储位置。类似地,对指令存储器的任何CPU请求都被转换成存储器A或存储器B内的任何存储位置。访问控制线连接到MM交换机,并可以或可以不与在整个系统内进行交互。而且,存储器A或存储器B不需要与CPU兼容。因此,如果存储器B具有24位存储单元,那么MM可以将CPU读取8位数据存储器请求变换成对24位存储器B的两次或三次8位读取。类似地,MM可以将CPU 24位指令读取变换成对8位存储器A的三次读取,这可以或可以不同时发生。由于在元指导器架构中,整个系统存储器不要求数据和指令存储器物理分离,因此可以考虑冯.诺依曼架构,甚至在CPU(SPU)具有哈佛架构的构建时。
[0107]参见图18和19,两个丽60都与相应的进程表62和规则集63通信,以建立对DID进程和由CPU运行的事件的不变的指导准则和限制,规则被设计为防止出现故障或遭到恶意软件的侵害。表和规则集存储在MM域存储器中,它们的内容随着应用程序和系统环境的变化而变化。进程表包含可允许的进程和与它们相关的信息,例如,进程标识符(proc)、每个列出进程的程序计数器信息、与列出的每个进程相关联的CPU和其他的存储器和/或与相应的进程相关的值得注意的信息。
[0108]图20用维恩图示出了元指导器架构。CPU与元指导器交换机而不是系统交叉。系统还与MM交换机交叉,而与CPU分离。这允许MM交换机异步地虚拟化CPU (或CPU阵列)和系统。MM和系统之间的交叉表示信号控制线,如中断,它是调度进程的一部分。这创建两个域。CPU域处理指令和数据信息,MM域虚拟化地址空间,并处理控制和调度。
[0109]参见图21,示出了在控制单个处理单元SPU 66的丽域中运行的元指导器,单个存储器MEM-DID 67在DID中运行。图21中的虚线65标出丽和指导器交换机的组件,该指导器交换机包括图17中MM CPU、MM缓存和SPU控制交换机的内部运作方式的一个新颖实施例。丽CPU 68是从其位于MM-MEM 69 (例如,图17的丽缓存)内的元数据存储库提供抽象指令的处理器。抽象的实例通过MM-CPU经由地址和数据总线,Addr CPU-1和DataCPU-1储存在存储器MHb 70中,并通过处理器MM-CH 71处理,该处理器MM-CH 71提供处理器SPU和存储器组件MEM-DID之间的抽象描述符。
[0110]如前面说明的,元指导器架构在至少两个域中运行。丽域从根本上说是地址空间(例如,根据需要定义、重新配置等)和进程/线程调度,从处理器的从根本上说是在DID(数字和指令域)中运行。MM-CH、MHa 72和MHb —起工作以创建特定进程或硬件设备的抽象。图21的MM-CPU和MM-MEM是丽域的一部分,并包含有关DID进程和系统硬件的元信息。元信息具有有关每个进程如何执行的抽象描述符。也就是说,SPU在地址总线上创建一组用于与VN或H架构中的同步组件匹配的电信号,如图2、3和5中的维恩图所示。然而,在MM架构中,SPU地址对位于DID域中的组件转译为不同的地址。SPU和DID组件两者都与MHa和MM-CH同步,但SPU不与任何DID组件同步。这将SPU地址空间映射到DID地址空间。如何映射由抽象描述符定义。应该注意的是,这些总线随着SPU的不同而变化。然而,每条总线都承载与所有处理器(SPU)相关的类似的信息。在优选的设计中,数据未经修改而传递,尽管在MM架构中,不修改数据不是必需的。
[0111]抽象描述符被格式化为分层结构,其中具有属性的“对象”集(如在计算机领域中使用的)被附加到事件、进程和地址空间。以此方式,存储在MM-MEM中的元信息包括覆盖可以由SPU运行的所有可能的事件、进程、地址空间的主规则集。如上面说明的,规则集建立被设计为防止DID出现故障和受到恶意软件侵害的不变的限制。
[0112]例如,规则集可以包括按安全对象对进程分类。一种流行的分类是基于“特权”,它允许在保密性、完整性和可用性方面改变系统。进程对象包含定义其提升特权的能力的属性。MM域对全部的进程进行调度,并分配地址空间。定义进程可以访问哪些地址空间、进程可以以什么样的特权运行以及它可以访问什么类型的设备的属性是一些属性示例。其他的示例包括,如果进程从I/O设备启动,那么该进程将只能访问预定义的硬件和地址空间。属性的执行通过MM域保证。这种保证在单一域系统中由于定义存储地址的算法的循环逻辑是不可能的。在MM架构中,DID算法不能定义地址空间。在另一示例中,如果进程访问某个设备,如麦克风,那么该进程不能直接访问输出端口。该列举变得相当宽泛。
[0113]再次参见图21,在运行时,MM-CPU根据其结构从它的缓存(MM-MEM)获取合适的信息,包括用于特定进程的相关的规则集,然后通过Addr CPU2和Data CPU2将信息存储在存储器MHb中。那么MHb是与所选进程相关的相关规则集的存储库。然后,MM-CH通过访问MHb、中断SPU、经由Int2并定义SPU的地址空间在SPU上开始所选的进程。在该实施例中,MM-CH处理器在丽域中运行,并执行SPU与它的DID存储器(MEM-DID)和I/O(未示出)之间所有的抽象和虚拟化还根据存储在MHb中的相关规则集监视SPU。存储器MHa也是MM域的一部分,并且基本上说是MM交换机中的缓冲存储器,而不一定必须在所有的应用中。作为替代性实施例,MM-CH的功能可以集成到MM-CPU中,但在时间方面效率会降低。
[0114]图21还示出了 PIT-DID 73块。传统的计算机通常包括可编程间隔定时器(PIT)。在传统的计算机中,PIT直接连接到计算机的CPU,并可以被编程为在给定时间发送中断到CPUo例如,它可以被编程为在星期一的凌晨2:00备份计算机。在凌晨2:00,中断当前正在运行的任何进程的信号被发送到CPU。CPU将返回到它在中断之前正在执行的指令所需的全部信息保存在称为“堆栈”的存储位置。然后,CPU执行确定中断性质和细节的进程。然后,它开始为该特定的中断执行预定地址位置处的指令。用于这些中断的特定术语是“服务例程”。在冯?诺依曼或哈佛式架构中,PIT使得CPU中断,CPU将在它正在执行的进程中执行指令所需的全部状态信息保存在堆栈上,确定中断的类型,程序计数器跳转到服务例程开始的存储位置,并开始执行在该地址处的指令存储。当完成服务例程时,它从堆栈中取出(有时称为弹出)信息,并在它停止服务中断的状态下返回执行指令。有几种执行该基本功能的方法。上面的描述展示了一种传统的可编程中断定时器来演示传统中断的进程。
[0115]再次参见图21,根据该发明的丽实施例使用不同的方式。MM-CPU是连接到冯?诺依曼存储器MM-MEM和数据信息存储器MHb的处理器。MM-CPU和MM-MEM具有DID结构。组件PIT-DID和MEM-DID两者都在DID中运行,分别是在图17的控制I/O交换机和存储器控制交换机中表示的组件的新颖实施例。连接到图17的存储器控制交换机的系统存储器包含通过DID访问的数据和指令信息(冯?诺依曼架构)。SPU是从处理单元,是DID的成员,并且与图17示出的从处理单元之一相同。组件MM-CH、MHa、MHb和选择器47是图17中示出为路由表和SPU控制交换机的项目的新颖实施例。MM-CH是执行抽象结构的CPU。
[0116]再次参见图21,PIT-DID是可编程中断定时器,它具有连接到MM-CPU的中断控制线(Inti)。该中断不在DID域中。使用相同的凌晨2:00中断示例,MM-CPU被PIT-DID中断,并通过放置PIT-DID中断服务例程的开始地址来对MM-CH或SPU进行调度。它通过将服务例程算法写入MHb中预定的地址来做到这一点,该算法的目的是为了确定PIT-DID中断的性质。使用MM-CH确定中断作为示例,MM-CPU发送中断信号(Int2)给MM-CH,然后MM-CH从MHb中找取PIT-DID中断信息,并将其写入存储器单元MHa。MM-CH然后返回到它之前的状态。然后,MM-CPU在MHb中找取中断信息,并确定驻留在MM-MEM中的进程结构。该元信息包含有关每个进程如何执行的抽象。它被格式化为分级结构,并用作所有DID进程的描述符。然后,MM-CPU将元信息架构传输到MHb,中断MM-CH以为给定PIT-DID服务例程执行虚拟化SPU和MEM-DID之间通路的架构描述符。MM-CH通过Int3中断SPU,然后SPU开始从MHa执行PIT-DID服务例程。
[0117]再次参见图21,MM-CPU或MM-CH可以直接处理SPU读取/写入请求,但在该操作中,MM-CH从MEM-DID将指令存储器和数据存储器作为一种缓存器加载到MHb中。在任何事件中,MM-CPU和MM-CH都定义信息,并基于来自另一处理域的规则集分离数据和指令存储器。MM-CPU使用其元数据指导SPU,并执行元数据集。
[0118]参见图22,示出了具有单个MM-CPU的指导器交换机。然而,对在指导器交换机上作用的MM-CPU的数量没有限制。实际上,有利地,可以有两个或更多的MM-CPU,每一个都有不同的指令集(不同的制造),这样他们执行相同的功能,但要求不同的指令起作用来防止出现常见的模式故障。
[0119]再次参见图22,示出了指导器交换机75和丽抽象描述符处理器(MMADP)阵列80、MM-CH-O至MM-CH-n。MMADP阵列使用前面描述的DID虚拟化描述符虚拟化从处理单元81、SPU-O至SPU-n的地址空间。图22中的组件提供与图21中的组件相同的功能,设置多个MMADP单元会增加处理单元和系统组件之间的信息传输率。此外,多个MMADP单元提供MM交换机内的冗余容错。应该注意的是,不要求阵列MMADP与二进制兼容,而要求它们执行相同的功能。这个特点在防止系统出现常见的模式故障方面很重要。称为N版本编程的经典开发技术,根据相同的初始规范独立生成在功能上相等的多个程序的方法或处理使用该元指导器架构扩展。在MMADP和/或MM-CPU —级使用两个或更多的二进制兼容的处理器允许设备通过完全独立的系统使用状态复制。每个MM-CPU都可以通过不同的通信通路和许可算法被唯一地访问。创建抽象描述符的系统可以由可用的、根据处理要求构建的随机选择的二进制不兼容的组件组成。结合起来,这些特征使得指令或硬件中的单个错误很难在两个可独立构建的交换机系统上复制自身。两个并发错误不可能同时发生,即使那是指令的意图。例如,可以检查物理系统组件上用于可信赖性的签名的元指导器CPU算法可以使用该配置。系统组件的独特特征或多个特征通过与二进制不兼容的CPU使用不同的识别算法分析。
[0120]再次参见图22,图17的SPU控制交换机55的新颖实施例用虚线75标出。公共信息总线76连接从处理单元SPU-O至SPU-n (SPU的)和存储器组件MHa-O至MHa_n。MHa的77可以被永久分配给SPU,或任意分配。图21和图22之间在从MHa到系统组件传输信息的方法方面存在区别。在图21中,示出了直接连接到存储器设备,MHb和MEM-Rl的系统组件。在图22中,系统组件连接到MMADP阵列。功能是相同的;区别是图21通过DMA(直接存储器访问)传输信息,而在图22中,信息通过MMADP的传输。图21的单个单元中示出的单根数据线已经用图22的数据总线替换。图22中的组件控制线在用实线绘出的单独的总线78上。
[0121]再次参见图22,PIT-DID 79以与前面的单个情形相同的方法中断MM-CPU。单个MM-CPU调度可用的或选择处理MMADP来找取服务例程的开始地址。我们说,选择MM-CPU和MM-CH-2来找取PIT-DID服务例程地址。如在前面的示例中,MM-CPU通过将PIT-DID找取例程开始指令存储地址写入例如MHb-O中做到这一点上。也就是说,当MM-CH-2被MM-CPU中断时,MM-CH-2将开始执行MM-CPU定义的地址处的指令;这将导致MM-CH-2找取PIT-DID服务例程地址,并将之放置到可用MHb,例如MHb-1中预定义的位置。在信息储存在MHb-1中之后;MH-CH-2返回到其以前的状态。MM-CPU找取PIT-DID中断的开始地址位置,并使用开始地址找取有关驻留在MM-MEM中的查找表中的服务例程的元信息。元信息包含在前面的情形中相同类型的信息,有关服务例程将具有什么类型的访问和相关规则的信息。MM-CPU将该信息写入MHa-3。MM-CPU将另一中断服务例程放置在允许MM-CH-3开始SPU-3以处理PIT-DID服务例程的MHa-2中。
[0122]如果处理器,在该情形中SPU根据MM-CPU布局的规则集写入来自SPU写入信息的中断在SPU上执行的进程的软件中断或轮询进程,那么在开始新的进程之前将执行进程状态保存在系统存储器中。传统的系统将信息存储在中央存储器中。在MM架构中,处理信息可以存储在MHa存储器中。实际上,周边设备,如存储器,例如MHa —级的存储器之间数据的块传输用作缓存,称为L4缓存,SPU只与L4缓存通信。容错,检查点缓存存储可以发生在L4缓存,根据存储算法在不同的时间或立即写到存储器、存储盘、打印机或其他周边设备上。应该注意的是,L4缓存级与MM-CPU在系统内放置的位置有关。元指导器架构可以容易地放置在L1、L2或L3级。
[0123]数据流架构
[0124]参见图23和24,示出了数据流架构的情形。元指导器放置在处理单元与存储器和相关的周边设备之间。MM虚拟化抽象层,方便进程调度。
[0125]参见图23,示出了被包括在数据流架构中的元指导器。MM交换机84是创建MM域以管理存储器信息和进程节点控制的“使能单元”周围的一种物理和逻辑包装器。该配置显示了 MM架构是如何可适应的。MM架构通过类似于冯?诺依曼或哈佛架构的虚拟化、复制和调度提供容错,传统的数据流功能仍与图6B示出的相同。
[0126]参见图23,与传统的系统相同地提供匹配单元21的输入。这些令牌或“标记操作数”通过MM交换机84存储在存储器中,并存储在通过MM算法虚拟化的冗余位置。当指令的全部的标记操作数都变得可用时(即,从前面的节点功能输出或指令和/或用户输入),函数已经准备好,MM调度找取单元
当前第3页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1