计算机系统体系结构的层次设计分析
李礼
摘要:计算机系统体系结构的层次设计是一项非常复杂的工程,文章对计算机系统体系结构层次设计的原则、机制和路径分别进行分析,确保计算机系统能够高效运作,同时便于系统开发与后期的维护。
关键词:计算机系统;层次设计;结构
1计算机系统体系结构层次设计的含义
计算机系统体系结构层次设计是指层次结构设计。所谓层是指计算机系统体系结构当中一组或一个功能或某些方面类似的模块的集合,集合内的功能模块之间可以交互,层与层外部通过层的接口相连。层次则是指一组或一个层以及层之间的交互式模块集合。层次与层在概念上类似,但在层的动机和观察方法以及对己知系统的划分有所不同。层次研究的是对象系统中的体系结构,层次规定了不同层之间的连接规则、连通性以及连接的逻辑。计算机系统体系结构的层次设计一般包括层次结构模型的设计、层次跨层的设计、层次构建的设计和层次覆盖的设计4个方面。
2计算机系统体系结构层次设计的原则
2.1简化原则
简化原则是层次设计的首要原则。系统层次结构设计在很大程度上可以帮助系统测试验证,其设计的初衷就是要简化系统结构。层次结构设计与模块化设计相似,需要将整个计算机系统划分层次,从而确保每个层次及层次之间都变得更加简单。可见,层次设计就是为了使计算机系统的认知、维护、验证、测试与优化等工作都变得更加的简单方便。因此,基于这些方面,在层次设计过程中务必采用简化原则,将每个层次的功能与资源进行简化,降低层次设计过程中的复杂性。
2.2效率原则
计算机系统体系结构层次设计除了遵循简化原则以外,还必须遵循效率原则。不能为了使系统结构的设计与维护变得更加简单,就牺牲效率。事实上,在进行计算机系统体系结构设计时,必须要考虑计算机系统运行的可靠性与性能,确保计算机系统能实现其设计目的中的效率。效率的提高主要表现在层次之间的覆盖设计和跨层设计当中,要将各层次间的接口以及接口间的链接设计,这个设计就必然使得计算机系统体系结构变得更加复杂,但是却能提高系统的效用。
因此,在层次设计中需要综合权衡简化原则与效率原则。不能为了单纯的简单而牺牲系统的效率,而是应该在保证系统效率的情况下确保系统结构的最简化。
3计算机系统体系结构层次设计的机制
层次设计的两种基本机制包括虚拟映射机制和抽象映射机制。将原平面p到目的平面/^的映射表示为,虚拟映射机制表示为,抽象映射机制表示为r;。目的平面只能是逻辑平面,而原平面则既可以是逻辑平面也可以是物理平面。两种基本的映射机制相互组合和叠加可以形成更多的层次结构设计的方法与模型。根据原平面与目的平面的结构变换等可以演化出另外3种基本的映射机制:变换映射、归一映射和单位映射。其中同一个平面的结构映射相同的是变换映射,可以表示为,变换映射尽管具有相同的结构,但是原平面对应和目的平面中最少有一个节点的功能与节点不同;如果原平面中对应的节点与目的平面中的节点在属性和功能上完全一致,这种映射就叫作单位映射,也表示为;如果单点结构的平面结构映射被称之为归一映射,可以表示为。此处,只对两种基本映射,即虚拟映射和抽象映射作详细介绍。
3.1虚拟映射机制
虚拟映射机制是指将原平面结构中的某个节点实体,映射到目标平面结构中的某个子结构当中,原实体节点,中最少有一个连接由目标平面实体结构中的每一个节点来继承。虚拟映射机制能够实现比抽象映射机制更加复杂的功能,可以在目标平面上灵活地建立结构,原平面的一个实体店能够映射到目标平面中的一个或多个不同或者相同的实体点钟。可见,虚拟映射机制是一个扩大的映射机制,从一方面来看,目标平面的结构复杂性与平面复杂性只会增加而不会降低。
虚拟映射机制是将物理观察转变成逻辑观察的一个映射过程,如虚拟网络、虚拟机都采用的是虚拟映射机制。总体来看,虚拟映射机制的目标包括复制、变换和隔离。在逻辑平面上同时运行生成资源的各个逻辑复制品就是复制;在逻辑平面上通过资源接口变化实现不同功能就是变换;在逻辑平面当中的每个逻辑部分之间相互隔离,互不干扰,能够独立的管理与运行就是隔离。总的来说,虚拟映射机制比抽象映射機制更加灵活多变,可以实现更丰富的功能。
3.2抽象映射机制
计算机系统体系结构的研究与建模离不开抽象映射机制。所谓抽象,即它忽略掉一些属性,而对另一些特定的属性进行抽象,即包含信息隐藏和信息忽略。对于一些解决关键问题的细节在数学建模当中可以忽略。对于一些与上下文和层次设计中不太重要的细节则应该采用隐藏,隐藏的细节在某个层次设计中可能不需要,但是在其他层中可能就是必须的,因此,它只是在本层中暂时被隐藏。在计算机系统体系结构的层次设计当中可以通过汇编器、编译器以及连接器来对基本逻辑进行隐藏,而这些常见的程序设计语言都可以看作是抽象的工具。由此可见,抽象映射机制是在不改变平面结构的情况下,将原平面结构的某个子结构映射到目标平面中的某个节点实体,映射平面中可以包含多个抽象节点实体。
抽象映射机制可以简化结构背后部件的调动,减少层与模块之间的作用。事实上,抽象映射可以看作一个收缩映射,它能降低目标平面的结构复杂性与平面复杂性,使得目标平面结构内的层和模块能够灵活封装、调用和实现原平面中的不同逻辑功能,从而使得目标平面变得更加简洁,确保其长期运行的稳定性。
通过定义隐藏模块以及对接口进行封装,合理地利用抽象映射机制可以更好地隐藏相关的细节,从而优化层与模块的交互需求。但是抽象映射机制没有办法实现系统层次结构的效率与性能的提高。
4计算机系统体系结构层次设计的路径
把握好计算机系统体系结构层次设计的原则和基础之后,就可以对计算机系统进行层次设计。当前主流的设计思路有两种:自上而下的分解设计思路和自下而上的压缩过程思路。
4.1自上而下的分解过程思路
分解过程是对原平面分到可接受的目标平面的映射序列,它是自上向下的一个分解过程。如经过m次映射之后可以表示为分解过程与压缩过程类似,但映射的方式有所不同,分解映射采用的是扩张性的映射(如虚拟映射),而压缩映射采用是压缩方式的映射(如抽象映射)。
4.2自下而上的压缩过程思路
自下而上的压缩过程是指自下向上逐步进行压缩,从一个原平面开始,逐步向上缩到可接受的目标平面上的映射序列,如经过m次映射则用公式可以表示为:
凡原平面经过3次合适的映射就可以得到目标平面,具体的变化结构如图1所示。层次的设计需要先从目标平面的抽象整体体系开始进行层次设计,然后不断细化,最后就可以得到整个系统的层次设计。
通常一个比较复杂的计算机系统,需要将两种分解过程相结合,从而选择出最优的、最容易接受的层与层次结构。对于一些比较简单、关键需求明确的系统,采用压缩过程来构建系统架构,然后再利用虚拟映射机制与抽象映射机制对其进行复杂性的改进,从中分析问题并总结经验。分解过程的思路则需要先对原平面进行整体系统的功能规划,然后再对其进行分组,逐步细化成为可以接受的系统。在设计过程中,应该根据系统的性质及复杂性来灵活选择不同的方法。
5结语
计算机系统体系结构的层次设计是一项非常复杂的工程,设计好的层次结构往往还需要构建模型进行评价,最后求出最优的设计方法与思路。总的来看,计算机系统体系结构层次设计应该把握好简化与效率的原则,确保计算机系统能够高效运作,同时便于系统开发与后期的维护。在具体的设计过程中,应根据计算机系统的复杂性、功能、效率等特点,灵活选择分解过程思路或者压缩过程思路。
[参考文献]
[1]文森特.计算机系统设计与结构[M].邹恒明,保蕾蕾,译.2版.北京:电子工业出版社,2005.
[2]范植华计算机系统中的层次结构[J]计算机研究与发展,1982(3):9-12.
[3]何志超.?炎计算机系统结构的发展[J].信息通信,2015(5):144.