体系结构

2024-10-20

体系结构(精选12篇)

体系结构 篇1

在计算机体系结构课程教学过程中, 冯诺依曼体系结构和哈佛体系结构是重点教授的两种体系结构类型。[3]冯诺依曼结构, 又称为普林斯顿结构, 是一种经典的体系结构, 由CPU, 存储设备, I/O设备组成。[4]这种体系结构采用指令与数据合并存储的方式, 程序指令宽度与数据宽度一样。随着CPU设计技术的发展, 片内数据传输路径的增加, 指令和数据的互斥读取很大程度上影响了CPU运行效率。为此, 哈佛大学提出一种新的体系结构, 在这种结构中数据存储器与程序代码存储器分开, 各自有自己的数据总线与地址总线, 实现指令和数据的并行读取。由于哈佛结构需要CPU提供大量的数据线, 因而很少作为CPU外部构架来使用。但是对于CPU内部, 通过使用不同的数据和指令缓存, 可以有效地提高指令执行的效率, 因而目前大部分计算机体系结构都是CPU内部的哈佛结构和CPU外部的冯诺依曼结构并存。

在冯诺依曼体系结构教学方面, 许多大学已经开始研发各种基于软件和硬件模拟器来辅助课程教学和实验教学。[5]但在哈佛体系结构教学方面仍然缺乏有效的模拟器。[6]针对这一问题, 本文介绍了我们基于开源软件包Multimedia Logic (MML) 所开发的用于哈佛体系结构教学的模拟器。

模拟器结构和指令

1.总体结构

哈佛体系结构具有程序与数据物理上分开存储的特点, 从而提供了较大的数据存储器带宽。哈佛体系结构的工作原理是:CPU控制器首先到程序指令存储器中读取程序指令内容, 根据指令中操作数的地址, 再到相应的数据存储器中读取数据, 并进行下一步的运算。

图1给出了我们所开发的哈佛体系结构模拟器框图。其中M1 (DataMem) 作为数据存储器, 其主要功能是用于存放执行的中间结果和过程数据。M2 (ProgramMem) 作为程序存储器, 其主要功能是用于存储程序指令。M3 (OpDecode) 作为指令译码器, 其主要功能是将操作码信号翻译成机器能够识别的控制信号。M4 (RI) 作为输入寄存器, 其主要功能是用于暂时存放数据存储器输出的数据。M5 (RO) 作为输出寄存器, 其主要功能是用于暂时存放运算结果。M6 (PC) 作为程序计数器, 其主要功能是用于存放下一条指令所在单元的地址。ALU1和ALU2是算术逻辑单元, 其功能分别是控制程序计数器的地址和执行相关的逻辑运算。Display作为显示器, 其主要功能是输出相关的结果。

2.指令系统

在哈佛体系结构模拟器设计中涉及的指令有5条[7], 分别是加法指令、跳转指令、加载指令、存储指令和输出指令。这些指令的具体说明详见下页表1。在这些指令中, 涉及寻址方式有立即寻址和直接寻址。

1.数据寄存器设计

在哈佛体系结构模拟器设计中涉及的数据寄存器有输入寄存器M4和输出寄存器M5。

其中输入寄存器M4的数据输入端与数据存储器的输出端相连;地址输入端与低电平相连;将控制信号DC1和时钟信号作为与门的两个输入端, 再与输入寄存器的读写控制端相连; 将输入寄存器的输出端与ALU2的其中一个输入端相连。图2给出了输入寄存器的设计图。[8]

输出寄存器M5的数据输入端与ALU2的输出端相连;地址输入端与低电平相连;将控制信号DC2和时钟信号作为与门的两个输入端, 再与输入寄存器的读写控制端相连;电平相连;将控制信号DC2和时钟信号作为与门的两个输入端, 再与输入寄存器的读写控制端相连;将输出寄存器的输出端通过信号I-Mem与数据存储器的输入端相连。图3给出了输出寄存器的设计图。

将输出寄存器的输出端通过信号I-Mem与数据存储器的输入端相连。图3给出了输出寄存器的设计图。

2.存储器设计

在哈佛体系结构模拟器设计中涉及的存储器有数据存储器M1和程序存储器M2。

图4给出了数据存储器的设计图。数据存储器M1的数据输入端通过信号I-Mem与输出寄存器的输出端相连;地址输入端通过信号Imm与程序存储器的指令地址码 (由于程序存储器M2输出的地址码Imm只有五位, 故在其高位补零使其成为八位Imm) 相连;将控制信号DC5和时钟信号作为与门的两个输入端, 再与数据存储器的读写控制端相连;将数据存储器的输出端通过信号Mem与输入寄存器的输入端相连。

图5给出了程序存储器的设计图。程序存储器的数据输入端与低电平相连;地址输入端与程序计数器的输出端相连;将读写控制端直接与低电平相连;将程序存储器输出端的高三位作为指令译码器的操作码与指令译码器相连, 低五位作为地址码与数据存储器的地址输入端相连。

3.指令设计

哈佛体系结构模拟器采用的指令格式为:每条指令长度为11位, 其中操作码长度为三位, 地址码长度为八位。三位操作码在经过指令译码器之后, 可以形成8个八位的控制信号DC0~DC7。由于程序存储器M2的高位输出端有三位操作码, 低位输出端的地址码只有五位, 故在其高位补零使其成为八位地址码。表2给出各条指令的操作码和控制码分配方案。

应用

我们以计算y=x+1为例说明模拟器应用操作过程。在应用操作过程中, 程序存储器中存储的内容既和程序的操作码有关, 同时与地址码也有一定关系, 所以在设计程序存储器相关程序时, 要考虑到操作码和地址码两部分。在设计程序存储器时, 需要注意一点:由于程序存储器输出端只有3位操作码, 故在设置时, 当程序指令为“0*”时, 操作码指向指令译码器的第0位; 当程序指令为“2*”时, 操作码指向指令译码器的第1位;当程序指令为“4*”时, 操作码指向指令译码器的第2位; 当程序指令为“6*”时, 操作码指向指令译码器的第3位;余下几位, 以此类推。以上所用“*”表示指令的地址码。

在设计数据存储器时, 需要事先在数据存储器的地址端存入十六进制数“79, 3D, 78, 2B, 31, 0D, 78, 3D, 34, 0D, 79, 3D”, 其所对应的ASCII值为“y=x+1_x=4_y=”, 其中“_”代表回车。这样的数据安排, 能够使指令顺序执行, 使显示器依次输出想要的结果。十六进制数“34”所对应的ASCII码值为4, 其值可以修改为30~38中的任意值, 最终的输出结果也会随之改变。

在整个程序的执行过程中, 前12个周期是按照指令存储的顺序依次执行, 其功能是为了实现“y=x+1_ x=4_y=”, 其中“_”表示回车。第13个周期是一条跳转指令, 其功能是将第9条指令输出的数据取来, 也就是输出“4”;第14个周期是一条跳转指令, 其功能是将第4条指令输出的数据取来, 也就是输出“+”;第15个周期是采用立即寻址的方式, 通过指针PC指向程序存储器所在的位置, 使信号Imm成为00000001, 并通过信号Bin传输到ALU的输入端, 最终使显示器输出“1”;第16个周期是一条跳转指令, 其功能是将第2条指令输出的数据取来, 也就是输出“=”;接下来的几个周期, 使DC6为低电平, 使显示器无法输出, 将信号RIO中的内容与信号Bin中的内容相加, 并在经过两个周期后, 传输至信号Mem, 此时再将DC6设为高电平, 使下一个时钟信号由低电平变为高电平时, 将信号Mem中的内容输出至显示器。

结论

面向本科生“计算机体系结构”课程教学的模拟器有很多, 但由于MML一方面具有软件的易动态运行、易修改、易二次开发的优点, 同时实现了硬件结构的逻辑门级映射, 弥补了其他计算机组成结构模拟器的不足之处, 因而, 本文推荐使用MML模拟器来进行教学活动。同时, 计算机体系结构主要有两类:冯诺依曼体系结构和哈佛体系结构。由于笔者近期已经提出了基于开源软件包Multimedia Logic (MML) ·冯诺依曼模拟器ARCH, 因而, 笔者在本文中提出了另一种想法——用于计算机体系结构教学的哈佛体系结构模拟器。这样就弥补了MML模拟器在哈佛体系结构教学方面的不足, 从而使MML模拟器能够更好地用于计算机体系结构的教学工作。

通过本文设计的用于计算机体系结构教学的哈佛体系结构模拟器, 学生能够更加轻松且深刻地理解哈佛体系结构, 从而为以后步入社会打下坚实的基础。

摘要:已有的计算机体系结构教学模拟器主要是面向冯诺依曼体系结构。针对缺乏面向哈佛体系结构模拟器这一问题, 本文提出并设计了基于开源软件包Multimedia Logic (MML) [1]哈佛体系结构模拟器。该模拟器不仅具有软件的易动态运行、易修改、易二次开发的优点, 同时还实现了硬件结构的逻辑门级映射[2], 从而在课程教学和实验设计方面对哈佛体系结构教学提供了很好的支持。

关键词:模拟器,哈佛体系结构,MML

参考文献

[1]Multimedia Logic (Version 1.4) Emulator Program.http://www.softronix.comllogic.html.

[2]莫毓昌, 张前贤, 陈荣根.ARCH:用于计算机组成与结构课程教学的模拟器[J].计算机教育, 2013 (10) :56-61.

[3]W.Stallings.Computer Organization and Architecture[M].5th edition NJ:Prentice Hall, 2000:1-98.

[4]A.Tanenbaum.Structured Computer Organization[M].4th edition, NJ:Prentice Hall, 1999:1-320.

[5]C Yehezkel, W.Yurcik, M.Pearson, and D.Armstrong.Three Simulator Tools For Teaching Computer Architecture:EasyCPU, Little Man Computer, and RTLSim[J].Journal on Educational Resources in Computing, 2001, 1 (4) :60-80.

[6]D.Colton, G.Embrey, L.Fife, S.Mikolyski, D.Prigmore, and T.D.Stanley.From Architecture to Architecture:Undergraduate Students Design and Implement Computers Using the Multimedia Logic Emulator[J].Computer Science Education, 2007, 17 (2) :141-152.

[7]H.Oztekin, F.Temurtas1, A.Gulbag.BZK.SAU Implementing a Hardware and Software-based Computer Architecture Simulator for Educational Purpose[C].Proceedings of the 201O International Conference On Computer Design And Appliations (ICCDA 2010) , 2010:90-97.

[8]T.D.Stanley, T.Q.Xuan, L.Fife, D.Colton, Simple Eight Bit, Emulated Computers for IllustratingComputer Architecture Concepts and Providing a Starting Point for Student Designs[R].Ballarat, Victoria, Australia, January 2007.

体系结构 篇2

学生姓名:所在学院:学生学号:学生班级:指导老师:完成日期:

软件体系结构 设计模式实验报告

宋昂

软件学院 3901080115 软件0801 刘伟 2010-12-7

一、实验目的

熟练使用PowerDesigner和任意一种面向对象编程语言实现几种常见的设计模式,包括简单工厂模式、工厂方法模式、抽象工厂模式、单例模式和适配器模式,理解每一种设计模式的模式动机,掌握模式结构,学习如何使用代码实现这些模式,并学会分析这些模式的使用效果。

二、实验内容

使用PowerDesigner和任意一种面向对象编程语言实现简单工厂模式、工厂方法模式、抽象工厂模式、单例模式和适配器模式,包括根据实例绘制模式结构图、编写模式实例实现代码,运行并测试模式实例代码。

(1)简单工厂模式

使用简单工厂模式设计一个可以创建不同几何形状(Shape)的绘图工具类,如可创建圆形(Circle)、方形(Rectangle)和三角形(Triangle)对象,每个几何图形都要有绘制draw()和擦除erase()两个方法,要求在绘制不支持的几何图形时,提示一个UnsupportedShapeException,绘制类图并编程实现。

(2)简单工厂模式

使用简单工厂模式模拟女娲(Nvwa)造人(Person),如果传入参数“M”,则返回一个Man对象,如果传入参数“W”,则返回一个Woman对象,使用任意一种面向对象编程语言实现该场景。现需要增加一个新的Robot类,如果传入参数“R”,则返回一个Robot对象,对代码进行修改并注意女娲的变化。

(3)工厂方法模式

某系统日志记录器要求支持多种日志记录方式,如文件记录、数据库记录等,且用户可以根据要求动态选择日志记录方式,现使用工厂方法模式设计该系统。用代码实现日志记录器实例,如果在系统中增加一个中的日志记录方式——控制台日志记录(ConsoleLog),绘制类图并修改代码,注意增加新日志记录方式过程中原有代码的变化。

ClientLogFactory+createLog(): Log...Log+writeLog(): void...FileLogFactory+createLog(): Log...DatabaseLogFactory+createLog(): Log...<>FileLog+writeLog(): void...<>DatabaseLog+writeLog(): void.........return new FileLog();......return new DatabaseLog();(4)工厂方法模式

现需要设计一个程序来读取多种不同类型的图片格式,针对每一种图片格式都设计一个图片读取器(ImageReader),如GIF图片读取器(GifReader)用于读取GIF格式的图片、JPG图片读取器(JpgReader)用于读取JPG格式的图片。图片读取器对象通过图片读取器工厂ImageReaderFactory来创建,ImageReaderFactory是一个抽象类,用于定义创建图片读取器的工厂方法,其子类GifReaderFactory和JpgReaderFactory用于创建具体的图片读取器对象。使用工厂方法模式实现该程序的设计。

(5)抽象工厂模式

某系统为了改进数据库操作的性能,自定义数据库连接对象Connection和语句对象Statement,可针对不同类型的数据库提供不同的连接对象和语句对象,如提供Oracle或SQL Server专用连接类和语句类,而且用户可以通过配置文件等方式根据实际需要动态更换系统数据库。使用抽象工厂模式设计该系统。用代码模拟实现数据库操作工厂实例,要求可以通过配置文件改变数据库类型。

DBFactory+createConnection(): Connection+createStatement(): Statement...ConnectionOracleFactory+createConnection(): Connection+createStatement(): Statement...OracleConnectionMySQLConnectionMySQLFactory+createConnection(): Connection+createStatement(): Statement...OracleStatementStatementMySQLStatement(6)抽象工厂模式

计算机包含内存(RAM)、CPU等硬件设备,根据下面的“产品等级结构-产品族”示意图,使用抽象工厂模式实现计算机设备创建过程并绘制相应的类图。

产品族一个产品族PcCPUPcRAMPcMacMacCPUMacRAMCPU(7)单例模式

RAM产品等级结构

使用单例模式的思想实现多例模式,确保系统中某个类的对象只能存在有限个,如两个或三个,设计并编写代码实现一个多例类。

(8)单例模式

使用单例模式设计一个多文档窗口(注:在Java AWT/Swing开发中可使用JDesktopPane和JInternalFrame来实现),要求在主窗体中某个内部子窗体只能实例化一次,即只能弹出一个相同的子窗体,如下图所示:

(注:用C#或C++实现类似功能也可以)

(9)适配器模式

现有一个接口DataOperation定义了排序方法sort(int[])和查找方法search(int[], int),已知类QuickSort的quickSort(int[])方法实现了快速排序算法,类BinarySearch 的binarySearch(int[], int)方法实现了二分查找算法。现使用适配器模式设计一个系统,在不修改源代码的情况下将类QuickSort和类BinarySearch的方法适配到DataOperation接口中。绘制类图并编程实现。(要求实现快速排序和二分查找)

(10)适配器模式

使用任意一种面向对象编程语言实现一个双向适配器实例,使得猫可以学狗叫,狗可以学猫抓老鼠。绘制相应类图并使用代码编程模拟。

三、实验要求

1.正确无误绘制简单工厂模式、工厂方法模式、抽象工厂模式、单例模式和适配器模式实例的模式结构图;

2.使用任意一种面向对象编程语言实现简单工厂模式、工厂方法模式、抽象工厂模式、单例模式和适配器模式实例,代码运行正确无误。

四、实验步骤

1.熟悉PowerDesigner15的常用功能;

2.使用PowerDesigner绘制简单工厂模式实例结构图并用面向对象编程语言实现该模式实例;

3.使用PowerDesigner绘制工厂方法模式实例结构图并用面向对象编程语言实现该模式实例;

4.使用PowerDesigner绘制抽象工厂模式实例结构图并用面向对象编程语言实现该模式实例;

5.使用PowerDesigner绘制单例模式实例结构图并用面向对象编程语言实现该模式实例; 6.使用PowerDesigner绘制适配器模式结构图并用面向对象编程语言实现该模式。

五、实验结果

(1)简单工厂模式1:

类图:

结果:

(2)简单工厂模式2: 类图:

结果:

(3)工厂方法模式1 类图:

结果:

(4)工厂方法模式2 类图:

结果:

(5)抽象工厂模式1 类图:

结果:

(6)抽象工厂模式2 类图:

结果:

(7)单例模式1 类图:

结果:

(8)单例模式1 类图:

结果:

(9)适配器模式1 类图:

结果:

(10)适配器模式2 类图:

结果:

六、实验总结

德育内容体系结构及其优化新论 篇3

一、德育内容体系及其结构探究

“德育即育德,也就是有意识地实现社会思想道德的个体内化,或者说有目的地促进个体思想品德社会化。”具体来说:“德育是指教育者根据一定社会和受教育者的需求,遵循品德形成的规律,采用言教、身教等有效手段,在受教育者自觉积极参与的互动中。通过内化与外化,发展受教育者的思想、政治、道德和心理几方面素质的系统活动过程。”因而,德育自身包含着丰富的内容并形成了一个完备的内容体系。

(一)德育基本内容的界定

由于对德育内涵理解的不同,对于德育基本内容的界定,目前学术界存在不同的阐述。概而言之:主要有狭义(小德育)和广义(大德育)之分。狭义的德育与道德教育同义,认为德育就是对德育对象进行有关道德意识、道德情感和道德行为等方面的教育。广义的德育,其内容范围包括思想教育、政治教育、道德教育以及有关心理健康方面的教育。1990年顾明远主编的《教育大词典—教育学》卷的释义为:“德育旨在形成受教育者一定思想品德的教育。在社会主义中国,包括思想教育、政治教育、道德教育。”当前我国教育理论界比较认同广义的德育内容界定,即德育主要应该包含思想、政治、道德和心理健康教育四个方面。

思想教育是要解决德育对象主观客观相符合的问题,主要包含世界观教育和方法论教育两个方面。其中,世界观教育就是用先进的思想武装人和引导人,“而方法论教育就是在世界观教育的基础上让教育对象正确认识客观世界和自身,解放思想、开拓进取、与时俱进,从而形成科学的思想意识。”政治教育主要是要解决德育对象对国家、阶级、社会制度等重大政治问题的立场和态度,包括政治理想、政治信念、政治立场、政治观点、政治情感等方面的教育。其中政治信念教育是核心,政治情感教育是目标。道德教育是对德育对象进行行为规范方面的教育,主要包括道德观念、道德判断、道德情感和道德行为等方面的教育。心理教育主要是提高德育对象心理素质的教育,内容就是对德育对象进行心理健康教育和指导,使德育对象具备良好的个性、健全的人格、健康的情感、乐观的心态和坚强的意志。

(二)德育内容体系结构

思想教育、政治教育、道德教育和心理教育构成了当前德育的主要内容,根据各内容之间的相互关系和它们在德育实施过程中的不同地位,以及在其实施过程中德育对象和教育重点的差异,可以将德育结构体系规划为不同的类型,即政治主导型、思想主导型、道德主导型和心理主导型。每一种结构类型都有各自相应的核心内容,并通过这一核心内容来支配、带动和影响其他教育内容。可以说这四种结构类型,体现了德育实施过程中内容上的差异性和倾向性。一般来说合适的类型模式是由德育对象的实际情况和所要解决的具体问题来决定的。这就要求我们在德育过程中要注重针对性,避免教条主义和本本主义。

二、德育内容结构体系优化的标准

通过前文对德育内容体系及其结构类型的阐述,我们不难发现德育内容结构状况的好坏对德育实效性的大小和德育目标实现的程度将会产生直接影响。为了科学实施德育,有效实现德育目标和发挥德育的最佳功能,必须不断优化德育的内容结构。笔者认为德育内容体系结构的优化主要应该遵循以下原则:

(一)核心原则

所谓核心原则,就是说在德育内容体系结构的安排中要突出某项核心内容,这是由德育对象的不同特点所决定的,也是马克思主义关于具体问题具体分析这一基本原理在德育内容结构安排中的体现。核心内容的确定是能否实现德育目标和取得德育实效的关键。这里需要说明的是,我们讲德育的核心内容并不是忽视德育其他内容的合理作用,而是要将其他德育内容与核心内容有机地结合起来,来共同实现德育的目标。

(二)系统原则

德育内容体系结构的优化,需要在我们强调核心内容的同时还要善于完善其内容体系,努力提高德育的整体效应。系统原则便是这一要求的具体体现,也是对德育内容体系结构优化核心原则的有益补充。它是指在德育实施过程中,我们既要分清主次,突出重点,同时也不能忽视其他教育内容的辅助作用。否则德育内容结构体系的合理性和科学性将会受到质疑。当前情况下优化德育的内容体系结构就是要求我们德育工作者必须具有整体性思路,既要把思想教育、政治教育、道德教育和心理教育系统化为一个有机的德育内容体系,使其涵盖德育领域的各个方面,还要完善和拓宽思想教育、政治教育、道德教育、心理教育等每一个子系统的内容。

(三)过程原则

德育内容体系结构的优化是一个过程,我们必须用动态的视角来审视这一过程。恩格斯在揭示黑格尔哲学体系中辩证法的合理因素时指出:“—个伟大的思想,即认为世界不是一成不变的事物的集合体,而是过程的集合体。”因而,对于德育内容体系结构的优化,我们决不能仅仅满足于现阶段所取得的成就,应该将优化过程进行下去,并充分汲取每一阶段的有益成果,加快德育内容体系结构优化的速度。

(四)开放性原则

开放性是现代德育的特性之一,面向世界是德育发展的大趋势。人类道德本来具有共同性,社会道德的形成与发展,个体道德品质的形成发展,以及与此相联系的德育的发展、德育理论的发展和德育内容的发展都具有共同的方面。“随着经济全球化和信息时代的来临,世界上各个民族、各个国家早已打破了原有的界限,真正融合成一个有机的整体,学会关心、学会合作、环境保护、和平与发展等已属于全人类的道德要求。”因而,开放性原则成为当前实现德育内容体系结构优化的重要原则。

三、德育内容结构优化的具体路向

德育内容体系结构优化原则的设定为其最终目标的实现指明了方向,具体来说,德育内容结构优化的具体实施应从以下三个方面进行。

(一)突出德育的核心内容

突出德育的核心内容是德育内容体系结构优化主导性原则的具体体现。如前所述,德育内容虽然丰富多彩,但是各种教育内容的地位与功能并不是相同的。其中,政治教育是整个德育过程的政

治保障。因此,在德育内容实施过程中,必须始终以政治教育为主导。

德育过程坚持以政治教育为主导,就必须始终把理想信念教育作为德育的核心内容,对德育对象进行社会主义核心价值体系教育和科学发展观方面的教育。社会主义核心价值体系是新时期立足于社会主义经济基础之上的价值认同系统,它涉及经济、政治、文化、思想等社会生活的方方面面,集中体现了社会主义当前意识形态方面的本质属性;而科学发展观作为马克思主义中国化的最新理论成果,二者结合起来就为德育的正确发展方向提供了政治保障。因此,针对当前德育界普遍存在的那种德育应该淡化、弱化政治教育的思想,我们应该从根本看清其观点的“虚弱性”。纵观当今世界各国的德育历程,不难发现:尽管不同国家之间的阶级性质、意识形态方面存在着差异,但政治性始终是不同时期、不同国家德育的最显著特征。因而,将政治教育视为德育的核心内容,是由其客观历史地位决定的,也是德育自身特殊性的必然要求。

(二)完善德育内容体系

我们在强调政治教育作为德育核心内容的同时,对思想教育、道德教育以及心理教育也应予以足够的重视。前者是为了体现德育的根本意识形态属性和本质功能,后者则是德育能够发挥整体效应的保证。

首先,如前文所述,我们应该将德育的内容视为一个有机系统,思想教育、政治教育、道德教育和心理教育作为这个系统的有机组成部分。当前德育要适应社会主义市场经济条件下道德问题和心理问题日渐突出的形势,加大道德教育和心理教育的力度。这不仅仅是解决实际问题的需要,同时也是完善德育内容体系的需要,是实现德育整体效应的有力保证。其次,在强调德育的整体效应的同时,还要完善德育内容的每一个子系统,即在德育实施过程中要勇于拓宽思想教育、道德教育、政治教育以及心理教育每一方面的领域。

(三)一与时俱进,发展德育内容

与时俱进是指在对事物及其发展过程的认识中要善于把握规律性、富于创造性、体现时代性。这一思想反映到德育内容体系结构优化上来,就是要求我们在对德育内容结构进行优化时善于汲取古今中外有关德育方面的一切优秀成果,并对它们进行积极的扬弃,使德育内容能够真正伴随时代的发展而发展,这是我们新时期应当具有的基本德育理念之一。从当前我国德育内容体系建设的现状来看,尽管德育领域的众多学者对德育的现代化之思和德育的现代化之路已经进行了较多深入的探究,但总体来说这一进程仍然处于初级阶段,没有真正形成一种具有普遍性的德育现代化实践模式。笔者认为,当前要对德育内容进行优化和现代化改造,就要求我们思想上要与时俱进,实践中要善于创新发展德育内容,真正实现德育内容体系结构的优化。

软件体系结构研究 篇4

随着计算机技术的发展和应用的不断深入,软件系统的规模和复杂度日益增加,在软件设计过程中人们所面临的问题不仅仅是考虑软件系统的功能问题,而是面临要解决更难处理的可修改性,性能,可靠性等非功能性问题。特别是80年代以来,对软件适应变更的要求越来越高,所以对软件整体的设计已经超过了算法和数据结构,成为系统开发关注的主要问题。软件开发最大的风险来自需求变更,但一蹴而就搞定需求不现实,好的体系结构是易改动的基础。能否复用很重要,设计复用比代码复用更有用更难。因此,研究软件体系结构研究的能提高软件生产率和简化维护。提高软件生产率的关键在于软件相关部分的复用,而简化维护的关键是减少软件理解的成本和提高软件的质量,这就是研究软件体系结构的目的。

2 软件体系结构的概念

软件系统的规模在迅速增大的同时,软件开发方法也经历了一系列的变革.在此过程中,软件体系结构也由最初模糊的概念发展到一个渐趋成熟的技术。

1)1992年Perry和Wo1f在他们早期关于软件体系结构的论文中指出:软件体系结构是一组具有一定形式的结构化元素或称为设计元素组成。

2)1993年Shaw和Garlan认为软件体系结构是软件设计过程中的一个层次,这一层次超越计算过程中的算法设计和数据结构设计。

3)1994年Hayes Roth则认为软件体系结构是一个抽象的系统规范,主要包括用其行为来描述的功能构件和构件之间的相互连接、接口和关系。

4)1995年Garlan和Perry在IEEE软件工程学报上又采用如下的定义:软件体系结构是一个程序各构件的结构、它们之间的相互关系以及进行设计的原则和随时间进化的指导方针。

5)1996年Boehm和他的学生提出,一个软件体系结构包括一个软件和系统构件,互联及约束的集合。

6)1997年Ctements和Kazman在《使用软件体系结构》一书中给出如下的定义:一个程序或计算机系统的软件体系结构包括一个或一组软件构件、软件构件的外部的可见特性及其相互关系。

3 软件体系结构的现状

下面介绍几种常见的体系结构。

模型-视图-控制结构是交互式应用程序广泛使用的一种体系结构。它有效地在存储和展示数据的对象中区分功能模块以降低它们之间的连接度,这种体系结构将传统的输入、处理和输入模型转化为图形显示的用户交互模型,或者换一种说法,是多层次的Web商业应用;MVC体系结构具有三个层面:模型(Model)、视图(View)和控制(Controller),每个层面有其各自的功能作用。

模型层负责表达和访问商业数据,执行商业逻辑和操作。也就是说,这一层就是现实生活中功能的软件模拟;在模型层变化的时候,它将通知视图层并提供后者访问自身状态的能力,同时控制层也可以访问其功能函数以完成相关的任务。

视图层负责显示模型层的内容。它从模型层取得数据并指定这些数据如何被显示出来。在模型层变化的时候,它将自动更新。另外视图层也会将用户的输入传送给控制器。控制层负责定义应用程序的行为。它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作;在一个图形界面中,常见的用户输入包括点击按钮和菜单选择。在Web应用中,它包括对Web层的HTTP GET和POST的请求;控制层可以基于用户的交互和模型层的操作结果来选择下一个可以显示的视图,一个应用程序通常会基于一组相关功能设定一个控制层的模块,甚至一些应用程序会根据不同的用户类型具有不同的控制层设定,这主要是由于不同用户的视图交互和选择也是不同的。

在模型层、视图层和控制层之间划分责任可以减少代码的重复度,并使应用程序维护起来更简单。同时由于数据和商务逻辑的分开,在新的数据源加入和数据显示变化的时候,数据处理也会变得更简单。

软件体系结构风格是描述某一特定应用领域中系统组织方式的惯用模式。它反映了领域中众多系统所共有的结构和语义特性,并指导如何将各个模块和子系统有效地组织成一个完整的系统。按这种方式理解,软件体系结构风格定义了用于描述系统的术语表和一组指导构件系统的规则。

对软件体系结构风格的研究和实践促进了对设计的复用,一些经过实践证实的解决方案也可以可靠地用于解决新的问题。体系结构风格的不变部分使不同的系统可以共享同一个实现代码。只要系统是使用常用的、规范的方法来组织,就可使别的设计者很容易地理解系统的体系结构。例如,如果某人把系统描述为"客户/服务器"模式,则不必给出设计细节,我们立刻就会明白系统是如何组织和工作的。

下面是Garlan和Shaw对通用体系结构风格的分类:

1)数据流风格:

批处理序列;管道/过滤器

2)调用/返回风格:

主程序/子程序;面向对象风格;层次结构

3)独立构件风格:

进程通讯;事件系统

4)虚拟机风格:

解释器;基于规则的系统

5)仓库风格:

数据库系统;超文本系统;黑板系统

设计模式使人们可以更简单方便地复用成功地设计和体系架构。将以证实的技术表述成设计模式也会使新系统开发者更容易理解其设计思路。设计模式帮助你做出有利于系统复用的选择,避免设计损害了系统复用性。通过提供一个显示类和对象作用关系以及它们之间潜在联系的说明规范,设计模式甚至能够提高已有系统的文档管理和系统维护的有效性。简而言之,设计模式可以帮助设计者更快更好地完成系统设计。

一个设计模式描述了对于特定设计问题被验证的解决方案,它综合了所有开发者对这个问题所在领域的知识和见解;同时也是对于常见问题的可重用方案,它们一般适用于单个问题,但是组织在一起就可以提供整个企业系统的解决方案。J2EE平台就用到很多设计模式,列举如下:

1)前控制器。

2)控制器

3)视图

4)视图帮助

5)会话面

6)数据访问对象

7)值对象或传输对象

8)截取过滤器

随着软件体系结构的不断发展,出现了一种新型的体系结构即SOA。SOA被称为软件体系结构的划时代革命。

SOA是一种结构模型,它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。SOA的关键是“服务”的概念,W3C将服务定义为:“服务提供者完成一组工作,为服务使用者交付所需的最终结果。最终结果通常会使使用者的状态发生变化,但也可能使提供者的状态改变,或者双方都产生变化”。Service-architecture.com将SOA定义为:“本质上是服务的集合。服务间彼此通信,这种通信可能是简单的数据传送,也可能是两个或更多的服务协调进行某些活动。服务间需要某些方法进行连接。所谓服务就是精确定义、封装完善、独立于其他服务所处环境和状态的函数。”Looselycoupled.com将SOA定义为:“按需连接资源的系统。在SOA中,资源被作为可通过标准方式访问的独立服务,提供给网络中的其他成员。与传统的系统结构相比,SOA规定了资源间更为灵活的松散耦合关系。”Gartner则将SOA描述为:“客户端/服务器的软件设计方法,一项应用由软件服务和软件服务使用者组成……SOA与大多数通用的客户端/服务器模型的不同之处,在于它着重强调软件组件的松散耦合,并使用独立的标准接口。”Gartner相信BPM和SOA的结合对所有类型的应用集成都大有助益——“SOA极大的得益于BPM技术和方法论,但是SOA面临的真正问题是确立正确的企业意识,即:强化战略化的SOA计划(针对供应和使用)并鼓励重用。”虽然不同厂商或个人对SOA有着不同的理解,但是我们仍然可以从上述的定义中看到SOA的几个关键特性:一种粗粒度、松耦合服务结构,服务之间通过简单、精确定义接口进行通讯,不涉及底层编程接口和通讯模型。

4 软件体系结构存在的不足

尽管软件体系结构研究领域取得了若干成果,但在应用方面,软件体系结构仍然有很多可以改进的地方。N.Medvovonic认为,目前对软件体系结构的理解还仅限于直观、或当作稀奇事、或当作民间传说;语义丰富但不严谨。体系结构似乎没有解决实际问题。由此可见,若要有效地指导软件工程实践、为软件开发提供一个好的结构及其设计结构的指导原则,软件体系结构研究还有若干问题需要解决。比如缺乏统一的软件体系结构的概念,各种软件体系结构的不易操作性,ADL繁多,缺乏统一的ADL支持等等。

5 前景展望

目前,软件体系结构领域研究非常活跃。随着研究的不断深入,软件复用的层次越来越高,人们在开发新的系统时不必总是重复别人已经创造的东西,而是可在软件开发中复用已有成果,这样可以把注意力投入到软件新增功能上,提高软件开发效率。

针对软件体系结构发展趋势,Clements预测在未来的5~10年内软件体系结构研究将围绕如下5个方向展开:体系结构创建与选择;体系结构表示;体系结构分析;基于体系结构开发;体系结构演化.而Perry在IFIP 2000年世界计算机大会主题演讲中认为,最为重要的3个研究方向是:体系结构风格、体系结构连接件和动态体系结构。

摘要:软件体系结构目前是软件界研究的一个热点,为什么要研究软件体系结构,软件体系结构目前的现状如何,这些都是该文讨论的问题。

关键词:软件体系结构,重用,模式

参考文献

[1]王霞俊.浅谈软件体系结构[J].常州轻工职业技术学院学报,2007(1).

[2]邓伦丹,罗丹,汪伟.几种主要的软件体系结构风格的分析[J].科技信息,2007(32):102.

[3]孙昌爱,金茂忠,刘超.软件体系结构研究综述[J].软件学报,2002(13)

[4]秦建超,杜友福,孟珍伟.浅谈软件体系结构科技信息[J],2007(2)

[5]Michale Kircher.面向模式的软件体系结构[M].1版.北京:机械工业出版社,2005:5-6.

[6]The Boeing Company-Defense and Space Group.STARS conceptual framework for reuse processes,lockheed martin tactical defense system.STARS Program Technical Report,1994.

Oracle体系结构2 篇5

当把一个关闭的数据库手动启动并装载和打开,从而使数据库变得有效时,分别经历的阶段如下:

l启动实例而不装载数据库

l数据库装载

l数据库打开

1.启动实例,此时执行如下操作:

l从OS指定位置处检索服务器参数文件,如果没找到则通过启动命令中是使用SPFILE还是PFILE替代默认的文件使用该文本初始化参数文件

l从初始化文件中读取初始化参数

l基于初始化参数值分配SGA

l启动Oracle后台进程

l打开警告日志和跟踪文件,并写入警告日志文件

此阶段数据库与实例没有关联,可以执行数据库创建、备份和恢复的等特定任务,

2.数据库装载,其特征如下:

l获取初始化参数文件中指定的控制文件参数(CONTROL_FILES)的值,打开控制文件并从其中找到数据文件和联机重做日志文件的名字

l在一个已装载的数据库中,数据库是关闭的,仅仅DBA能够访问,管理员可以利用本特点在需要完成特定任务时保持数据库装载状态

3.数据库打开,打开后的数据库是可访问的,执行如下操作:

l打开除撤销表空间外其它表空间中的数据文件

l获取撤销表空间

l打开联机重做日志文件

数据库关闭

当把一个打开的数据库手动关闭,使其从有效状态进入无效状态从而执行一些维护任务时,分

别经历的阶段如下:

l数据库关闭

l数据库卸载

l数据库实例关闭

1.关闭模式

有4种关闭模式,其行为是不同的,如下表:

行为

ABORD

IMMEDIATE

TRANSCATIONAL

NORMAL

允许新用户连接?

NO

NO

NO

NO

等待直到当前会话结束?

NO

NO

NO

YES

等待直到事务会话结束?

NO

NO

YES

YES

执行一个检查点并关闭文件?

NO

YES

YES

YES

可能的关闭语句分别如下:

lSHUTDOWN ABORD

用于紧急情形,例如其它的关闭方式无法成功关闭时。强制模式的关闭速度最快,但再重新打开数据库时速度也是最慢的,因为要支持一个恢复过程以确保数据的一致性。

1.关闭模式

可能的关闭语句分别如下(续):

lSHUTDOWN IMMEDIATE

立即模式的关闭速度仅次于ABORD,此时Oracle会中断任何正在执行的SQL语句并且将连接的用户断开;同时活动事务也被中断,未提交的修改被置成回滚。

lSHUTDOWN TRANSACTIONAL

事务模式防止新事物的启动,但会等待当前所有事务执行完成。自然地,关闭时间依赖于当活动前事务执行的时间

lSHUTDOWN NORMAL

正常模式是默认的关闭模式,会等待所有已连接用户断开连接后关闭。

2.数据库关闭三阶段

(1).关闭阶段:

数据库关闭过程中隐含的操作取决于数据库是正常关闭还是非正常关闭:

1).正常关闭

即没有使用ABORD,此时Oracle会把SGA中的数据写入到数据文件和联机重做日志文件中,接着会关闭联机数据文件和重做日志文件。所有的脱机表空间中的脱机数据文件已经被关闭,如果此时再重新打开数据库,则脱机表空间仍然会保持脱机状态。

在这个阶段,数据库已经被关闭并且不能正常被访问,而控制文件依然还是保持被打开状态。

2.数据库关闭三阶段

(1).关闭阶段(续):

1).非正常关闭

即使用了ABORD或数据库发生了非正常的终止,此时当前打开的数据库实例会被关闭并且会立即关闭数据库。SGA中的缓冲数据不会被写入到数据文件和联机重做日志文件中。当接下来重新打开数据库时,Oracle会自动地先恢复该实例。

(2).卸载阶段

在数据库关闭以后执行本阶段,此阶段Oracle会从实例中卸载数据库。数据库卸载后,Oracle会关闭控制文件,但是实例仍然会保留在内存中。

2.数据库关闭三阶段

(3).实例关闭阶段

这是数据库关闭的最后一个阶段,当数据库实例关闭以后,内存中的SGA会被清除,后台进程也会被停止。

检查点

检查点是在协调数据库关闭、实例恢复和常规操作一致性方面非常重要的一个循环处理机制。检查点有两层相关的含义:

l检查点是一个指示检查点位置的数据结构,当实例恢复时它是在重做日志流中的SCN(系统该变号)

l当将数据库缓冲区中的数据写入到磁盘时检查点是一种写事件

1.检查点的目的包括:

l缩短因介质或实例故障恢复所需要的时间

l确保缓冲区的数据规则的写入到硬盘

l确保在一致性的关闭时将提交的数据写入到磁盘

2.Oracle实例何时初始化检查点

检查点进程(CKPT)用来将检查点写入到数据文件头部和控制文件中,一般包括以下几种情形:

l线程检查点

在某个特点的目标任务前,数据库在一个特定的线程中将所有被重做日志修改的缓冲区写入到磁盘中。一组数据库中所有实例检查点(检查点集合)称为数据库检查点,数据库检查点会在以下几种情况下发生:

u并发的数据库关闭

u联机重做日志切换

uALTER SYSTEM CHECKPOINT语句执行时

uALTER DATABASE BACKUP BEGIN语句执行时

2.Oracle实例何时初始化检查点(续)

l表空间和数据文件检查点

表空间检查点是一组为表空间中每一个数据文件服务的检查点集合,将表空间设置为脱机、只读以及收缩数据文件或者执行ALTER DATABASE BACKUP BEGIN语句时会产生

l增量检查点

增量检查点是一类线程检查点,当联机重做日志发生交换时使用增量检查点来部分的消除对大数据块的写入。数据库写入进程(DBWn)至少每3秒钟会检查一次其是否要执行数据写入工作,当DBWn写入脏数据,它将提取检查点的位置,从而产生一个CKPT将检查点的位置写入到控制文件,但不会写入到数据文件的头部。

实例恢复

1.实例恢复的目的

当时实例失败时,实例恢复能确保数据库保持在一个一致性状态,因为无论Oracle数据库如何管理数据库的变化,都可能发生数据库文件不一致的情况。

重做日志线程(实例生成的重做日志)是实例产生的所有发生了变化的记录。单一实例的数据库具有唯一的一个重做日志线程。

事务提交时,日志写入进程(LGWR)将保留在内存的重做日志实体和事务的系统改变号(SCN)写入到联机重做日志中,然而当DBWn工作时,DBWn都会将修改了的数据块写入到数据文件中,因此未提交的修改会临时保存在数据文件中而已经提交的修改却不再保存在数据文件中。

1.实例恢复的目的(续)

当由于SHUTDWON ABORD或其它原因导致打开的数据库发生实例失败时,会发生如下情况:

l提交的数据块仅仅写入到的联机重做日志而没有写入到数据文件中,这些变化必须要应用到数据库中,即写入到数据文件中,否则数据不一致

l事务失败时,数据文件中可能包含未提交事务的数据,而这种改变应该被回滚以保持数据库的一致性

实例恢复就是用联机重做日志文件来同步当前的联机数据文件,以确保它们是一致的。

2.何时会执行实例恢复

当数据库实例打开为读/写模式时,控制文件中的重做日志线程被标记为打开;如果数据库被关闭时是一致(日志文件和数据文件的一致)的,则日志线程被标记为关闭。实例恢复就是依据日志线程的状态的。如果日志线程的标记是打开的,但是却没有活动实例的线程队列来与日志线程通讯,则需要进行实例恢复。

以下两种情况下,Oracle会自动恢复实例:

l单一实例或集群实例数据库中实例失败后的第一次打开

l集群实例环境中,部分实例失败

l

3.实例恢复中检查点的重要性

实例恢复使用检查点来确定那些修改要应用到数据文件中去。如果已提交修改的SCN小于检查点SCN,则检查点的位置将被写入到数据文件中。

在实例恢复期间,数据库必须将检查点位置和重做日志线程之间的修改应用到数据文件中。部分改变可能已经写入到数据文件中,然而仅仅那些系统该变号小于检查点位置的会被写入磁盘。

4.实例恢复阶段

1).缓存恢复(或称为前滚阶段)

首先是缓存恢复和前滚(向前滚动)阶段,此时会将联机重做日中记录的所有改变重新应用到数据文件中。由于需要回滚的数据也被记录在联机重做日中,因此向前滚动也会产生相应的回滚段。

前滚会将联机重做日中所有记录了要求回滚的数据一直向前回滚直到前面某个时刻的状态。完成前滚后,数据文件中就包含了所有联机重做日中已提交修改的数据,数据文件中也就不再包含联机重做日或数据文件中没有提交的数据了。

2).事务恢复(又称为回滚)阶段

前滚完成后,任何未提交的修改都会被撤销。Oracle将SCN小于检查SCN的已提交修改写入磁盘。针对实例失败前写入到数据文件中的未提交修改,Oracle会申请撤销块用来执行回滚操作。

下图说明了前滚和回滚两个阶段。

参数文件

启动实例可以使用服务器参数文件(推荐)也可以使用传统的文本初始化文件。这些文件中包含的都是一系列的配置参数。

1.初始化参数

不同的环境中,Oracle都提供了很多初始化参数,而大部分参数无需修改,只有很少部分参数需要进行设置。

1).初始化参数的功能分组

l文件和目录名字的参数

l进程的限定数、数据库资源或者数据库自身的参数

l设定容量大小的参数,如SGA的大小参数

2).基本及高级参数

初始化参数分为基本参数和高级参数,大约30个左右。基本参数包括数据库的名字、控制文件的位置、数据库块大小、撤销表空间等。在极少数情况下,需要数据库专家来调整高级参数以获取更好的数据库性能以满足一些独特的需求。

2.服务器参数文件

即数据库管理的初始化文件,具有如下特性:

l必须在数据库服务器主机上,且数据库只有一个服务器参数文件

l只能被数据库服务器读取,而不能被客户端读取

l存储在数据库服务器主机上的服务器参数文件是持久的。对参数的修改,不但对当前实例有效,而且数据库关闭和重新启动后依然有效

使用服务器参数文件能够消除需要维护多个本地文本初始化参数文件的问题。

3.文本初始化参数文件

即传统的初始化文件,是包含了一些列初始化参数的文本文件,特点如下:

l数据库关闭或启动时,文本初始化参数文件必须驻留在连接到数据库的那台客户端的机器上

l是文本格式而非二进制格式的

lOracle只能读而不能写该文件,对参数的修改必须手工进行

l使用ALTER SYSTEM修改参数只能在当前实例中有效。如果想要对参数的修改在重新启动数据库后也有效,必须要手工修改该文件然后重启数据库

下图是使用多个文本初始化文件的例图:

4. 初始化参数的修改

参数又可分为静态参数和动态参数,其特征如下:

特征

静态

动态

需要修改参数文件(文本和服务器)?

YES

NO

修改生效前需要重新启动实例?

YES

NO

在《Oracle数据库参考》中初始化参数项描述为“可变”?

NO

NO

修改只针对数据库和实例

YES

NO

DB_BLOCK_SIZE、DB_NAME、COMPATIBLE是静态参数。动态参数又分为会话级的和系统级的两组,回话级的仅仅在当前会话中有效(如NLS_DATE_FORMAT),系统级的不仅在当前会话中而且在整个数据库中都是有效的(如MEMORY_TARGET)。

4. 初始化参数的修改

可以使用ALTER SYSTEM SET语句来设置系统级参数所设置的范围:

lSCOPE=MEMORY

参数的改变仅仅影响当前实例,数据库重新启动后失效

lSCOPE=SPFILE

参数的改变写入到服务器参数文件,并且在当前实例中生效,必须重启数据库方能生效

lSCOPE=BOTH

是MEMORY和SPFILE的结合体

诊断文件

Oracle使用故障诊断部件来预防、监测、诊断和解析数据库的问题,这些问题一般包括代码的bug、元数据损坏或客户数据损坏。故障诊断部件的目的包括:

l预先侦测问题

l当侦测到问题时,减小损坏范围并中断数据库服务

l缩短问题诊断和解决的时间

l简化Oracle技术支持和客户之间的交互过程

1.自动诊断信息库

ADR(Auto Diagnostic Repository)是一个基于文件的资料库,用来存储跟踪文件、警告文件和数据库健康监测报告等资料,其特征如下:

l具有统一的目录结构

l具有一致的诊断数据格式

l提供统一的工具集

这些特征能够保证Oracle技术支持与客户进行高效的交互。ADR是在数据库之外的,因此当物理数据库失效后Oracle还能访问管理ADR。数据库创建前可以创建ADR。

1).工作机制

ADR采用问题预先跟踪机制,而当危险错误发生时会产生内部错误。ADR跟踪每个问题时都有一个问题键(文本描述的)。当同一个问题发生多次时,ADR对每一次问题的发生都创建一个带时间戳的事件,事件具有事件ID(数字型)。事件发生时,ADR将事件警告发送给OEM。对问题的诊断和解决一般都是由事件警告入手的。

由于一个危险错误多半表现在为在短时间内发生多次,即具有泛滥性。如果ADR找到了事件的起始,就会申请使用灾害控制机制来控制事件的继续发生。事件泛滥控制会生成警告日志。ADR通过这种方式能够通知到管理员危险错误正在发生。

2).ADR结构

ADR base是ADR的根目录,ADR base可以包含多个ADR目录用来存放不同的诊断数据,如警告、核心数据、事件、跟踪信息和其它数据等。

预警日志

每个数据库都有预警日志,是xml格式的,包含的内容如下:

l内部错误(ORA-600)、块损坏错误(ORA-1578)和死锁(ORA-60)

l管理操作如DDL语句

lSQL*PLUS命令如STARTUP、SHUTDWON、ARCHIVE LOG、RECOVERY

l自动刷新物化视图时的错误

跟踪文件

跟踪文件是一个用来研究分析问题的管理员文件,

1.跟踪文件的类型

每个服务器进程和后台进程都会周期性的写一个相关的跟踪文件,其内部是进程的环境、状态、活跃性或者错误。

SQL跟踪也能灵活的创建跟踪文件,用来记录个性化的SQL语句执行信息。如果要跟踪客户标示、服务、模块、动作、会话、实例和数据库,则可以使用OEM或者DBMS_MONITER包。

转储(dump)是一类特殊的跟踪文件。鉴于跟踪往往是连续的输出,转储就是在某个时间点上对某个事件的诊断信息进行输出。当事件发生时,数据库中写入一个或多个转储至事件目录(专门创建的)。

2.跟踪文件的位置

ADR跟踪文件存储在跟踪目录下面,文件名是依赖平台的,扩展名是.trc。一般是后台进程跟踪文件名带有SID、后台进程名字和操作系统进程号,如mytest_reco_10355.trc。服务器进程跟踪文件名带有SID、“ora”字符串和操作系统进程号,如mytest_ora_10304.trc。

有时跟踪文件中有相应的跟踪映射文件( .trm )。 这些文件包含有关跟踪文件的结构信息,用于搜索和导航。

基本内存结构

1.SGA

一组共享内存结构,包含实例的控制信息和数据。可以为所有的服务器进程和后台进程所共享。

2.PGA

进程所专用的包含实例控制信息和数据的非共享内存区域。当一个进程启动时它创建一段PGA,因此其也是为某个服务

器或后台进程服务的,一组PGA构成总的PGA或者称为实例PGA。数据库PGA初始化参数是为实例PGA而非单个PGA所设置的。

3.UGA

UGA(用户全局区)是为用户会话相连的一段内存区域。

4.软件代码区

用来存储正在运行或者准备运行的代码的一部分内存,Oracle的代码存在软件代码区,是与用户程序完全不同的。

Oracle内存管理模式

1.自动内存管理(AMM)

设定实例内存的目标大小,实例依据PGA和SGA的实际需要自动分配和自动设定内存的大小。这是默认的内存管理方式

2.自动共享内存管理(ASMM)

这种内存的管理方式是部分的自动内存管理机制,通过设定SGA的目标大小,而对PGA的管理可以选择给PGA设置一个总的大小也可以选择个性化的方式来管理PGA。

3.手工内存管理

这种模式不用设置总的内存大小,而是逐一设置PGA和SGA实例的各个参数。

UGA

UGA是分配给会话变量的内存,包括登录信息以及其它数据库会话必须的信息。本质上UGA存储的是会话的状态。例如会话装载一个PL/SQL包

到内存中,则UGA包含包的状态,这些状态是包变量在某个特定时刻的一系列的值。当包中子程序改变了变量的值,则包的状态也会发生改变。默认情况下,包中变量会在会话的生命期内保持一个唯一的状态。

OLAP页池也存储在UGA,池管理OLAP的页(等价于数据块)。OLAP会话开始时分配页池、而会话结束时释放页池。

会话在其生命期内UGA必须是有效,因而在共享服务器连接时UGA不能放在PGA区域,其原因是PGA是分配给单个进程的。因为在共享服务器连接时UGA存在SGA而在专用服务器连接时放在PGA。

PGA

l分配给OS进程或线程的、且不可为其它OS进程或线程所共享因其进程专用性,故不能是在SGA中分配的

lPGA是一个内存堆,其中包含有专用或共享服务器进程所需的会话变量;服务器进程从PGA中分配内存结构

1.私有SQL区域

l保存解析后的SQL语句以及其它会话特定要求的信息

l服务器进程执行SQL语句或PL/SQL代码时,使用私有SQL区域干三件事:绑定变量值、查询执行的状态信息、查询执行工作区.执行完成后客户端可以使用一个游标指向私有SQL区域,如下图:

SGA

1.数据库高速缓冲区

l又称为高速缓存缓冲区,用来存储从数据文件的数据块中读取的数据的副本

l是最主要的内存地址,缓存管理器用来临时缓存当前或最近读取的数据块

l所有的连接用户均可访问本区域

Oracle使用高速缓存缓冲区来达到如下两个目的:

l优化物理I/O

l将经常被访问的块保存在缓存中,而将很少访问的块写入到磁盘

1.数据库高速缓冲区

(1).高速缓冲区的状态

l未使用状态:从未被使用或当前未使用的内存,最容易被数据库使用

l干净状态:早前用过且当前包含一个某个时间点上具有读一致性的数据块的内存;干净的含义是块中的数据是“干净”的以至于不需要检查点;数据库能保留当中的块并重新使用它

l脏状态:包含被修改过且还未写入到磁盘的数据的内存;脏状态的内存在重新使用前必须要设置检查点

每个缓冲区的访问模式都可能有两种:“保留”的和“自由”的。缓存中的缓冲区被“保留”以便用户会话能访问它。同一时刻不能有多个会话修改同一个“保留”缓冲区。

(2).高速缓冲区的模式

客户端请求数据时,Oracle从数据库缓冲区中获得缓存,模式包括:

l最近性模式:最近性模式又称为数据块模式,是指检索的数据是从高速缓冲区中检索的。如某个未提交的事务更新了两行数据,然后一个最近性模式化能从刚刚未提交的行中获取数据块。这种模式一般用来处理更新语句。

l一致性模式:从读一致性版本的数据块中检索数据,此模式也可以从撤消数据中读取数据。如某个未提交的事务更新了两行数据,当另外一个会话请求这两行数据时,数据块将使用撤消数据创建一个不包含未提交数据的读一致性数据版本块给该请求。通常,此模式是数据块检索采用的模式。

(3).高速缓冲区的I/O

先在内存中执行逻辑I/O,如果请求的缓存不再缓冲区,则执行一个物理I/O,从而从磁盘或闪存缓冲中获取还数据,然后再执行逻辑I/O.

l缓冲区写入器:DBWn定期将使用很少的或脏数据写入磁盘,情形有:

l服务器进程找不到干净的缓冲区用来装载准备新读入的数据时

l因实例开始恢复而必须预先提取检查点(存储在重做日志线程中)时

l表空间被设置成只读或者脱机时

l缓冲区读出器:当干净的或未使用的缓冲区数量很小时,数据库就必须从缓存缓冲区中移除一部分缓存。其算法取决于闪存缓存是否启用,如下描述:

l缓冲区读出器(续):

l闪存缓存禁用时:数据库重新使用每一个干净的缓存并用新数据覆盖它。如果对缓冲区的覆盖需要延迟,则数据库必须先从磁盘读出它

l闪存缓存启用时:DBWn能将干净缓存的主体写入到闪存缓存,并且允许在内存中对它进行重用。在主内存中,数据库将该缓存的头保存到一个LRU列表中用来跟踪和定位闪存缓存中的缓冲区主体。如果对缓冲区的覆盖需要延迟,则数据库可以从闪存缓存中而不是从磁盘读出它

当客户端进程请求缓存时,服务器进程在高速缓存缓冲区中搜索缓存,如果搜到缓存,则称为缓存命中,服务器进程的搜索顺序如下:

l在整个高速缓存缓冲区中搜索缓存,如果找到则对该缓存执行逻辑读

l在闪存缓存的LRU列表中搜索缓存头,如果存在,则对闪存缓存执行一个优化的物理读

l如果上述均未搜索到,则称为缓存未命中,将接着执行如下步骤:

当客户端进程请求缓存时(续):

l执行物理读从数据文件中将块读入内存

l执行逻辑读,再读入缓存

(4). 缓存池

缓存池是缓存的集合,数据库高速缓存缓冲区被划分为一个或多个缓冲池。包括以下几种可能:

l默认池(Default):该池是块通常缓冲的位置。 除非手动配置独立的缓存池,否则默认池是唯一的缓冲池。

l保存池(Keep):用于频繁访问的块,但是如果在默认池中空间缺乏时这些块会被收回。保留池的目的是将对象保存在内存中,从而降低I/O

l回收池(Recycle):循环使用的缓存池,用于访问率很低的块,用来防止这些块占用宝贵的内存资源

2.重做日志缓冲区

是一个循环的缓冲区,用来存放重做日志条目,重做日志条目中存储了用来重建、撤消或者DML/DDL语句对数据库所做的修改信息。数据库恢复就是使用重做日志条目来恢复数据文件的。

数据库从用户内存中拷贝重做日志条目到重做日志缓冲区中。重做日志条目在缓存中占据连续的顺序空间。LGWR(Log Writer)将重做日志缓冲区写入到磁盘上的联机重做日志文件(顺序写入)。

3.共享池

SGA保留的区,用来存储解析了的SQL、PL/SQL代码、系统参数和数据字典。数据库中的任何操作几乎都与共享池有关。

(1).库缓冲区

用来存储可执行的SQL或者PL/SQL代码。本区域包含SQL和PL/SQL区域、控制结构(如锁)、库缓存的句柄。在共享服务器结构下,还包括私有的SQL区域。

当SQL语句执行时,数据库试图重用以前执行过的代码,如果解析后的代码在库缓存中存在且能够被共享,则重用它,称为软解析或库缓存命中。否则,数据库重新构造一个可执行版本的应用代码,称为硬解析或者库缓存未命中。

1).共享SQL区域

数据库使用共享SQL区域处理SQL语句的第一次执行,本区域对所有用户均有效且包含语句解析树和执行计划。每个唯一的语句只有唯一的一个共享SQL区域。

2).私有SQL区域

每个会话发布一个SQL语句时均有一个私有SQL区域。如果多个用户发布的是相同的SQL语句,则它们的私有SQL区域均指向同一个共享SQL区域。

(2).数据字典缓冲区

用于存放数据库系统自身信息的缓冲区,如表、视图、结构、用户等。SQL语句解析期间,数据字典会被频繁的访问。

由于数据字典被访问的频率非常高,因此其中又设计了两种内存位置:

1).数据字典内存区:放的是数据库对象的信息,而且行缓存也能使用本区域

2).库内存区:将数据字典信息放在本缓冲区供所有服务器进程共享

4.大对象池

大对象池是一个可选的缓冲区,管理员可根据需要对其进行配置。大对象池还可以用来提供一个大的区域供数据库备份和恢复使用

5.Java池

Java池用来存储特定会话的Java代码和数据,是为JVM准备的,其中包括Java对象。

6.流池

流池存储缓存队列消息并且为Oracle流捕获进程或申请进程。流池是Oracle流专用的。如果没有特别指定,流池开始时大小是0,其大小的增长是根据Oracle流的需要动态增加的。

7.固定的SGA

固定的SGA是一种内部事务管理的区域,例如:

l后台进程需要经常访问的数据库和实例的常规信息

l进程之间的通讯信息,如锁的信息

固定的SGA是有Oracle数据库自身设定的并且不能手工修改。

客户端进程

l不同于Oracle后台进程和服务器进程,客户端进程不能直接对SGA进行读写,而是通过服务器进程来实现

l发起客户端集成的主机往往不是服务器主机

l连接:连接是客户端进程和实例间的一种物理通讯链路

l会话:会话是数据库实例内存中描述登录到数据库当前用户状态的逻辑实体

l一个用户可以拥有多个会话,某个会话中的提交不会影响其它会话的事务

服务器进程

服务器进程用来处理客户端进程与实例的连接。一个客户端进程总是与一个单独的服务器进程进行通讯。其负责的主要任务如下:

l解析和运行应用程序发布的SQL语句,也包括创建和执行查询计划

l执行PL/SQL代码

l从数据文件中将数据库读入到数据库高速缓冲区中(相反的写过程是由DBWn完成的)

l将结果返回给客户端应用

1.专用服务器进程

在专用服务器配置下,一个客户端能且仅能连接一个服务器进程,服务器进程也只能在客户端连接持续期间为其专一的客户端进程服务,类似一夫一妻制。

2.共享服务器进程

在共享服务器配置下,客户端应用是通过网络连接到服务器进程适配器而不是服务器进程的。适配器从连接客户端处收到请求后将其放在大对象池中的请求队列。第一个可用的共享服务器进程从请求队列处获得请求并进行处理,然后将处理完的结果放到适配器的响应队列中,接着适配器进程监视该队列并将结果转发给客户端。类似于大医院的分诊台

后台进程

1.PMON

进程监视进程,又称进程监视器,它监视其它后台进程并对服务器进程或进程适配器的意外中断进行恢复。PMON用来清除失效的用户进程、释放进程用户资源。如PMON重置活动事务表的状态、不再需要的锁、从活动进程列表中清除其进程ID。

2.SMON

系统监视进程,又称系统监视器,它负责多个系统级的清除任务,包括:

l实例启动时如果需要执行实例恢复,则执行之

l实例恢复期间由于数据文件是只读的或者表空间处于脱机状态引起的事务中断,待表空间联机后,SMON负责恢复这些跳过的中断事务

l清除不再使用的临时段

l对于数据字典管理的表空间,接合自由区

SMON定期检查哪儿需要它,其它进程在需要它时可以调用它

3.DBWn

数据库写入进程,又称数据库写入器,它负责将数据库高速缓冲区中被修改的缓存写入到磁盘。一般一个数据库写入进程(DBW0)即能满足大部分的数据库需求;但在多处理器服务器上,还可以配置DBW1..DBW9和DBWa..DBWj来提升数据库性能。下述情况下,DBWn将脏缓存写入磁盘:

l服务器进程扫描整个缓存后,怎么也找不到干净可用的缓存时。DBWn如果在处理其它操作时,其执行写入是异步的

lDBWn周期性的将缓存写入一个预置的检查点

4.CKPT

检查点进程使用检查点信息更新控制文件和数据文件的头,并且通知DBWn将块写入数据文件。检查点信息包括检查点的位置、SCN、联机重做日志文件中要开始恢复的位置等。

5.MMON

可管理监视进程,执行很多与AWR(自动工作负载信息)相关的工作。例如当一个度量超出其阀值时的写、执行快照等。

6.LGWR

日志写入进程,又称日志写入器,负责管理重做日志缓存。一般是将用户所做的修改写入日志文件,等到了一定时候再写入数据文件。LGWR将缓存中部分连续的区域写入到联机重做日志文件中。Oracle通过分散修改数据库缓存任务来实现脏缓存写入磁盘的分散性,以及通过将快速有序的日志文件写入磁盘来提高其性能。下述情况下,LGWR会将自上次写以来所有拷贝到缓存中的日志条目写入日志文件:

l用户提交了一个事务时

l联机重做日志切换时

l自上次写以来时间达到了3秒时

l重做日志缓冲区达到了1/3或者包含了1M缓存数据时

lDBWn必须将修改的数据写入磁盘时

6.RECO

恢复进程是在分布式数据库用于自动解决失败的分布式事务的。

7.ARCn

当日志切换时,ARCn(归档日志进程)将联机重做日志拷贝到脱机的存储器中。

ARCn仅仅在归档日志模式化且自动归档选项打开时有效。属于可选进程。

8.作业队列进程

是一种后台工具进程,包括CJQ0和Jnnn,前者是作业调度进程,后者是任务队列从属进程。作业队列进程是Oracle用来运行后台任务的,一般的处理方式是批处理。Oracle对其的管理是动态的。也属于可选进程。

9.FBDA

闪回数据归档进程将跟踪表中的历史行数据归档到闪回数据归档资料中。当事务中包含跟踪提交的DML时,FBDA将预先的行数据(未提交前)存储在闪回归档资料中。FBDA也可以保存当前行的元数据。也属于可选进程

10.SMCO

空间管理协调进程管理多个空间管理相关的任务,如预先的空间分配和空间回收,也属于可选进程

习题

1.Oracle启动和关闭分别分几部,每一步都执行什么?关闭有哪几种模式,其差异点是什么?

2.什么是检查点?Oracle使用检查点的目的是什么?线程检查点和增量检查点有什么相同点和不同点?

3.请登录OEM,浏览参数文件中的参数,并查看联机的帮助说明。

4.手工绘制实例的SGA,并逐一解释每个区域的目的和作用

5.请解释DBWn和CKPYT的关系,并解释LGWR的工作机制。

软件体系结构的层次性 篇6

关键词:体系结构;分层;OSI

中图分类号:TP311 文献标识码:A文章编号:1007-9599 (2011) 07-0000-01

The Hierarchy of SoftwareArchitecture

Li Qiang,Yang Wenqing

(Jiangxi BlueSky University,Ministry of Public Education,Nanchang330098,China)

Abstract:This article mainly introduces software architecture the basic thought that carries on the layer division,has comprehensively analyzed the architecture division layer necessity,the corresponding rules and the good and bad points.

Keywords:Architecture;Stratify;OSI

20世纪90年代以来,随着计算机网络技术的发展和成熟,特别是Internet的普及,将应用扩展到局域网、广域网,甚至Internet已成为用户的普遍需求,另一方面,随着应用的拓展和系统规模的扩大,计算机软件的复杂程度也在不断地增加,软件体系结构在软件设计和开发过程中所起的作用越来越重要,采用层次式软件体系结构的设计思想也越来越受到人们的重视。

一、软件体系结构的概念

虽然软件体系结构已经在软件工程领域中有着广泛的应用,但迄今为止还没有一个被大家所公认的定义。许多专家学者从不同角度和不同侧面对软件体系结构进行了刻画,其中一个较为典型的定义是由Mary Shaw和David Garlan所提出来的,他们认为:软件体系结构是软件设计过程中的一个层次,(即不但软件体系结构具有层次性,从整体上来看软件体系结构本身也是作为软件设计过程中的一个层次)只不过这一层次超越计算过程中的算法设计和数据结构设计。

二、软件体系结构的层次

“分层”可将庞大而复杂的问题,转化为若干较小比较易于研究和处理的局部问题。分层是表示将功能进行有序的分组:应用程序专用功能位于上层,跨越应用程序领域的功能位于中层,而配置环境专用功能位于低层。层的数量与组成取决于问题领域和解决空间的复杂程度。

从整体上看一般可以分为三个层次:客户端层、中间层和数据源层。

1.客户端层是将数据呈现给用户或处理用户输入的应用程序或系统一部分。客户端也称为前端,它并不执行数据函数,而是通过输入向服务器请求数据,然后以一定的格式显示结果。

2.中间层是用户接口或Web客户端与数据库之间的逻辑层。

3.数据源层是用来控制你程序的流程。

(一)分层规则

分层是从逻辑上将一个完整的系统划分成许多个子系统的集合,而层间关系的形成必然要遵循一定的规则。通过分层,可以限制子系统间的依赖关系,使系统以更松散的方式耦合,从而更易于维护。其具体规则如下:

1.可见度。各子系统只能与同一层及其下一层的子系统存在依赖关系。

2.易变性。最上层放置随用户需求的改变而改变的元素。最底层放置随实施平台的改变而改变的元素。中间的夹层放置广泛适用于各种系统和实施环境的元素。如果在这些大类中进一步划分有助于对模型进行组织,则添加更多的层。

3.通用性。一般将抽象的模型元素放置在模型的低层。如果它们不针对于具体的实施,则倾向于将其放置在中间层。

分层反映实体模块之间的依赖关系,层数并不是越多越好,适当最好。对于小型系统,三层就足够了。对于复杂系统,通常需要5-7层。(二)采用层次系统的优缺点

层次系统有许多可取的属性:

1.系统的开发和设计可以逐步的分层次的进行,从底层的简单的功能逐步建立高层的复杂和抽象的功能。这样就可能把一个复杂的系统按递增的步骤进行分解;

2.支持功能增强,因为每一层至多和相邻的上下层交互,因此功能的改变最多影响相邻的上下层;

3.支持重用。只要提供的服务接口定义不变,同一层的不同实现可以交换使用。这样,就可以定义一组标准的接口,而允许各种不同的实现方法。

但是,层次系统也有其不足之处:

1.并不是每个系统都可以很容易地划分为分层的模式,划分清晰、逻辑上一致的层次是非常困难的(OSI的失败和TCP/IP的成功说明了这一点);

2.严格的层次调用结构会降低系统的性能;

3.很难找到一个合适的、正确的层次抽象方法。

(三)分层协议的体系结构

(Open Systems Interconnection)简称OSI,OSI标准采用的方法是将整个庞大而复杂的问题划分为若干个容易处理的小问题,这就是分层的体系结构方法。OSI是分层体系结构的一个实例,每一层是一个模块,用于执行某种主要功能,并具有自己的一套通信指令格式。根据分而治之的原则,OSI将整个通信功能划分为七个层次,划分层次的主要原则是:

1.网中各结点都具有相同的层次;

2..不同结点的同等层具有相同的功能;

3.同一结点内相邻层之间通过接口通信;

4.每一层可以使用下层提供的服务,并向其上层提供服务;

5.不同结点的同等层通过协议来实现对等层之间的通信。

虽然OSI在法律上已经成为国际标准,然而却由于OSI的协议实现起来过分复杂,且运行效率很低以及OSI的层次划分也并不太合理,有些功能在多个层次中重复出现等诸多原因使得OSI并没有得到市场的认可。TCP/IP是四层的体系结构:应用层、运输层、网际层和网络接口层。然而TCP/IP最下面的网络接口层也并没有具体内容。因此往往采取折中的办法,即综合OSI和TCP/IP的优点,采用一种只有五层协议的体系结构,将TCP/IP的网络接口层又分为数据链路层和物理层。

参考文献:

[1]刘真.软件体系结构——21世纪高等学校规划教材[M].北京:中国电力出版社,2004

[2]孙昌爱,金茂忠,刘超.软件体系结构研究综述[J].软件学报,2002,13(7):1228-1237

浅议建筑板柱结构体系结构设计 篇7

板柱结构是由楼板和柱组成承重体系的房屋结构。它的特点是室内楼板下没有梁、空间通畅简洁、平面布置灵活、能降低建筑物层高, 适用于多层厂房、仓库, 公共建筑的大厅, 也可用于办公楼和住宅等。板柱结构一般以钢筋混凝土材料为主。

一、板柱体系的设计

1. 板柱结构的定义

板柱结构的建筑由楼 (屋面) 板、柱等构件组成的、承受垂直及水平荷载的空间结构体系。板柱结构除具有框架结构的优点外, 还有结构高度小、顶棚平整、采光、通风及卫生条件好、模板及施工简单等优点, 采用升板法施工可节约大量模板。板柱结构常用于医药、食品、冷库、市场及医院等建筑, 预应力板柱体系常用于住宅建筑中。

2. 板柱结构体系计算原理

在进行板柱结构设计之前, 首先要对板柱的整体结构进行计算, 并且需要运用等代框架法进行计算。也就是说, 在采用PMCAD建模时, 可以将楼板等代成宽扁的框架梁, 然后在SATWE软件中进行全过程的解析, 通过此软件求其在水平荷载作用下的内力值。

但如果只单独进行楼板模型运算, 此时便可以将板带划分成柱上板带和跨中板带两部分来进行运算, 并且运用有限元的方法来计算竖向荷载的内力值。接下来就是对板柱结构配筋进行运算, 此时要把水平和竖向荷载进行相互的组合, 按照宽扁梁的方法进行配筋。

3. 等代梁宽度的取值

依据《钢筋混凝土升板技术规范》的相关规定:在进行建筑板柱结构设计时, 可以按照等代框架来计算内力和位移。并且在侧向力的作用下, 可以沿着该方向来进行代框架梁的宽度计算, 应取下列公式计算结果的较小值。

说明:式中by为等代框架梁的计算宽度;

lx、ly为两个方向的跨度, 即柱距;

bce为柱帽的有效宽度。

在运用PMCAD软件进行建筑板柱建模时, 其等代梁的宽度可以按照《升板规范》的要求取值。同时也可以按照以下的办法来进行取值:等代梁两侧各取相邻房间跨度的1/4相加;当等代梁两端房间不等跨时, 等代梁需按偏心布置。这既可避免房间不等跨时宽度不好确定的问题, 又可使按房间1/4跨度划分出来的等代梁自重正好等于整个楼板的自重。

4. 板柱结构的破坏

(1) 未布置一定数量的抗震墙, 因而地震作用全由板柱框架承受

由于未布置抗震墙, 此种结构的节点刚度又相对较弱, 因此侧向位移常较大。由于它延性差, 抗弯和变形能力很弱, 再加上P-⊿效应, 在强震时造成严重破坏甚至倒塌是很可能的。

(2) 在板柱节点处, 楼板抗冲切能力差

在柱子周边板内未设置抗冲切的钢筋, 或设置得不恰当, 节点处不平衡弯矩对楼板造成的附加剪应力未适当考虑。柱周边板的厚度不够, 使抗剪箍筋不易充分发挥作用, 或柱子纵筋在节点处滑移。

由于这些原因, 在强震时使墙板产生冲切破坏, 随之楼板坠落, 造成巨大损失。明白了板柱的破坏原因, 在采取相应有效的措施之后, 板柱-抗震墙结构的抗震性能将能有很大的提高, 其设计强度也将提高。

顺便指出, “框架-核心筒结构中带有一部分仅承受竖向荷载的无梁楼板时, 不作为板柱-抗震墙结构”。此种结构可按框架-核心筒考虑, 但应考虑本文“设计建议”中的各条要求。

二、SLAB程序关于柱上板带宽度的取值

SLAB程序按两种方法划分柱上板带和跨中板带, 如图1所示。

1. 按PM中输入的等代梁宽度与位置划分板带

如果在PMCAD中输入了等代框架梁, 则建议选择此项。因为输入等代框架梁的主要目的是为了计算板的水平荷载引起的内力。当选择此项后, 程序能够自动将等代梁范围内的楼板在竖向荷载作用下内力进行积分, 得到截面弯矩M2。M2与水平荷载作用下在相同截面产生弯矩值M1进行组合, 从而得到配筋面积。因此, 该方法主要用于计算水平荷载时的情况。

2. 按升板规范自动划分板带

如果采用PMCAD软件进行板柱结构计算, 但是在计算时, 并没有输入等代梁而是输入的虚梁, 那么就建议选择此项。这是因为如果在计算时, 没有输入等代梁, 那么该程序就不会计算水平荷载引起的内力。

而如果采用SLABCAD软件尽心计算, 就只计算由竖向荷载引起的内力值, 该方法主要用于不需计算地震力的地下室车库顶板等情况。其主要优点是在PMCAD中无需输入等代梁, 从而使建模大大简化。

3. 板柱-抗震墙的设计建议

建筑板柱结构应布置足够数量的抗震墙 (包括核心筒) , 墙的位置宜避免偏心。在房屋周边, 应布置边梁, 以形成周边框架。如在周边布置确有困难, 则应在其他部位布置一定数量的框架梁, 使结构形成板柱-框架-抗震墙的综合体系, 此种布置不属于抗震规范中的板柱-抗震墙结构。抗震墙的厚度不应小于180 mm且不应小于层高的120;底部加强部位的抗震墙厚度不应小于200 mm, 且不应小于层高的116 (可取层高及无支长度二者) 。

三、结语

综上所述, 建筑结构中板柱结构设计在现代建筑结构中得到了广泛的应用, 因其施工简单、结构本身高度较小以及造价低等优点对现代建筑的发展做出了一定了贡献。因此在实际工程施工中, 要认真研究板柱结构的设计要求, 并且严格工具设计规范进行施工。同时在施工时, 要加强板柱结构的施工, 以确保板柱结构的安全使用。

摘要:随着我国国民经济的迅速发展, 我国建筑结构也开始偏向于多高层建筑结构体系发展。因此, 建筑设计中的板柱结构被广泛的应用于建筑工程中。本文针对建筑板柱的结构设计进行了一系列的探讨, 希望可以为提供设计者在进行板柱结构设计时参考。

关键词:建筑,板柱结构,使用高度

参考文献

[1]蒋懋, 程华, 董诚.无梁楼盖结构设计方法的探讨[J].山西建筑, 2005.

[2]张维江.无粘结预应力钢筋混凝土无梁楼盖配筋计算[J].铁道建筑, 1998.

[3]禤岳刚, 禤岳智.室内增加无梁楼盖技术在结构改建中的应用[J].广东土木与建筑, 2003.

软件体系结构风格研究 篇8

一、软件体系结构风格分析

最初的软件体系结构是Mainframe结构——客户、数据和程序都被集中在主机上,通常只有少量的GUI界面,对远程数据库的访问比较困难。随着PC的广泛应用,该结构逐渐被淘汰。在20世纪80年代中期出现了Client/Server分布式计算结构,应用程序的处理在客户机和服务器之间分担。随着大型软件系统的开发,这种结构在系统的部署和扩展性方面暴漏出不足。随着Internet的发展,一个更灵活的体系结构“三层/多层计算”体系结构应运而生。

Garlan和Shaw将通用软件体系结构风格总结为以下几类:

1. 数据流风格:

批处理序列;管道/过滤器。2.调用/返回风格:主程序/子程序;面向对象风格;层次结构。3.独立构件风格:进程通讯;事件系统。4.虚拟机风格:解释器;基于规则的系统。5.仓库风格:数据库系统;超文本系统;黑板系统。

下面将介绍几种主要和经典的体系结构风格和它们的优缺点。

1.C2风格。C2体系结构风格可以概括为:通过连接件绑定在一起的按照一组规则运作的并行构件网络。图1中构件与连接件之间的连接体现了C2风格中构建系统的规则。

C2风格是最常用的一种软件体系结构风格。从C2风格的组织规则和结构图中,我们可以得出,C2风格具有以下特点:

(1)系统中的构件可实现应用需求,并能将任意复杂度的功能封装在一起;(2)所有构件之间的通讯是通过以连接件为中介的异步消息交换机制来实现的;(3)构件相对独立,构件之间依赖性较少。系统中不存在某些构件将在同一地址空间内执行,或某些构件共享特定控制线程之类的相关性假设。

2. 数据抽象和面向对象风格。

目前软件界已普遍转向使用面向对象系统,抽象数据类型概念对软件系统有着重要作用。这种风格的构件是对象,或者说是抽象数据类型的实例。对象是一种被称作管理者的构件,因为它负责保持资源的完整性。对象是通过函数和过程的调用来交互的。图2是数据抽象和面向对象风格的示意图。

面向对象的系统有许多的优点:

(1)因为对象对其他对象隐藏它的表示,所以可以改变一个对象的表示,而不影响其他的对象。(2)设计者可将一些数据存取操作的问题分解成一些交互的代理程序的集合。面向对象的系统也存在着某些问题:(1)为了使一个对象和另一个对象通过过程调用等进行交互,必须知道对象的标识。只要一个对象的标识改变了,就必须修改所有其他明确调用它的对象。(2)必须修改所有显式调用它的其他对象,并消除由此带来的一些副作用。

3. 基于事件的隐式调用风格。

基于事件的隐式调用风格的思想是构件不直接调用一个过程,而是触发或广播一个或多个事件。系统中的其他构件中的过程在一个或多个事件中注册,当一个事件被触发,系统自动调用在这个事件中注册的所有过程,这样,一个事件的触发就导致了另一模块中的过程的调用。基于事件的隐式调用风格的主要特点是事件的触发者并不知道哪些构件会被这些事件影响。这样不能假定构件的处理顺序,甚至不知道哪些过程会被调用。隐式调用系统的主要优点有:(1)为软件重用提供了强大的支持。当需要将一个构件加入现存系统中时,只需将它注册到系统的事件中。(2)为改进系统带来了方便。当用一个构件代替另一个构件时,不会影响到其他构件的接口。隐式调用系统的主要缺点有:(1)构件放弃了对系统计算的控制。一个构件触发一个事件时,不能确定其他构件是否会响应它。而且即使它知道事件注册了哪些构件的构成,它也不能保证这些过程被调用的顺序。(2)数据交换的问题。有时数据可被一个事件传递,但另一些情况下,基于事件的系统必须依靠一个共享的仓库进行交互。在这些情况下,全局性能和资源管理便成了问题。(3)既然过程的语义必须依赖于被触发事件的上下文约束,关于正确性的推理存在问题。

4. 管道/过滤器风格。

在管道/过滤器风格的软件体系结构中,每个构件都有一组输入和输出,构件读输入的数据流,经过内部处理,然后产生输出数据流。这个过程通常通过对输入流的变换及增量计算来完成,所以在输入被完全消费之前,输出便产生了。因此,这里的构件被称为过滤器,这种风格的连接件就象是数据流传输的管道,将一个过滤器的输出传到另一过滤器的输入。

图3是管道/过滤器风格的示意图。

管道/过滤器风格的软件体系结构的优点:

(1)使得软构件具有良好的隐蔽性和高内聚、低耦合的特点;(2)支持软件重用。重要提供适合在两个过滤器之间传送的数据,任何两个过滤器都可被连接起来;(3)系统维护和性能增强简单;(4)支持并行执行。每个过滤器是作为一个单独的任务完成,因此可与其他任务并行执行。管道/过滤器风格的主要缺点:(1)通常导致进程成为批处理的结构。这是因为虽然过滤器可增量式地处理数据,但它们是独立的,所以设计者必须将每个过滤器看成一个完整的从输入到输出的转换。(2)不适合处理交互的应用。当需要增量地显示改变时,这个问题尤为严重。(3)因为在数据传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作,这样就导致了系统性能下降,并增加了编写过滤器的复杂性。

5. 批处理风格。

批处理风格的每一步处理都是独立的,并且每一步是顺序执行的,只有当前一步处理完后,后一步处理才能开始,数据传送在步与步之间作为一个整体。批处理的典型应用是经典数据处理和程序开发。

批处理风格与管道过滤器风格的共同点是把任务分解成一系列固定顺序的计算单元(组件),组件间只通过数据传递交互。区别表现在以下几个方面:批处理是全部的、高潜伏性的、输入时可随机存取、无合作性、无交互性,管道过、滤器是递增的、数据结果延迟小、输入时处理局部化、有反馈、可交互。

6. 仓库风格。

在仓库风格中,有两种不同的构件:中央数据结构说明当前状态,独立构件在中央数据存贮上执行,仓库与外构件间的相互作用在系统中会有大的变化。

若输入流中某类时间触发进程执行的选择,则仓库是一传统型数据库;另一方面,若中央数据结构的当前状态触发进程执行的选择,则仓库是一黑板系统。

二、三层C/S软件体系结构分析

C/S软件体系结构是20世纪90年代成熟起来的技术,它将应用一分为二,服务器(后台)负责数据管理,客户机(前台)完成与用户的交互任务。

传统的二层C/S结构存在以下几个局限:1.二层C/S结构是单一服务器且以局域网为中心的,所以难以扩展至大型企业广域网或Internet;2.软、硬件的组合及集成能力有限;3.客户机的负荷太重,难以管理大量的客户机,系统的性能容易变坏;4.数据安全性不好。因为二层C/S有这么多缺点,三层C/S结构应运而生。三层C/S结构是将应用功能分成表示层、功能层和数据层三个部分,如下图所示。

表示层是应用的用户接口部分,它担负着用户与应用间的对话功能。表示层一般使用图形用户接口,操作简单、易学易用。功能层相当于应用的本体,它是将具体的业务处理逻辑编入程序中。功能层的程序多半是用可视化编程工具开发的。数据层就是数据库管理系统,负责管理对数据库数据的读写。数据库管理系统必须能迅速执行大量数据的更新和检索。因此,一般从功能层传送到数据层的要求大都使用SQL语言。

对二层C/S结构的局限,三层C/S的解决方案是:对这三层进行明确分割,并在逻辑上使其独立。与传统的二层结构相比,三层C/S结构具有以下优点:

1. 允许合理地划分三层结构的功能,使之在逻辑上保持相对独立性,从而使整个系统的逻辑结构更为清晰,能提高系统和软件的可维护性和可扩展性。2.允许更灵活有效地选用相应的平台和硬件系统,使之在处理负荷能力上与处理特性上分别适应于结构清晰的三层;并且这些平台和各个组成部分可以具有良好的可升级性和开放性。3.三层C/S结构中,应用的各层可以并行开发,各层也可以选择各自最适合的开发语言。使之能并行地而且是高效地进行开发,达到较高的性能价格比;对每一层的处理逻辑的开发和维护也会更容易些。4.允许充分利用功能层有效地隔离开表示层与数据层,未授权的用户难以绕过功能层而利用数据库工具或黑客手段去非法地访问数据层,这就为严格的安全管理奠定了坚实的基础;整个系统的管理层次也更加合理和可控制。

软件体系结构风格为大粒度的软件重用提供了可能。然而,对于应用体系结构风格来说,由于视点的不同,系统设计师有很大的选择空间。要为系统选择或设计某一个体系结构风格,必须根据特定项目的具体特点,进行分析比较后再确定。不同的结构有不同的处理能力的强项和弱点,一个系统的体系结构应该根据实际需要进行选择,以解决实际问题。

摘要:本文对几种经典的软件体系结构风格进行了具体的阐述,分析了各种风格的特点、优缺点,最后重点介绍了三层C/S软件体系结构。

关键词:软件体系结构,软件体系结构风格,三层C/S软件体系结构

参考文献

[1]Shaw M,Garlan D,Software Architecture Perspectives on an emerging discipline,Prentice Hall,1996

[2]冯冲江贺冯静芳编著:软件体系结构理论与实践.人民邮电出版社

[3]Mary Shaw.Making Choices:A comparison of styles forsoftware architecture[J].IEEE Software,special issue onsoftware architecture,1995

物联网体系结构研究 篇9

发展物联网的关键是体系结构关系链[1]。本文拟就在分析现有物联网技术文献和体系结构实例的基础上,探讨物联网的一种层次性体系结构。

1 物联网的自主体系结构

为了适应于异构的物联网无线通信环境需要,Guy Pujolle提出了一种采用自主通信技术的物联网自主体系结构[2],如图1所示。所谓自主通信是指以自主件(Self Ware)为核心的通信,自主件在端到端层次以及中间节点,执行网络控制面已知的或者新出现的任务,自主件可以确保通信系统的可进化特性。

由图1可以看出,物联网的这种自主体系结构由数据面、控制面、知识面和管理面4个面组成。数据面主要用于数据分组的传送。控制面通过向数据面发送配置信息,优化数据面的吞吐量以及可靠性。知识面是最重要的一个面,它提供整个信息网络的完整视图,并且提炼成为网络系统的知识,用于指导控制面的适应性控制。管理面协调和管理数据面、控制面和知识面的交互,提供物联网的自主能力。

在如图1所示的自主体系结构中,其自主特征主要是由STP/SP协议栈和智能层取代了传统的TCP/IP协议栈,如图2所示。其中STP(Smart Transport Protocol)为智能传输协议,SP(Smart Protocol)为智能协议。物联网节点的智能层主要用于协商交互节点之间STP/SP的选择,用于优化无线链路之上的通信和数据传输,满足异构物联网设备之间的联网需求。

这种面向物联网的自主体系结构涉及的协议栈比较复杂,适用于计算资源较为富裕的物联网节点。

2 物联网的EPC体系结构

随着全球经济一体化和信息网络化进程的加快,为满足对单个物品的标识和高效识别,美国麻省理工学院的自动识别(Auto-ID)实验室在美国统一代码协会(UCC)的支持下,提出要在计算机互联网的基础上,利用RFID、无线通信技术,构造一个覆盖世界万物的系统,同时还提出了电子产品代码(Electronic Product Code,EPC)的概念。即每一个对象都将被赋予一个唯一的EPC,并由采用无线射频识别技术的信息系统管理、彼此联系;数据传输和数据储存由EPC网络来处理。随后,国际物品编码协会(EAN)和美国统一代码协会(UCC)于2003年9月共同成立了非营利性组织EPC Global,将EPC纳入了全球统一标识系统,实现了全球统一标识系统中的GTIN编码体系与EPC概念的完善结合。

EPC Global关于物联网的描述[3]是,一个物联网主要由EPC编码体系、射频识别系统及信息网络系统3个部分组成。

2.1 EPC编码体系

物联网实现的是全球物品的信息实时共享。显然,首先要做的是实现全球物品的统一编码,即对在地球上任何地方生产出来的任何一件产品,都要给它打上电子标签。在这种电子标签里携带有一个电子产品编码,并且全球唯一。电子标签代表了该物品的基本识别信息,譬如,表示“A公司于B时间在C地点生产的D类产品的第E件”。目前,欧美支持的EPC编码和日本支持的UID(Ubiquitous IDentification)编码是两种常见的电子产品编码体系。

2.2 射频识别系统

射频识别系统包括EPC标签和读写器。EPC标签是编号(每一个商品唯一的号码,即牌照)的载体,当EPC标签贴在物品上或内嵌在物品中时,该物品与EPC标签中的产品电子代码就建立起了一对一的映射关系。EPC标签从本质上来说是一个电子标签,通过RFID读写器可以实现对EPC标签内存信息的读取。这个内存信息通常就是产品电子码,产品电子代码经读写器上报给物联网中间件,经处理后存储在分布式数据库中。用户查询物品信息时只要在网络浏览器的地址栏中,输入物品名称、生产商、供货商等数据,就可以实时获悉物品在供应链中的状况。目前,涉及这部分的标准也已制订,包括电子标签的封装标准,电子标签和读写器间数据交互标准等。

2.3 EPC信息网络系统

EPC信息网络系统包括EPC中间件、发现服务和EPC信息服务3个部分。

(1)EPC中间件。要实现每个小的应用环境或系统的标准化以及它们之间的通信,在后台应用软件和读写器之间,须设置一个通用平台和接口,通常将其称之为中间件。EPC中间件实现RFID读写器和后端应用系统之间的信息交互,捕获实时信息和事件,或上行给后端应用数据库系统以及ERP系统,或下行给RFID读写器。EPC中间件采用标准的协议和接口,是连接RFID读写器和信息系统的纽带,目前,已在制订应用级别事件(Application Level Event,ALE)标准。

(2)发现服务(Discovery Service)。EPC信息发现服务包括对象名称解析服务(Object Naming Service,ONS)以及配套服务,基于电子产品代码,获取EPC数据访问通道信息。目前,根ONS系统和配套的发现服务系统由EPC Global委托Verisign公司进行运维,其接口标准也正在形成之中。

(3)EPC信息服务(EPC Information Service,EPC IS)。EPC IS即EPC系统的软件支持系统,用以实现最终用户在物联网环境下交互EPC信息。关于EPC IS的接口和标准也正在制订之中。

可见,一个EPC物联网体系架构[3,4]主要应由EPC编码、EPC标签及RFID读写器、中间件系统、ONS服务器和EPC IS服务器等部分构成,如图3所示。

由图3可以看到一个企业物联网应用系统的基本构架。该应用系统由3大部分组成,即RFID识别系统、中间件系统和计算机互联网系统。其中RFID识别系统包含EPC标签和RFID读写器,两者通过RFID空中接口通信;EPC标签贴于每件物品上。中间件系统含有EPC IS、PML以及ONS及其缓存系统,其后端应用数据库系统还包含ERP系统等,中间件系统与计算机互联网相连,能够及时有效地跟踪、查询、修改或增减数据。

综上所述,EPC系统是在计算机互联网基础上,通过EPC中间件、对象名称解析服务(ONS)和EPC信息服务(EPC IS)来实现全球物物互联的。

3 物联网的UID技术体系架构

鉴于日本在电子标签方面的发展,早在20世纪80年代中期就提出了实时嵌入式系统(TRON),其中的T-Engine是其体系架构的核心。在T-Engine论坛领导下,泛在ID中心设立在东京大学,于2003年3月成立,并得到日本政府经产省和总务省以及大企业的支持,目前包括微软、索尼、三菱、日立、日电、东芝、夏普、富士通、NTT、Do Co Mo、KDDI、J-Phone、伊藤忠、大日本印刷、凸版印刷、理光等诸多企业。组建UID中心的目的是为了建立和普及自动识别“物品”所需的基础技术,实现“计算无处不在”的理想环境。

UID是一个开放性的技术体系架构,由泛在识别码(u Code)、泛在通信器、信息系统服务器和u Code解析服务器等部分构成。UID使用u Code作为现实世界物品和场所的标识,UC从u Code电子标签中读取u Code获取这些设施的状态,并控制它们,UC类似于PDA终端。UID能在多种行业中得到广泛应用,UID是将现实世界用u Code标签的物品、场所等各种实体和虚拟世界中存储在信息服务器中各种相关信息联系起来,实现物物互联。

4 架构物联网体系结构的建议

物联网概念的问世,打破了传统的思维模式。在提出物联网概念之前,一直是将物理基础设施和IT基础设施分开:一方面是机场、公路、建筑物,而另一方面是数据中心,个人计算机、宽带等。在物联网时代,将把钢筋混凝土、电缆将与芯片、宽带整合为统一的基础设施,这种意义上的基础设施像是一块新的地球工地,世界在它上面运转,包括经济管理、生产运行、社会管理以及个人生活等。研究物联网的体系结构,首先需要明确架构物联网体系结构的基本原则,以便在已有物联网体系结构的基础之上,形成参考标准体系结构。

4.1 物联网体系结构架构原则

物联网有别于互联网,互联网主要目的是构建一个全球性的计算机通信网络,而物联网则主要从是应用出发,利用互联网、无线通信网络资源进行业务信息的传送,是互联网、移动通信网应用的延伸,是自动化控制、遥控遥测及信息应用技术的综合展现。当物联网概念与近程通信、信息采集与网络技术、用户终端设备结合后,其价值才将逐步得到展现。因此,设计物联网体系结构时应该遵循以下几条原则。

(1)多样性原则,物联网体系结构须根据物联网的服务类型、节点的不同,分别设计多种类型的体系结构,不能也没有必要建立起统一的标准体系结构。

(2)时空性原则,物联网尚在发展之中,其体系结构应能满足在物联网的时间、空间和能源方面的需求。

(3)互联性原则,物联网体系结构需要平滑地与互联网实现互联互通;如果试图另行设计一套互联通信协议及其描述语言将是不现实的。

(4)扩展性原则,对于物联网体系结构的架构,应该具有一定的扩展性设计,以便最大限度地利用现有网络通信基础设施,保护已投资利益。

(5)安全性原则,物物互联之后,物联网的安全性将比计算机互联网的安全性更为重要,因此物联网的体系结构应能够防御大范围内的网络攻击。

(6)健壮性原则,物联网体系结构应具备相当好的健壮性和可靠性。

4.2 一种层次性物联网体系系统结构

以上分别从某个具体应用角度讨论介绍了物联网的系统结构,这类结构无法构成一个通用的物联网系统。根据物联网的服务类型和节点等情况,下面给出一个划分为由感知层、接入层、网络层和应用层组成的4层物联网体系结构,如图4所示。

(1)感知层。

感知层主要功能是信息感知与采集,主要包括二维码标签和识读器、RFID标签和读写器、摄像头、各种传感器、视频摄像头等。如温度感应器、声音感应器、震动感应器、压力感应器、RFID读写器、二维码识读器等,完成物联网应用的数据采集和设备控制。

(2)接入层。

接入层由基站节点(Sink节点)和接入网关(Access Gateway)组成,完成应用末梢各节点信息的组网控制和信息汇集,或完成向末梢节点下发信息的转发等功能。也就是在末梢节点之间完成组网后,如果末梢节点需要上传数据,则将数据发送给基站节点,基站节点收到数据后,通过接入网关完成和承载网络的连接;当应用层需要下传数据时,接入网关收到承载网络的数据后,由基站节点将数据发送给末梢节点,从而完成末梢节点与承载网络之间的信息转发和交互。

接入层的功能主要由传感网(指由大量各类传感器节点组成的自治网络)来承担。

(3)网络层。

网络层包括各种通信网络与物联网形成的承载网络。承载网络主要是现行的通信网络,如2G网络、3G网络、3G网络、4G网络,或者是计算机互联网、移动通信网、企业网等,完成物联网接入层与应用层之间的信息通信。

(4)应用层。

应用层由各种应用服务器组成(包括数据库服务器),主要功能包括对采集数据的汇聚、转换、分析,以及用户层呈现的适配和事件触发等。对于信息采集,由于从末梢节点获取了大量原始数据,且这些原始数据对于用户来说只有经过转换、筛选、分析处理后才有实际价值;这些有实际价值内容的应用服务器将根据用户的呈现设备不同完成信息呈现的适配,并根据用户的设置触发相关的通告信息。同时当需要完成对末梢节点控制时,应用层还能完成控制指令生成和指令下发控制。

应用层要为用户提供物联网应用UI接口,包括用户设备(如PC、手机)、客户端等。

除此之外,应用层还包括物联网管理中心、信息中心等利用刚络的能力对海量信息进行智能处理的云计算功能。

5 结束语

物联网是一个十分复杂而又庞大的系统,其体系结构是影响未来发展应用的关键所在,需要分阶段有计划地开展深入的科学研究。本文对物联网的体系结构进行了初步研究,提出了一种具有感知层、接入层、网络层和应用层的4层次参考模型,并对各层所实现的主要功能进行了讨论。

摘要:通过对现有物联网技术文献和体系结构实例的分析,探讨了物联网的体系结构。在总结物联网特征的基础上,提出了一个层次性物联网体系结构和系统模型。

关键词:物联网,物品电子代码,体系结构

参考文献

[1]http://www.secu.com.cn/news/view/200911/2364220.shtml,2010,4

[2]Pujolle G.An autonomic oriented architecture for the Internet of Things.IEEE2006International Symposium on Modern Comput-ing.2006.163~168

[3]Yan Bo,Huang G W.Supp ly chain information transmission based on RFID and internet of things.ISECS International Colloquium on Computing,Communication,Control and Management.2009,4:166~169

云计算体系结构论述 篇10

目前, “云计算”还没有一个十分确切和统一的定义, 较一致的观点认为云计算 (或称云端运算) 是在极大规模上将可扩展的信息技术能力向外部客户作为服务来提供的一种网络应用模式;是一种动态的、易扩展的且通常是通过高速互联网提供虚拟化的资源计算方式。它强调了处理无所不在的分布性和社会性——这种新兴的计算模型将任务分布在大量计算机 (或具有计算能力的设备) 构成的可自我维护和管理的虚拟计算资源池上, 使各种应用系统根据需要获取计算能力、存储空间和软硬件服务。

云计算将网络上的计算资源 (包括计算服务器、存储服务器、宽带资源等) 集中起来并由软件实现自动管理, 无需人为参与。“云”端可在数秒内处理数以千万计甚至亿计的信息, 达到和“超级计算机”同样强大的计算效能。

2 云计算体系结构

2.1 云计算的基本思想

云计算主要关注如何充分地利用互联网上软件、硬件和数据的能力, 以及如何更好地使各个计算设备协同工作并发挥最大效用的能力。其基本思想是“把力量联合起来, 给其中的每一个成员使用”, 它采用共享基础架构的方法将巨大的系统池连接在一起为用户提供多种IT服务。通过使计算分布在大量的分布式计算设备上, “云”端被作为数据存储以及应用服务的中心, 企业可将云端资源切换到其所需的应用上, 根据具体需求来选购相应的计算和存储服务。

2.2云计算体系结构

“云”是一个由并行的网格所组成的巨大的服务网络, 它通过虚拟化技术来扩展云端的计算能力, 以使得各个设备发挥最大的效能。数据的处理及存储均通过“云”端的服务器集群来完成, 这些集群由大量普通的工业标准服务器组成, 并由一个大型的数据处理中心负责管理, 数据中心按客户的需要分配计算资源, 达到与超级计算机同样的效果。图1展示了云计算体系结构的模型, 并在文中对相应的实体给出具体描述。

(1) User Interaction Interface:

用户交互界面, 通过终端设备向服务云提出请求。

(2) Services Catalog:

一个用户能够请求的所有服务目录, 可根据自身的需求选择相应的服务。

(3) System Management:

系统管理, 用户管理计算机资源是否可用。

(4) Provisioning Tool:

服务提供工具, 用于处理终端请求的服务, 需要部署服务配置。

(5) Monitoring and Metering:

监控和测度, 对用户服务进行跟踪和测量, 并提交给中心服务器分析和统计;

(6) Servers:

服务云, 由系统管理和维护, 可能是虚拟服务或者真实的。

在云计算体系结构模型中, 前端的用户交互界面 (User Interaction Interface) 允许用户通过服务目录 (Services Catalog) 来选择所需的服务, 当服务请求发送并验证通过后, 由系统管理 (System Management) 来找到正确的资源, 接着呼叫服务提供工具 (Provisioning Tool) 来挖掘服务云中的资源。服务提供工具需要配置正确的服务栈或Web应用。

云计算同时描述了一种平台以及构建在该平台上的一类应用, 图2展示了用户获取“云端”资源的基本过程:“云”端为用户提供扩展的、通过互联网即可访问的、运行于大规模服务器集群的各类Web应用和服务, 系统根据需要动态地提供、配置、再配置和解除提供服务器, 用户只需基于实际使用的资源来支付相关的服务费用。

3 结语

虽然现在的云计算还不能完好地解决所有问题, 但是在不久的将来一定会有越来越多的云计算系统投入使用, 云计算本身也会不断地得到完善并成为工业界和学术界研究的另一热点。

参考文献

[1]云计算之家.云计算体系结构综述[EB/OL].2008.

新一代运营支撑系统体系结构 篇11

文章介绍了新一代运营支撑系统提出的动因及体系结构特征,描述了新一代运营支撑系统框架的主要组成部分,并基于新一代运营支撑系统的方法论及其与CORBA映射的关系指出将CORBA作为新一代运营支撑系统的实现技术是一种理想选择。

关键词:

新一代运营支撑系统;电信业务流程;运营支撑;电信管理网;体系结构

Abstract:

The motivation for putting forward the new generation operational support system (NGOSS) is analyzed, and NGOSS’s architectural characteristics and main components are presented. Based on the methodology of NGOSS and its relationships with CORBA mapping, it is concluded that CORBA is an ideal technology for implementing NGOSS.

Key words:

NGOSS; Telecommunication business process; Operational support; TMN; Architecture

1、 NGOSS的提出

随着电信运营管制开放局面的逐步形成,运营商面临着更为激烈的国际国内竞争环境。电信行业已由追求规模与速度的扩张型发展时期,进入以追求企业效益和市场竞争力为核心的新阶段。电信运营商的经营模式已经从传统的面向网络和技术的经营模式逐步转变到“以市场为导向,以客户为中心,以效益为目的”的经营模式。这种经营模式的转变使电信运营商对电信运营支撑系统(OSS)提出了新的要求。为了赢得竞争,运营商要做到市场信息及时掌握、新业务新功能迅速提供、网络质量和障碍排除按需保障、资费政策灵活调整、多网络运营商和多服务提供商互连互通等,而以上各个方面都需要OSS提供更有效的支撑。因此,实现新一代的运营支撑系统(NGOSS)要从体系结构、系统整合、技术手段等方面入手:

(1)体系结构

企业所有运营活动的原动力来自于客户的需求。OSS的支撑重心要由从以内部管理为出发点、以技术为中心,转移到以客户为出发点、以服务为中心上。新的体系结构要针对电信运营的行业特点,从企业的整体商业流程需要来构造新一代的支撑系统。同时,一个好的OSS体系也必须能够适应技术的不断演进,有利于系统的实现,能够随时采用最新最有效的技术。

(2)系统整合

传统的网络与业务管理系统以满足生产的自动化为目的,以内部管理需求为出发点,各种管理系统独立设计,缺乏对整体的企业流程考虑,因此在企业内部形成了许多信息孤岛,影响了新业务的开展和对客户的端到端服务,也给系统的改进和系统间的互连互通造成很大困难。为了保护已有的OSS系统投资,适应不断出现的新功能要求,集成旧有的系统并保证平滑扩展是新一代OSS要解决的问题。

(3)技术手段

电信网络技术正在经历一个从电路交换向分组交换转变的变革时期。为了保证迅速响应客户对新业务的需求,OSS系统必须能够以最快的速度对新业务和新技术提供支持,使企业在OSS的支持下迅速将这些新的技术和业务推向市场。OSS本身使用的技术手段也要适应不断发生的变化。IP技术的采用、分布式处理、软件组件技术的发展为OSS迎接新的挑战提供了有利的支持。

无论是系统结构还是技术手段,都是为企业的运营而服务的,为了适应企业运营的需要电信管理论坛(TMF)提出了新一代电信运营支撑系统的概念。TMF致力于按电信管理网(TMN)的框架规划进行电信运营支撑系统的规范开发、概念验证、示范项目实施等工作。TMF对NGOSS的研究活动十分活跃,提出了一系列的相关规范。

2、 NGOSS的特征

NGOSS体系结构主要包括企业流程抽象、共享信息服务和利用正式可交易的合同进行接口定义。软件的组件化发展对NGOSS体系结构的形成有着重要的影响。新一代的运营支撑系统具有以客户为中心、软件设计组件化、企业流程抽象化、共享信息服务、实行接口合同等特征。

(1)以客户为中心

按照ITU-T 有关电信管理网的建议,电信运营的管理需求分布在4个逻辑分层:企业商务管理、业务或服务管理、网络管理、网元管理。由于ITU-T对TMN标准化的活动历史是一种自下而上的过程,即从网元管理到企业管理,因而导致目前在企业管理层面的标准匮乏。TMF 提出NGOSS体系结构希望为电信网络的不断演进提供保证。NGOSS体系结构强调自上而下、端到端的运营管理支持,充分体现“以客户为中心”的运营原则。NGOSS体系结构以ITU-T的电信管理网框架模型为基础,以电信管理论坛的电信运营图或增强电信运营图(TOM/eTOM)为管理需求的出发点,重新确定了运营支撑系统与软件所应具有的体系结构特征。

目前,一个电信企业在电信行业领域可能扮演不同的角色。从价值链的角度来看,这些角色包括消费者(用户)、网络提供者、业务提供者、接入提供者、内容提供者、业务批发者、业务零售者、设备供应者、系统集成者等。每一个企业都希望自己在这样一个多样性的环境中是最有效率和效益的。因此,搞清电信运营的内在规律成为各运营企业的追求。为此,TMF提出了电信运营图(TOM)的概念,抽象总结了电信企业运营活动的过程。2002年又完成了增强电信运营图(eTOM)规范,增加了从企业视角的业务过程描述以及电子商务所带来的相应变化内容。TOM/eTOM是有关电信企业运营领域的抽象模型,其核心思想是将电信网络原来以业务为中心的模式改变为以客户为中心的模式。以客户为中心实现业务支撑、计费管理等功能,使网络的效率提高,服务能力增强。TOM/eTOM是业务模型,需要通过NGOSS方法论所涉及的相关过程具体实现。

(2)软件设计组件化

软件组件化技术的发展和组件开发技术的演进,促进了NGOSS的发展。NGOSS采用组件化的系统设计方法。NGOSS组件是一个可使用的软件实体,具有至少两个接口,一个用于组件的管理,一个用于实现企业合同。合同内容体现了功能要求,使流程控制实体得以触发相应的处理过程。各软件组件可以方便地进行组合,生成新的功能组件。组件的集成使得系统既能够不断地实现自身积累,又能够不断地采用新技术。

(3)企业流程抽象化

运营支撑系统集成的最终目的是为了支持企业流程,并通过对企业流程的分析与分解得出企业的整体模型。企业的整体模型包含与客户的关系和与其他运营商的关系。流程控制的引入使组件个体不需要具备与流程操作相关的整体企业逻辑知识。流程的分解使组件集成更加容易和灵活。当流程控制触发一个组件时,该组件仅需要按照其接口合同定义的能力提供服务。这种企业流程的抽象与分解,使得企业流程的改变不需要修改应用组件本身,而是通过相应的配置管理来实现。这就提高了组件的可重用性。

(4)共享信息服务

连续一致的企业数据称之为企业信息。企业数据需要存储,并在不同组件、不同企业交易之间共享。有些数据的传送甚至要跨越企业边界。因此,在NGOSS体系中提供了一种共享企业信息服务机制,这种机制不是简单地对存储信息进行创建/读取/更新/删除,而是要保证数据的一致性,并实现有续存放、访问控制和其他分发服务。系统通过分域、分类、授权等手段能够对相关的各种数据进行集中有效的管理,为企业的联机分析处理(OLAP)应用打下良好的基础。

(5)实行接口合同

一个完整的组件接口规范不仅包括一组操作要求,而且要包括触发语义、通信协议、可用性、安全限制、事先和事后条件等方面的元数据。当采用组件框架结构时,一个动态可配制的集成系统必须提供一种规范的方法来定义和传递这些属性,否则检查组件是否支持相关的操作会带来不便。NGOSS提出了一种综合的接口合同机制来满足这种要求。组件的每一个接口都通过一个合同规范进行完全的描述,当一个组件投入使用时,它的每一个接口合同都进行注册并被公示出去以便进行可选择操作。

从体系结构上来看,NGOSS试图建立一种以组件为基础的分布式体系,定义关键的系统服务,支持信息和通信业所需的动态业务和运营管理。分层的抽象活动使系统结构与技术无关,以便企业自由选择其适用的技术,并能应用今后出现的新技术。

综上所述,以TMN的总体原则为指导,对电信运营企业进行合理的业务流程建模,采用软件组件技术是NGOSS的主要特征。

3、 NGOSS的体系结构

体系结构是设计与组合系统的科学,包含当设计和建造系统时要用到的概念、原则、规则和导则。当检查一个系统的体系结构时,可以观察到一种设计与建造风格,这种风格刻划了概念、原则、规则和导则之间的关系。NGOSS体系结构解决构造应用时所需要的概念和基本原则。

3.1 高层体系结构

NGOSS体系结构支持把共享信息服务提供给整个分布式组件基础设施,将企业流程的执行与NGOSS组件的操作相隔离。具体的NGOSS应用实施一定是技术相关的。不同技术相关的NGOSS体系框架是基于一个单一的技术无关的NGOSS体系框架,这就是图1所要表达的NGOSS高层体系结构关系。图1中,应用组件在运行时被企业流程的执行所触发。应用组件之间并不直接相互触发,但它可以直接触发基础设施组件。所有NGOSS 组件的定位与触发取决于技术相关的NGOSS体系框架。

3.2 技术无关体系框架

NGOSS体系结构必须权衡各种技术的先进性,不能过分依赖某一种特殊的技术和产品。因此,提出一种技术无关体系(TNA,Technology Neutral Architecture)框架至关重要。这种分离使核心体系框架保持时间上的连续性和稳定性,不受新技术的影响。已有的组件可以在未来通过新的技术来实现,或通过简单的适配来实现不同技术之间的桥接。

这种技术无关的需求,对体系结构带来了几个方面的约束:

框架不可以强制任何具体的通信协议

框架必须允许同步的、异步的和主从同步的请求模式

不能假设特定的在线数据表示

不能规定特定的实现语言

技术无关框架确定接口合同如何定义与执行、组件之间如何利用共享信息服务进行交互,保证组件在分布式的环境中即插即用。技术无关框架相关的规范支持合同的定义、组件接口的定义和企业流程的定义。技术无关框架对组件的管理接口规范定义,实现对组件的监视与控制。

3.3 技术相关体系框架

尽管对核心框架的要求是技术无关的,实施一种框架却只能选择特定的技术。因此,技术无关的体系结构在实施前首先要影射到一种或几种特定的技术框架上。目前可以选用的技术有公共对象请求代理体系结构(CORBA)和企业级Java 组件(EJB:Enterprise JavaBeans)。

每一种技术相关的框架都将全面定义一种执行环境,从而保证组件开发者所开发的组件正常运行。相关的规范包含框架服务所需要的接口定义,如命名、定位、目录服务等。技术无关框架中的不同部分有可能影射到不同的实现技术。这使集成商可以选择最合适的技术解决实施中的不同问题。

3.4 领域分类

在NGOSS体系结构中,所有组件都是平等的。无论组件是支持系统服务还是支持企业功能,除了支持组件角色所要完成的合同,还要支持标准的组件管理合同。所有组件均要通过NGOSS合同注册公示自己的合同内容。应用组件的合同可以被流程控制实体代表其他应用组件请求执行。尽管组件在技术上存在相似性,但它们所提供的服务性质却相差很大。为了简化对这些服务和用处的描述,在技术无关体系结构中提出了领域分类的概念。把不同的服务归类为不同的域和子域,更加清晰地描述了NGOSS解决方案的不同功能考虑。这些域主要包括:

企业流程服务域——支持企业流程定义和执行的服务类;

分布式透明服务域——支持在企业内跨平台、屏蔽物理分布和网络拓扑结构的服务类;

信息服务域——支持企业内共享企业信息服务类;

系统服务域——支持组件合同注册、公示和组件安排的服务类;

系统服务管理域——对NGOSS组件及其提供的服务进行全面的组织的服务类。

4、 NGOSS的方法论及与CORBA的映射

4.1 NGOSS 方法论

TMF制订了NGOSS方法论(可参见NGOSS: Development and Integration Methodology TMF TR127)。NGOSS方法论强调从多种视图(企业视图、系统视图、实现视图以及运行视图)看待NGOSS的开发问题,通过NGOSS知识库将上述不同视图映射整合为一体,NOSS框架如图2所示。图中整个活动从企业视图开始顺时针进行。

(1)企业视图

企业视图由eTOM表示,涵盖了电信企业的各种企业活动和管理活动,是运营支撑系统/商业支撑系统(OSS/BSS)必须满足的企业流程的需求模式,为OSS/BSS的开发指明了需求和方向。

(2)系统视图

系统视图由系统综合图(SIM)表示,描述了可部署的企业组件框架,并指导如何使用组件构建OSS/BSS,以解决某一特定的企业问题。

(3)实现视图

实现视图通过示范项目完成,TMF有各种示范项目,通过开发实际的企业案例方案,解决OSS/BSS在现实中遇到的各种问题。

(4)运行视图

运行视图考虑应用系统的实时运行(Run-Time)环境和各种技术产品的具体应用。

(5)NGOSS知识库

NGOSS知识库由共享信息数据(SID)表示,SID有组织地集合了企业实体和系统实体的定义及其UML(Unified Modeling Language)模型,提供了通用的信息/数据语言,明确了实体间的相互关系。因此,SID起到了NGOSS的前3种视图之间的“粘合剂”的作用,确保企业需求可以驱动系统的设计和实现。另外,NGOSS的约束性程序提供了OSS/BSS的产品和组件的测试策略、方法、原则,以及与技术无关的测试信息要求和与技术相关的系统实现测试要求,以检验这些产品是否符合NGOSS的体系架构和总体原则的要求。

4.2 NGOSS与CORBA的映射

从NGOSS技术无关体系到技术相关体系结构的映射需要对候选技术做出评判。CORBA作为实施NGOSS的可选技术之一,在许多方面与NGOSS体系结构具有一致性,如对分布式处理的支持。CORBA体系结构设计的出发点就是为了支持分布式处理。NGOSS体系结构的许多方面可以直接映射到CORBA系统及相关的CORBA服务,它们是:

通信协议,如GIOP/IIOP协议;

触发模式,CORBA支持多种对分布式对象的操作触发模式,其中包括同步和异步、封锁与非封锁模式;

位置无关,CORBA的命名服务使提供的服务与对象的位置无关,服务消费者通过定位服务,无须事先知道命名绑定;

分布处理透明,CORBA的事物处理服务使提供的分布式处理具有透明性;

互操作性,对象请求代理(ORB)之间通信的标准化使不同厂家的ORB产品可以实现互操作;

松耦合,CORBA支持服务消费者与提供者之间的松耦合。

因此,CORBA为实现NGOSS技术相关体系结构提供了一个坚实的基础。CORBA 的接口定义语言(IDL)与NGOSS TNA合同十分匹配,CORBA所具有的多种基础设施服务可以实现NGOSS所追求的基本要求,是一个理想的技术选择。□

参考文献:

[1] TMF GB910 Version 2.1, Telecom Operations MAP [S].

[2] TMF GB921 Version 3.0, The enhanced Telecom Operation Map (eTOM) Business Process Framework [S].

[3] TMF GB920 Version 1.5, New Generation Operational Support Systems (NGOSS), Architecture Overview [S].

[4] TMF055 Version 1.5, NGOSS Phase 1 Technology Application Note - CORBA [S].

[5] 荣国辉. 网络管理发展综述[J]. 世界电信, 2003,16(1/2):51—56.

收稿日期:2003-01-13

作者简介:

并行推理体系结构研究 篇12

传统的对推理技术的研究和推理机的研究和推理问题的识别与控制,大多数采用的是非单调处理方法、串行方法,在单个CPU上执行,采用的推理策略为正向推理、反向推理以及正反向混合推理。这种单一的处理模式对解决一些特定领域的、知识库比较小的、复杂度比较低的问题,发挥了一定的作用。但随着待解决的问题的复杂度增加,推理空间常呈指数率增长,常规的单一串行处理模式已不能满足这种需求。而且,单核的处理速度也已经达到了极限[1]。

为了解决以上问题,就需要有很大的存储器和高度的并行化来处理大量的推理。近几年来,处理器也从传统的单核向双核、多核发展,Intel公司和AMD公司先后发布了双核与四核处理器,Sun公司为服务器也发布了八核的UltraSPARC处理器,这为并行处理提供了良好的硬件环境。

所以,采用并行技术来加速推理及处理各种智能问题已成为一种迫切的要求。研究并行推理,将首先研究并行推理的核心技术之一:并行推理体系结构。这将有效地解决串行推理中的问题。同时,也将达到两个主要目标:一是提高推理的速度;二是提高推理的精度,也就是提高可靠性。

1几种并行推理体系结构

采用何种并行推理结构,将对推理效率产生重要的影响。目前所讨论的并行推理主要是在并行分布式环境下进行的。分布式环境是:节点在逻辑上统一而在物理上分散的一种环境。分布式环境中的每个节点具有以下特点:1)每个节点包括领域有限知识、群体任务规划调度的有限知识、预测其它节点的有限知识;2)能把复杂问题分解为若干子问题;3)能与其它节点进行通信与协作。通过分布式系统中各组成部分相互协作、并行工作等手段,来提高整个系统的工作速度和工作效率[1,2,3]。

1.1星形结构

星形结构是指中心节点控制多个外围节点进行推理。见图1。

其工作原理是:中心节点把推理任务划分成多个子任务,把知识库分解成多个子知识库,并分配到各个外围节点上进行并行推理。

优点是简单、易构建、易维护。

缺点是可靠性低。一旦中心节点出现故障,则整个推理将不能进行。

1.2环形结构[2]

环形结构是指各节点形成一个封闭的环进行并行推理。见图2。

其工作原理是:各节点有自己独立的任务和知识库,彼此间通过环进行通信来并行处理。环形结构适合系统的节点分布在一个相互之间距离并不远的区域,而且节点上用户之间独立性较大且使用权相当。各节点之间可以通过互传信息的方式讨论问题或请求帮助(协助),最终的裁决权仍在本节点。(总线结构的工作原理和环形结构类似)。

优点是简单、易构建、易维护。

缺点是可靠性差,当某一节点出现故障,则易引起整个系统不能运行;而且,环形结构(总线结构类似)都没有“黑板”,要讨论问题比较困难(此时可通过广播的方式向所有节点发消息来弥补这个缺陷)。

1.3立方体结构[3]

立方体结构是指在三维空间中的六面体结构。可看成是由多个环组成的一种结构。见图3。

其工作原理是:在该结构中,初始化时,随意选定一个节点作为主控节点,负责整个系统的任务分配,通信管理。

优点是具有较高的可靠性,单个节点的失效不影响整个系统的运行。

缺点是构建结构比较困难。

1.4主从式结构[4]

主从式是指由一台独立的主机控制多台从机进行并行推理,在此模式下的消息传递主要在从机与从机之间进行。见图4。

其工作原理是:主机首先把获得的推理任务进行分解,划分成多个子任务,同时也将规则库和知识库进行分解。分解规则库和知识库的原则是让它们与分解后的子任务相配套,形成一个个的子规则库和子知识库。然后主机将分解好的子任务和配套的子规则库、子知识库分配到各从机,由从机完成后面的推理任务。

优点是易构建、易维护。

缺点是主机除了在开始的时候需要将任务、规则、知识库进行分解,在推理过程中还要协调各从机间的通信,处理各从机传递到的消息和数据。这样,随着需要推理的问题的复杂度、数据量加大,主机的负担将大大加重。推理过程中更多时间将是等待主机处理各种数据、消息,从机在这些时间里完全地处于闲置状态。整个推理的效率将明显制约于主机的性能。

1.5层连分级式结构[4,5]

层连分级式是指:推理架构被分为多个级别,按层次互相连接。见图5。

其工作原理是:该结构是对主从式的一种改进,在主机和从机之间加入了伪主机这一层级,变成三层结构。主机处于树形结构中的根节点,具有绝对权限,对伪主机和从机进行协调、管理、并获得最终的推理结果。伪主机处于中间节点,具有相对权限,从属于主机,也具备完整的知识库和规则库,可以进行任务、规则库、知识库的分解,分配给从机,对从机进行管理、协调。从机处于叶子节点,仅能进行推理,受主机和伪主机的管理。

优点是在一定程度上缓解了主机的压力。

缺点是加大了主机与从机之间的通信开销。同时,伪主机虽然拥有全部的知识库、规则库,能进行详细的子任务分解,但也增加了伪主机的压力。

1.6轮形辐射式[6]

轮形辐射式是指:星形结构和环形结构的一种组合结构,也是一种多处理器分布式系统。见图6。

其工作原理是:中心节点是整个系统的控制中心,管理整个系统的通信,分配和调度需要处理的任务,并调用一个或借个处理单元来处理复杂度较高的任务。

优点是结构灵活、较高的可靠性。当中心节点出故障时,系统可由外围的环状来运行;当外围节点某一个出现故障,此结构又可变为星形结构来运行。

缺点是构建这种结构相对比较复杂。

2一种新型并行推理体系结构

作者所在实验室的KAMADUO机器人具有独特的分布式结构和功能。该机器人总体结构为:一个中心控制计算机,四个以上执行计算机。KAMADUO机器人原型见图7,KAMADUO并行推理结构图见图8。

KAMADUO并行推理结构是一个独特的结构,既能组合成星形或环形进行并行推理,又可在三维空间结构中动态组合进行并行推理,完成问题求解。对该结构分析如下:

环形结构(7种):

底层组合(4种):

① B、C、D;② B、C、E;③ B、D、E;④ C、D、E。

顶层和底层组合(3种):

⑤ A、B、D;⑥ A、B、C;⑦ A、B、E。

星形结构(C、D、E节点不连接):

① B、C、D、E。

轮形辐射式结构(C、D、E节点相连):

① B、C、D、E。

立方体结构:

① A、B、C、D;② A、B、C、E;③ A、B、D、E;④ A、B、C、D、E。

总之,根据推理任务的情况、知识库的大小,可灵活选择节点来组成环形、星形、轮形

辐射、立方体等结构来进行并行推理。

实验证明:该结构灵活方便,可靠性高,在运行中,当某一节点发生故障,系统仍能维

持运行。所以,该结构具有较高的可靠性。

3总结

本文在分析了常见的几种并行推理结构的基础上,介绍了一种新型的机器人并行推理结构,具有较好的理论意义和现实意义,将对分布式系统、智能决策系统、智能信息处理系统提供新的理论方法和技术。

摘要:并行推理是人工智能、信息处理等研究领域的一个重点,受到高度重视。首先概括了并行推理的几种体系结构,并分析了各自的优缺点,然后介绍了一种新型的移动机器人并行推理结构,最后验证了这种结构的正确性、可靠性、高效性。

关键词:人工智能,并行推理,移动机器人

参考文献

[1]冯健翔.人工智能及其航天应用概论(上、下).北京:宇航出版社,1999

[2]陈国良.并行算法——结构.算法.编程.北京:高等教育出版社,2004

[3](美)Dongarra J,Fox G,Kennedy K,等.并行计算导论.莫则尧,陈军,曹小林,等译,北京:电子工业出版社,2005

[4]李磊,韩卫,崔岷,等.层连分级式并行推理架构.科学技术与工程,2006:6(17):2762—2765

[5]覃征,康继昌.并行推理技术研究.航空学报,1997:18(5):635—636

上一篇:乘法分配律教学片段下一篇:热电厂冷却塔施工