当前位置:文档之家› 软件体系结构作业(完整版)

软件体系结构作业(完整版)

软件体系结构作业(完整版)
软件体系结构作业(完整版)

第一章:

1.根据自己的经验,谈谈对软件危机的看法。

软件危机是指软件生产方式无法满足迅速增长的计算机需求,开发和维护过程出现的一系列问题。

以下几个原因导致:(1)软件自身特点

(2)开发人员的弱点

(3)用户需求不明

(4)缺乏正确理论指导

(5)开发规模越来越大

(6)开发复杂度越来越高

可以通过软件生命周期的模型和软件工具的使用来缓解危机,通过程序自动化和软件工业化生产的方法实现软件标准化的目标,进一步缓解软件危机带来的影响。

软件危机有利有弊,除了带来许多麻烦,也给我们带来许多挑战,克服危机的过程,我们在技术上和创新上都有了一个提升,也算是间接为软件产业的发展做了贡献。

2.什么是软件重用,软件重用的层次可以分为哪几个级别?

软件重用:是指在两次或多次不同的软件开发过程中重复使用相同或相似软件元素的过程。可以分为三个层次:

(1)代码重用(2)设计结果重用(3)分析结果重用

3.什么是可重用构件?相对于普通的软件产品,对可重用构件有何特殊要求?

可充用构件表示软件重用过程中,可重用的软件构件元素。

可重用构件的特殊要求:

(1)可重用构件应该具有功能上的独立性与完整性;

(2)可重用构件应该具有较高的通用性;

(3)可重用构件应该具有较高的灵活;

(4)可重用构件应该具有严格的质量保证;

(5)可重用构件应该具有较高的标准化程。

4.基于构件的软件开发的优势是什么?基于构件的软件开发面临哪些挑战和困难?

优势:基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降

低了软件开发的费用

困难和挑战:没有可依据的参考,可用资源和环境缺乏,开发难度高,而各方面需求增长速度与日剧增,更新和升级的跟进是一个不小的挑战.此外,在同

一系统采用多个开发商提供的构件,它们之间的兼容性可能是开发过程中所

要面对的一个严峻的问题

挑战和困难:

(1)在同一系统采用多个开发商提供的构件,它们之间的兼容性可能是开发过程中所要面对的一个严峻的问题;

(2)采用随处可以购买到的构件可能会使开发出来的软件产品丧失技术上的独创性和市场上的竞争力;

(3)第三方的构件开发商可能歇业,这会使购买的构件失去维护服务。这些都是在购买第三方构件进行软件开发时无法回避的问题,因此需要对这些风险进行充

分的估计。

5.简述3种应用最为广泛的构件技术规范COM、CORBA和EJB的各自特点。

CORBA的特点:

(1)实现客户与服务对象的完全分开,客户不需要了解服务对象的实现过程以及具体位置。

(2)应用程序间的统一接口。

(3)采用面向对象的软件实现方法开发应用系统,实现对象内部细节的完整封装,保留对象方法的对外接口定义。

(4)分层的设计原则和实现方式。

COM的特点:

(1)语言无关性。

(2)可重用性。

EJB的特点:

(1)可移植性。

(2)平台独立性。

(3)简化了分布式对象的开发、部署和访问。

6.就项目管理方面而言,软件重用项目与非重用项目有哪些不同之处。

使用软件重用技术可减少重复工作,提高软件生产率,缩短开发周期。同时,由于软构建大多经过严格的质量认证,因此有助于改善软件质量,大量使用构建,软件的灵活性和标准化程度可得到提高。

7.实际参与/组织一个软件重用项目的开发,然后总结你是如何组织该项目的开发的。

针对之前的一个软件重用项目的开发过程,将该项目的的软部件进行整合,整理成软部件库,对不要重用的部分进行修剪同时选取需要的软部件。根据以上步骤,然后结合当前开发的项目,进行软件重用。

8.软件体系结构的研究范畴有哪些?举例加以说明?

研究范畴:非形式化的框图,形式化建模符号、体系结构说明的分析与开发工具,体系结构再工程。其中典型的例子是美国卡耐基梅隆大学的Robert J.A11en于l997年提出的Wright系统

9.根据软件体系结构的定义,你认为软件体系结构的模型应该由哪些部分组成?

构件(component): 可以是一组代码,如程序的模块也可以是一个独立的程序(如数据库

的SQL服务器);连接件(connector):是关系的抽象,用以表示构件之间的相互作用。如过程调用、管道、

远程过程调用等;限制(constrain):用于对构件和连接件的语义说明。

10.在软件体系结构的研究和应用中,你认为还有哪些不足之处?

(1)缺乏同意的软件体系结构的概念,导致体系结构的研究范畴模糊。

(2)ADL繁多,缺乏同意的ADL的支持。

(3)软件体系结构研究缺乏统一的理论模型支持。

(4)在体系结构描述方便,尽管出现了多种标准规范或建议标准,但仍很难操作。(5)有关软件体系结构性质的研究尚不充分,不能明确给出一个良体系结构的属性或判定标准,没有给出良体系结构的设计指导原则,因而对于软件开发实践缺乏有力的促进作用。

(6)缺乏有效的支持环境软件体系结构理论研究与环境支持不同步,缺乏有效的体系结构分析、设计、方针和验证工具支持,导致体系结构应用上的困难。

(7)缺乏有效的体系结构复用方案。

(8)体系结构发现方法研究相对欠缺。

第二章:

1.软件体系结构模型是软件体系结构的表现形式,软件体系结构模型可以分为哪几种,具体是如何划分的?

(1)结构模型

这是一个最直观、最普遍的建模方法。这种方法以体系结构的构件、

连接件和其他概念来刻画结构,并力图通过结构来反映系统的重要语

义内容,包括系统的配置、约束、隐含的假设条件、风格、性质。研

究结构模型的核心是体系结构描述语言。

(2)框架模型

框架模型与结构模型类似,但它不太侧重描述结构的细节而更侧重于

整体的结构。框架模型主要以一些特殊的问题为目标建立只针对和适

应该问题的结构。

(3)动态模型

动态模型是对结构或框架模型的补充,研究系统的"大颗粒"的行为

性质。例如,描述系统的重新配置或演化。动态可能指系统总体结构

的配置、建立或拆除通信通道或计算的过程。这类系统常是激励型的。

(4)过程模型

过程模型研究构造系统的步骤和过程。因而结构是遵循某些过程脚本的结果。

(5)功能模型

该模型认为体系结构是由一组功能构件按层次组成,下层向上层提供服务。

它可以看作是一种特殊的框架模型。

2.选择一个规模合适的系统,为其建立“4+1”模型。

3.引入了软件体系结构以后,传统软件过程发生了哪些变化?这种变化有什么好处?

软件体系结构的引入使软件设计开发更加具体和形象,它的模型更使得软件过程更加方便和多样化。其好处在于:包括程序员在内的绝大多数系统的利益相关人员都借助软件体系结构来进行彼此理解、协商、达成共识或者相互沟通的基础,软件体系机构的模型可以应用到具有相似质量属性和功能需求的系统中,并能够促进大规模软件的系统级复用,在很多方面使得软件开发更加人性化。

4.软件体系结构的生命周期模型与软件生命周期模型有什么关系?

软件体系结构是贯穿于软件研发的整个生命周期的系统开发、运行、维护所实施的全部工作和任务的结构框架,给出了软件开发活动各阶段之间的关系,软件体系结构的生命周期模型为软件生命周期模型提供了很好的结构依据和参考,也为其构建了很好的开发方式。

第三章软件体系结构风格

1、层次系统结构和基于消息的层次系统结构有什么区别?

层次结构将系统进行分级组织,其组织思想是:在层次结构中,每一层向上层提供服务,并作为客户向下层请求服务。分层系统的优点:支持基于抽象程度递增的系统设计;支持功能增强;支持重用。分层系统的缺点:并不是每个系统都可以很容易的划分为分层的模式,甚至即使是层次化的,出于性能的考虑,也不得不吧一些低及或高级的功能综合起来;很难找到一个合适的、正确的层次抽象方法。

消息总线是系统的连接件、负责消息的分派、传递和过滤以及处理结果的返回。消息是构件之间通信的唯一方式。由于构件通过总线进行连接,并不要求各个构件具有相同的地址空间或局限在一台机器上,因此该风格可以很好的刻画分布式开发系统,以及CORBA.DCOM和EJB规范的系统。

2、试分析和比较B/S,二层C/S和三层C/S,指出各自的优点和

缺点。

二层C/S体系结构将应用一分为二,服务器负责数据管理,客户机完成与用户的交互任务。优点(1)C/S体系结构具有强大的数据操作的事务处理能力,模型思想简单,易于人们理解和接受。(2)对软硬件的变化有极大的适应性和灵活性,易于对系统进行扩充和缩小。(3)系统中的功能构建充分隔离,节约大量费用。缺点:(1)开发成本较高。(2)客户端程序设计复杂(3)信息内容和形式单一(4)用户界面风格不一,使用繁杂不易推广。(5)软件移植困难(6)软件维护和升级困难(7)新技术不能轻易应用。三层CS在上面的基础上进行了改造,并增加了一个服务器,其优点:(1)允许合理的划分三层结构的功能,能提高系统和软件的可维护性和可扩展性。(2)具有良好的可升级性和开放性。(3)应用的各层可以并行开发,可以选择各自最适合的开发语言。(4)为严格的安全管理奠定了坚实的基础。

B/S风格就是上述三层应用结构的一种实现方式,其具体结构为:浏览器/Web服务器/数据库服务器。优点(1)基于B/S体系结构的软件,系统安装,修改和维护全在服务器端解决。(2)提供了异种机,异种网,异种应用服务的联机,联网,同意服务的最现实的开放性基础。缺点(1)缺乏对动态页面的支持能力,没有集成有效的数据库处理能力。(2)在数据查询等响应速度上,要远远低于C/S体系结构。(3)数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务处理应用。

3、组织或参与一个采用B/S和C/S混合体系结构的软件项目的开发,总结开发经验。

首先,开发者根据一定的原则,将系统的所有子功能分类,决定哪些子功能适合采用C/S,哪些适合采用B/S。适合采用C/S的子功能应具备以下特点:1安全性要求高;2要求具有较强的交互性;3使用范围小,地点固定;4要求处理大量数据。例如,仓库管理系统中的入库单、领料单的输入功能,财务系统中的凭证输入功能等等。而适合采用B/S 的子功能应具备以下特点:1使用范围广,地点灵活;2功能变动频繁;3安全性、交互性要求不同。例如:企业内部信息发布功能,意见箱输入功能,公司财务分析表的查询功能,总裁决策支持系统中的查询功能等等。

相对于单独采用C/S或B/S,这种方案的优点在于:1保证敏感数据的安全性,特别是对数据库的修改和新增记录加强了控制;2经济有效地利用企业内部计算机的资源,简化了一部分可以简化的客户端;3既保证了复杂功能的交互性,又保证了一般功能的易用与统一;4系统维护简便,布局合理;5网络效率最高。

如果系统开发者在系统设计阶段决定采用这种C/S与B/S相结合的模式,那么在系统开发生命周期的如下各个阶段相对这种新模式都应有所响应。

在系统设计阶段主要考虑的是MIS系统平台选择问题。在详细设计阶段,系统开发者需要根据企业自身的业务特点,以及一定的选择原则,来决定各个子功能采用哪一种模式并在系统说明书上分别注明。在编码设计阶段,系统开发者需要针对采用不同模式的子功能,选用不同的编码方式(例如:C/S可以采用VB编程环境,而B/S采用ASP方法),然后编译生成不同的客户应用及Web服务程序。在安装调试阶段,其特点主要体现在系统的物理结构上,即特定的客户应用程序将被安装在特定的使用者的客户端上,Web服务程序需要被安装在Web服务器上,而每个客户端上都将被安装上浏览器,同时,客户应用的使用者必须接受一定的培训。在软件维护阶段,针对不同模式的子功能应采

取不同维护方式。

4、组织或参与一个采用三层体系结构的软件项目的开发,总结开

发经验。

三层体系结构包括:用户界面表示层(USL) 、业务逻辑层(BLL) 、数据访问层(DAL) 。各层的作用:1:数据访问层:主要是对原始数据(数据库或者文本文件等存放数据的形式)的操作层,而不是指原始数据,也就是说,是对数据的操作,而不是数据库,具体为业务逻辑层或表示层提供数据服务。2:业务逻辑层:主要是针对具体的问题的操作,也可以理解成对数据层的操作,对数据业务逻辑处理,如果说数据层是积木,那逻辑层就是对这些积木的搭建。3:表示层:主要表示WEB方式,也可以表示成WINFORM方式,WEB方式也可以表现成:aspx, 如果逻辑层相当强大和完善,无论表现层如何定义和更改,逻辑层都能完善地提供服务。

三层是指逻辑上的三层,即使这三个层放置到一台机器上。三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。在保证客户端功能的前提下,为用户提供一个简洁的界面。这意味着如果需要修改应用程序代码,只需要对中间层应用服务器进行修改,而不用修改成千上万的客户端应用程序。“中间业务层”的用途有很多,例如:验证用户输入数据、缓存从数据库中读取的数据等等....但是,“中间业务层”的实际目的是将“数据访问层”的最基础的存储逻辑组合起来,形成一种业务规则。要保证“数据访问层”的中的函数功能的原子性!即最小性和不可再分。“数据访问层”只管负责存储或读取数据就可以了。

我们用三层结构主要是使项目结构更清楚,分工更明确,有利于后期的维护和升级。它未必会提升性能,因为当子程序模块未执行结束时,主程序模块只能处于等待状态。这说明将应用程序划分层次,会带来其执行速度上的一些损失。但从团队开发效率角度上来讲却可以感受到大不相同的效果。需要说明一下,三层结构不是.NET的专利,也不是专门用在数据库上的技术。它是一种更加普适的架构设计理念。此种架构要在数据库设计上注意表之间的关系,尽力满足主与子的关系。在功能上对用户要有一定的限制,不要表现在对于子表的删除操作一定要慎重,以免造成主表与子表的数据在逻辑上出现的主表的外键在子表中没有相对应的值。

“三层结构”开发模式,入门难度够高,难于理解和学习。这是对于初学程序设计的人来说的。以这种模式开发出来的软件,代码量通常要稍稍多一些。这往往会令初学者淹没在茫茫的代码之中。望之生畏,对其产生反感,也是可以理解的。

5、在软件开发中,采用异构结构有什么好处,其负面影响有哪

些?

1).结构有不同的处理能力的强项和弱点,一个系统的体系结构应该根据实际需要进行选择,以解决实际问题。

2).软件包,框架,通信以及其他一些体系机构上的问题,目前存在者多中标准。即使再某一段时间内某一标准占据着统治地位,但变动最终是绝对的。

3).工作中,我们总会遇到一些遗留下的代码,它们仍有效用,但是却与新系统有某种程度上的不协调。然而在很多场合,将技术与经济综合进行考虑时,总是决定不重写它们。

4).在某一单位中,规定了共享共同的软件包或相互关系的一些标准,仍会存在解释或表示习惯上的不同。

负面影响:大多数应用程序只使用10%的代码实现系统的公开功能,剩下90%的代码完成系统管理功能:输入和输出,用户界面,文本编辑,基本图表,标准对话框,通信,数据确认和旁听追踪,特定领域的基本定义等。

6、选择一个你熟悉的大型软件系统,分析其体系结构中用到的风

格,以及表现出的特点(为什么要采用这种风格?带来了哪些优势?具有哪些不足?)。

对社交软件的分析:采用了C/S风格,并且在一定程度上算为三层C/S风格

表示层:社交信息的显示,并提供了更新和搜索等操作

功能层:具有搜索、在线聊天、离线留言、文件传输等等功能

数据层:有数据库服务器提供留言、相册、好友信息等数据

优点:使逻辑结构更为清晰,分类明确,给用户更好的体验

缺点:需要数据通信的支持,对网络的依赖很高,没有网络,许多功能将没有意义。

7、黑板风格和仓库风格之间的区别是什么?

仓库风格的体系结构由两个构件组成:一个是中央数据结构,用于说明当前数据的状态;

一个是一组对中央数据进行操作的独立构件。对于系统中数据和状态的控制方法有两种:一个是传统的方法——由输人事务选择进行何种处理,并把执行结果作为当前状态存储到中央数据结构中,这时,仓库是一个传统的数据库体系结构;另一种方法——由中央数据结构的当前状态决定进行何种处理。这时,仓库是一个黑板体系结构,即黑板体系结构是仓库体系结构的特殊化。

8、研究项目:著名的体系结构风格有多少种?利用图书馆和

Internet做一些调查,然后给出一个数量。

最为常用的软件体系结构风格,总共有五种,分别是:

数据流风格【Data Flow Style】

调用/返回风格的体系结构【Call-and-Return Style】

虚拟机风格的体系结构【Virtual Machine Style】

独立组件风格的体系结构【Independent Components Style】

仓库风格的体系结构【Data Centered (Repositories) Style】

第四章软件体系结构描述

1、体系结构描述有哪些方法?有哪些标准和规范?

传统软件体系结构描述方法:

1、图形表达工具

对于软件体系结构的描述和表达,一种简洁易懂且使用广泛的方法是采用由矩形框和有向线段组合而成的图形表达工具。在这种方法中,矩形框代表抽象构件,框内标注的文字为抽象构件的名称,有向线段代表辅助各构件进行通讯、控制或关联的连接件。

目前,这种图形表达工具在软件设计中占据着主导地位。尽管由于在术语和表达语义上存在着一些不规范和不精确,而使得以矩形框与线段为基础的传统图形表达方法在不同系统和不同文档之间有着许多不一致甚至矛盾,但该方法仍然以其简洁易用的特点在实际的设计和开发工作中被广泛使用,并为工作人员传递了大量重要的体系结构思想。

为了克服传统图形表达方法中所缺乏的语义特征,有关研究人员试图通过增加含有语义的图元素的方式来开发图文法理论。

2、模块内连接语言

软件体系结构的第二种描述和表达方法是采用将一种或几种传统程序设计语言的模块连接起来的模块内连接语言MIL(Module Interconnection Language)。由于程序设计语言和模块内连接语言具有严格的语义基础,因此他们能支持对较大的软件单元进行描述,诸如定义/使用和扇入/扇出等操作。

MIL方式对模块化的程序设计和分段编译等程序设计与开发技术确实发挥了很大的作用。但是由于这些语言处理和描述的软件设计开发层次过于依赖程序设计语言,因此限制了他们处理和描述比程序设计语言元素更为抽象的高层次软件体系结构元素的能力

2、体系结构描述语言与程序设计语言有什么区别?

ADL与其他的语言比较具有以下能力:(1)构造能力:ADL能够使用较小的独立体系结构元素来建造大型软件系统;(2)抽象能力:ADL使得软件体系结构中的构件和连接件描述可以只关注他们的抽象特性,而不管其具体的实现细节;(3)重用能力:ADL使得组成软件系统的构件,连接件甚至是软件体系结构都成为软件系统开发和设计的可重用部件;(4)组合能力:ADL使得其描述的每一系统元素都有其自己的布局结构,这种描述布局结构的特点使得ADL支持软件系统的动态变化组合;(5)异构能力:ADl允许多个不同的体系结构描述关联存在;(6)分析和推理能力:ADL允许对其描述的体系结构进行多种不同的性能和功能上的多种推理分析。ADL与需求语言的区别在于后者描述的是问题空间,而前者描述的是接空间。ADL与建模语言的区别在于后者对整体行为的关注要大于部分的关注,而ADl集中在构建的表示上。

3、典型的软件体系结构描述语言包括哪些?它们分别需要描述

体系结构中哪些基本元素?

主要有五种ADL:UniCon,Darwin,C2 SADL,Acme和xADL.

Rapide:一种事件驱动的ADL,它以体系结构定义作为开发框架,支持基于构件的开发.该语言提供了建模,分析,仿真和代码生成的能力,但是没有将连接子显式地表示为一阶实体.

Wright:其主要特点是将CSP用于软件体系结构的描述,从而完成对体系结构描述的某些形式化推理(包括相容性检查和死锁检查等).但它仅仅是一个设计规约语言,只能用于描述,无法支持系统生成,同时CSP的使用也是比较困难的事情.

Acme:支持ADL之间的映射及工具集成的体系结构互交换语言.其目标是作为体系结构设计的一个共同的互交换格式,以便将现有的各种ADL在这个框架下统一起来;而它本身也可以看作是一种ADL.

xArch:一种基于XML的ADL.它使用XML定义了描述体系结构的核心元素,可以用来简单的描述软件体系结构,也可以作为设计其它ADL的基础,或者用作体系结构描述描述语言的互交换机制。

xADL2.0:以xArch 为基础的基于XML 的ADL。除了xArch 的核心元素,xADL2.0 还提供了对系统运行时刻和设计时刻的元素的建模支持,类似版本,选项和变量等更高级的配置管理观念,以及对产品家族的体系结构的建模支持.此外,xADL2.0还利用XML 的可扩展性简化了新的ADL的设计及其相应工具的开发过程。

4、对一个你熟悉的软件系统,如果要使用ADL对其体系结构进行描述,你会选择哪一种?为什么?这样选择的优点和缺点各有哪些?

我会选择Acme。下面介绍原因:

Acme是CMU的Acme项目的产物.该项目始于1995年,目的是为了研究一个公共的语言,使之能在不同的体系结构设计工具之间作为体系结构描述信息互换的桥梁.目前Acme及其开发工具包AcmeLib提供了一个通用的,可扩展的基础框架用于描述,表示,生成以及分析系统的软件体系结构.而作为桥梁作用的Acme,由于必须具备大多数ADL共有的概念,因此它本身也是一个ADL,并且是一个相对而言比较简单的通用的ADL.Acme的建模元素和特点Acme的主要特点表现为:

采用七个基本的体系结构设计元素作为体系结构的本体(architectural ontology),

采用灵活的标注机制支持使用外部语言定义的非结构化信息,使用类型机制对常见的可复用的软件体系结构俗语和风格进行抽象描述使用开放的语义框架对体系结构描述进行推理Acme的设计元素Acme的设计元素,以下对Acme所采用的设计元素进行简要介绍.这七个设计元素是:

构件(components):系统中的计算元素和数据存储.直观的说,就是线框图中的框.典型的构件有:客户端,服务器,数据库,黑板,过滤器等.

连接子(connectors):构件之间的交互.直观的说,就是线框图中的线.典型的连接子有:过程调用,事件广播,客户和服务器之间的协议等.

系统(systems):构件和连接子的配置.

端口(ports):构件通过端口与外界发生交互.一个构件可以有多个不同类型的端口,每个端口都是一个接口的集合,例如一系列需要以特定顺序调用的过程.

角色(roles):连接子通过角色与外界发生交互.角色定义了构件之间交互的参与者.

表示(representations):构件或者连接子内部结构的描述.通过"表示"这个概念,系统的体系结构就具有了层次结构.同时,"表示"这个概念可以用于描述体系结构实体的多个视图(但是Acme本身并不处理视图之间的对应关系)。

映射(rep-maps):将构件或者连接子的内部"表示"与外部接口进行映射.简单的客户端-服务器系统

以下是一个简单的客户端-服务器系统的Acme描述:

Acme本质上是一些ADL的建模元素的"最大公约数",因此它能作为不同ADL及其支撑工具之间用于信息交换的语言.这是Acme的最大作用,当然这也使得它只能成为一个建模能力一般的ADL,例如Acme中就没有相应的机制用于对构件或者系统行为进行描述或者规约.相关研究者正在考虑在Acme中引入类似于Wright中使用的CSP的形式化语言来解决这个问题.当然,作为一个通用的交换语言,Acme的能力及其可扩展性也不是无限的.例如Acme的扩展仅限于在七个基本设计元素的基础上进行,并且Acme中缺乏用于描述属性及其数据格式的元语言.无论如何,Acme是第一个ADL之间的互交换语言,它的出现使得不同的ADL支持工具之间有可能进行体系结构描述信息的交流.

5、选择一个规模适中的系统,使用UML为其建模。

为一个网上购物系统利用UML为其建模,如下:

统一开发过程RUP把整个软件开发过程分为初始、细化、构造、交付四个阶段,具有用例驱动、以架构为中心、迭代和增量的特点。同其它软件开发方法相比较,RUP具有自身独特的优势,为软件开发提供了重要的方法论指导根据对网上购物系统的体系结构及建模分析,采用UML作为建模语言,结合RUP的基本开发过程,提出适合网上购物系统开发的建模过程。该过程遵循了RUP四个阶段的理论,主要是对初始和细化两个阶段进行了详细的分析。整个过程包括业务建模、需求建模、对象建模、数据库建模和物理建模等五个步骤,每个步骤都会生成一定的系统模型,并用相应的UML图来描述这些模型。在建模过程中,论文采用了RUP中迭代增量式的开发思想,把系统的建模进一步分解为迭代,一个迭代是一个从系统的业务建模到物理建模的完整过程,每一个迭代都会产生一个模型版本,是最终模型的一个子集,它增量式地发展,从一个迭代过程到另一个迭代过程,直到成为系统的最终模型。

1 业务建模

业务建模用于对网上购物系统环境的业务过程进行建模。系统分析人员通过网上购物系统的业务建模能够了解系统所处的环境和业务过程,业务建模能够将这些信息进行体现,并表现环境中存在或可以觉察到的过程,从而详细说明网上购物系统所要支持的业务过程。业务建模既确定了业务过程涉及到的业务对象和领域对象,又确定了每个业务过程所需要的资源和能力,包括人员、每个人员的职责和执行的操作、过程的执行方式和协作等。这些信息对于下一步的需求建模是非常重要和有用的。

业务建模一般通过业务过程图来进行描述。业务过程图是对事件逻辑的归类,这些事件被认为是业务的基本元素。其目的是将整个业务领域作为一个过程集进行描述,而不关心过程的次序或单个过程之间的交互作用。业务过程图不必严格精密,它应该全面而不是精确。重要的是,通过查看业务过程图,系统分析人员、设计人员、开发人员和用户能够迅速获得关于业务范围和活动的总体印象。

2 需求建模

需求建模的主要工作是获得系统的需求,建立待开发系统的模型。而用例则有助于更好地了解系统需求并以规范化的格式进行描述。需求建模就是要以用例的方式来描述系统的功能,其主要工作成果是用例模型。采用用例模型来描述进行需求建模的主要过程如下:(1)确定所要开发系统的参与者,参与者可以是人,也可以是与系统交互的外

部系统。网上购物系统的参与者主要有管理员、工作人员、顾客、支付系统等。(2)从执行者的角度出发,分析他和系统需要进行的交互作用,并从这些交互过程中抽象出用例。从顾客的角度出发,网上购物系统一般有以下用例:用户登录、用户注册、浏览商品、搜索商品、购买商品、下订单、支付等;从系统管理员的角度出发,网上购物系统一般有以下用例:用户登录、用户管理、商品管理、订单管理等。(3)对每一用例确定其主要的业务过程。例如“用户登录”用例的业务过程为顾客、系统管理员、工作人员等通过用户登录可以获得相应的服务;“支付”用例的业务过程为顾客为所够买物品选择付款方式进行付款。(4)以信息流为中心逐步形成完整的用例模型。网上购物系统的完整用例模型包括很多的用例图,其中既包括系统的顶层用例图,也包括各种细化的用例图。

3 对象建模

确定了系统的需求分析、得出系统的用例模型以后,需要进行的主要任务就是对系统进行对象建模。对象建模的主要工作是把需求建模阶段产生的用例模型转化为系统的静态结构模型和动态行为模型,使建立的系统在特定的环境下完成需求分析中的任务和功能,有利于系统的实现和迭代。这其中主要包括静态结构建模和动态对象建模两部分。

4 数据库建模

数据库建模是从计算机系统的角度对系统所要处理的数据进行建模。数据库系统是整个网上购物系统的基础,数据库建模的好坏直接影响到整个系统的结构、实现的复杂程度、性能、安全性和可维护性等。传统的逻辑数据库建模工具“实体一联系(E.R)""图只针对数据建模,不能对行为建模。而UML的类图能够更好的用于数据库建模。UML 的类图不但对数据建模,而且能对行为建模,这些行为在物理数据库中被设计成触发器和存储过程。即使是关系数据库,也可以在类图设计落实后,再采取标准方法把类图映射到具体的关系模型。从类图到关系模型的转换,按照一个类映射为一个关系的原则进行,而类的属性即为关系的属性,标识的标识符即为关系的主键。

5 物理建模

物理建模用于网上购物系统建模过程的最后阶段,是对网上购物系统的物理方面进行建模。它使用UML中的组件图描述网上购物系统中代码组件的物理结构及各个组件之间的依赖关系,使用配置图定义网上购物系统的软硬件结构及通信机制,表示软硬件系统之间的协作关系。

以上五个步骤是根据RUP的四个阶段细化的结果,分别对应了RUP中相应的核心工作流。其中业务建模对应RUP的业务建模工作流,需求建模对应RUP的需求建模工作流,对象建模和数据库建模对应RUP的分析和设计工作流,物理建模对应RUP的实施工作流,对开发完成的系统进行测试、部署和管理分别对应RUP的测试工作流、部署工作流等。

6、尝试使用XADL 2.0描述一个基于B/S体系结构的软件系统。

XADL2.0是以xArch 为基础的基于XML 的ADL。除了xArch 的核心元素,xADL2.0 还提供了对系统运行时刻和设计时刻的元素的建模支持,类似版本,选项和变量等更高级的配置管理观念,以及对产品家族的体系结构的建模支持.此外,xADL2.0还利用XML 的可扩展性简化了新的ADL的设计及其相应工具的开发过程。

充分发挥了 B/S 与 C/S 体系结构的优势,弥补了二者不足。充分考虑用户利益,保证浏览查询者方便操作的同时也使得系统更新简单,维护简单灵活,易于操作。(2) 信息发布采用 B/S 结构,保持了瘦客户端的优点。装入客户机的软件可以采用统一的 WWW 浏览器。而且由于WWW浏览器和网络综合服务器都是基于工业标准,可以在所有的平台上工作。(3)

数据库端采用 C/S 结构,通过 ODBC/JDBC 连接。这一部分只涉及到系统维护、数据更新等,不存在完全采用 C/S 结构带来的客户端维护工作量大等缺点。并且在客户端可以构造非常复杂的应用,界面友好灵活,易于操作,能解决许多 B/S 存在的固有缺点。(4) 对于原有的基于 C/S 体系结构的应用,只需开发用于发布的 WWW 界面,就可非常容易地升级到这种体系结构,并保留原来的某些子系统。这样就充分地利用现有系统的资源。(5) 通过在浏览器中嵌入 ActiveX 控件可以实现在浏览器中不能实现或实现起来比较困难的功能。例如通过浏览器进行报表的应答。(6) 将服务器端划分为WEB服务器和WEB应用程序两部分。WEB 应用程序采用组件技术实现三层体系结构中的逻辑部分,达到封装的目的。B/S 结构与 C/S 结构各具优缺点,怎样结合 B/S 与 C/S 开发系统是开发 MIS 系统普遍关注的问题。在应用过程中,应结合实际情况,并根据实际情况进行系统的选型与构建,从而开发出高效、安全的应用系统。

计算机系统结构三四章作业及答案

3.1 简述流水线技术的特点。(1) 流水线把一个处理过程分解为若干个子过程,每个子过程由一个专门的功能部件来实现。因此,流水线实际上是把一个大的处理功能部件分解为多个独立的功能部件,并依靠它们的并行工作来提高吞吐率。(2) 流水线中各段的时间应尽可能相等,否则将引起流水线堵塞和断流。(3) 流水线每一个功能部件的前面都要有一个缓冲寄存器,称为流水寄存器。(4) 流水技术适合于大量重复的时序过程,只有在输入端不断地提供任务,才能充分发挥流水线的效率。(5) 流水线需要有通过时间和排空时间。在这两个时间段中,流水线都不是满负荷工作。 3.2 解决流水线瓶颈问题有哪两种常用方法?答:细分瓶颈段与重复设置瓶颈段 3.3 有一条指令流水线如下所示: (1 用两给出条指 (1) (24? 变八级流水线(细分) ? 重复设置部件 )(ns 85 1 T n TP 1pipeline -== 3.4 有一个流水线由4段组成,其中每当流过第三段时,总要在该段循环一次,然后才能流到第4段。如果每段经过一次所需的时间都是△t ,问: (1)当在流水线的输入端连续地每△t 时间输入一个任务时,该流水线会发生什么情况? (2)此流水线的最大吞吐率为多少?如果每2△t 输入一个任务,连续处理10个任务时,其实际吞吐率和效率是多少? (3)当每段时间不变时,如何提高流水线的吞吐率?人连续处理10个任务时,其吞吐率提高多少? 解:(1)会发生流水线阻塞情况。

(2) (3)重复设置部件 吞吐率提高倍数= t t ??2310 75 =1.64 3.5 有一条动态多功能流水线由5段组成,加法用1、3、4、5段,乘法用1、2、5段,第2段的时间为2△t ,其余各段的时间均为△t ,而且流水线的输出可以直接返回输入端或暂存于相应的流水线寄存器中。现在该流水线上计算 ∏=+4 1 )(i i i B A ,画出时空图,并计算其吞吐率、加速比和效率。 +B 4;再计算由图可见,它在18个△t 时间中,给出了7个结果。所以吞吐率为: 如果不用流水线,由于一次求积需3△t ,一次求和需5△t ,则产生上述7个结果共需(4×5+3×3)△t =29△t 。所以加速比为: 该流水线的效率可由阴影区的面积和5个段总时空区的面积的比值求得: 3.6 在一个5段流水线处理机上,各段执行时间均为△t,需经9△t 才能完成一个任务,其预约表如下所示。 段23 时间 入 A 1 B 1 A 2 B 2 A 3 B 3 A 4 B 4 A B C D A × B C ×D

计算机体系结构期末复习

计算机体系结构期末复习资料 1.并行性:是指在同一时刻或者是同一时间间隔内完成两种或两种以上性质相同或不同的工作。 2.CPI:每条指令执行时所花费的平均时钟周期。 3.体系结构:即计算机的属性,即概念性结构与功能特性。 4.Amdahl定理:加快某部件执行速度所获得的系统性能加速比,受限于该部件在系统中所占的重要性。 5.信息存储的整数边界:信息在主存中存放的起始地址必须是该信息(字节数)的整数倍。 6.指令系统的正交性:指在指令中各个不同含义的字段,在编码时应互不相关,相互独立。 7.流水线技术:是指将一个重复的时序过程,分解成为若干子过程,而每个过程都可有效在其专用功能段上与其他子过程同时执行。 8.定向技术:在某条指令产生一个结果之前,其他指令并不直接需要该计算结果,如果能将该计算结果从其他产生的地方直接送到其他指令需要它的地方,那么就可以避免暂停的技术就叫定向技术。 9.相关:衡量两个随机变量之间相关程度的指标。 10.向量流水处理机:是指处理机具有向量数据表示并通过向量指令对向量的各元素进行处理。、

11.定向:将计算结果从其产生的地方直接送到其他指令需要它的地方,或所有需要它的功能单元,避免暂停。 12.指令集的并行:当指令之间不存在相关时,它们在流水线中是可以重叠起来并行执行。 13.记分牌技术:流出和读操作数。在没有结构冲突时,尽可能早地执行没有数据冲突的指令,实现每个时钟周期执行一条指令。如果某条指令被暂停,而后面的指令与流水线中正在执行或被暂停的指令都不相关,是这些指令可以跨越它,继续流出和执行下去。 14.Tomasulo算法:寄存器换名是通过保留站和流出逻辑来共同完成,当指令流出时,如果其操作数还没有计算出来,则该指令中相应的寄存器换名将产生这个操作数的保留站的标识。因此,指令流出到保留站后,其操作数寄存器或者换成了数据本身,或换成了保留站的标识,和寄存器无关。后面指令对该寄存器的写入操作就不会产生WAR冲突。 15.替换算法:由于主存中的块比Cache中的块多,所以当要从主存中调一个块到Cache中时,会出现该块所映象到的一组(或一个)Cache块已全部被占用的情况。这时,需要被迫腾出其中的某一块,以接纳新调入的块。

体系结构大作业

软件体系结构课程大作业 1. 常规作业 Course Project: Tool Warehouse System 1.1 项目背景 FastRepair?是一家大型的跨国机械电子修理公司,建立于1980年。公司总部位于美国印第安纳州,印第安纳波利斯。目前公司总部有超过10000人的全职雇员。该公司拥有8家较小的子公司,位于整个美国境内,每个子公司的全职员工人数在3000到9000之间。 FastRepair 的业务主要涉及四个领域:大型建筑设备修理(Construction Device Repair)、汽车修理(Automobile Repair)、家电修理(Appliance Repair)和计算机修理(Computer Repair),相应的划分为四个大的部门(Department)。每个公司的员工(Employee)都根据自己的专业特长隶属于一个部门。然而,一些具有跨行业技能的高级员工(Specialist)独立于任何部门,他们平时会做一些与自己专业相关的工作,在遇到紧急情况或特殊项目时,需要立即被分配到这些项目上去。 公司的每一个员工都有两类工具(Tool),每类工具有50-100件左右。第一类工具放入员工工具箱中的一组常用廉价工具(Inexpensive Tool),另外一类是

一些贵重的工具(Expensive Tool )。对于工具箱中的廉价工具,员工在领取时需要进行登记(Register ),自行保管,但在损坏时需要进行注销(Cancellation )。而对于贵重工具(>200$的工具),必须通过工具仓库管理系统进行统一管理。在使用时需要办理租借(Lend )手续。需要注意的是,对于一般员工,只能借与自己专长相关的工具(也就是本部门内的工具),而对于专家,则可以借所有类型的工具。 由于工具种类庞杂,数量巨大;某些工具重量也很大;且分布在不同的地理位置。FastRepair 决定开发一套工具仓库管理系统(Tool Warehouse System TWS )。 TWS 主要分为两个部分,第一部分是员工与工具信息管理系统(Employ and Tool Management System ETMS ),详细记录工具的借、还与工具状态,公司内部员工可以通过本地企业局域网(Intranet )查询自己工具的借还情况,并发出对贵重工具的请求。对于本地没有的特殊工具,员工可以使用ETMS 通过互联网(Internet )在总公司或各个子公司的仓库中查找特定工具,并发出借用该工具的请求。 第二部分是一个仓库的实时管理系统(Warehouse Management System WMS ),位于总公司和每个子公司的工具仓库,在提取具体工具时,用户需要到具体的工具仓库进行工具的提取(也可以在工具仓库现场借工具),某个仓库的工具借用过程的示意图如下所示: 12. 验有效传送带 工具货柜 工具货柜工具货柜admin 抓将工具放置到传送带上 FastRepair 对WMS 的具体要求如下所示: 仓库的实时管理系统中存在多个工具抓取机器人,每个机器人都可从货柜上获取工具并将其放在工具传送带上,工具传送带装置根据重量传感器得知是否有工具在传送带上,并将工具传送到出口处。 用户在仓库的出口处向仓库管理员提交工具租借请求,由管理员将该请求输入仓库控制电脑,电脑将控制仓库中的机器人抓取相应的工具并将其放到工具传

软件体系结构KWIC实验

《软件体系结构》 实验:软件体系结构风格之应用

一、实验目的 通过KWIC 实例分析,理解和掌握软件体系结构风格设计与实现。 二、实验内容 多种软件风格设计与实现之KWIC 实例: 1.采用主/子程序体系结构风格实现KWIC 关键词索引系统 2.采用面向对象体系架构风格实现KWIC 关键词索引系统 3.采用管道过滤 体系架构风格实现KWIC 关键词索引系统 4.采用事件过程调用体系架构风格实现KWIC 关键词索引系统 三、实验要求与实验环境 熟练掌握基于主/子程序体系结构风格的KWIC 关键词索引系统,在此基础上,完成基于面向对象体系架构风格的KWIC 关键词索引系统设计与实现。选做基于管道过滤体系架构风格的KWIC 关键词索引系统;选做基于事件过程调用体系架构 风格的KWIC 关键词索引系统。 实验课前完成实验报告的实验目的、实验环境、实验内容、实验操作过程等 内容;实验课中独立/团队操作完成实验报告的实验操作、实验结果及结论等内容;每人一台PC 机,所需软件Win2003/XP 、UML 工具(EclipseUML/ Rose/Visio/StartUML/)、Eclipse/MyEclipse、JDK6.0 等。 四、实验操作 1、采用主/子程序体系结构风格实现KWIC 关键词索引系统 主程序/子程序风格(Main Program/Subroutine Style)将系统组织成层次结构,包括一个主程序和一系列子程序。主程序是系统的控制器,负责调度各子程 序的执行。各子程序又是一个局部的控制器,调度其子程序的执行。设计词汇表:主程序main(), 子程序shift(), sort() 方法,方法的调用,返回构件和连接件类型:

计算机系统结构网上作业

计算机系统结构作业参考答案 一、 1、试述现代计算机系统的多级层次结构。 计算机系统具有层次性,它由多级层次结构组成。从功能上计算机系统可分为五个层次级别:第一级是设计级。这是一个硬件级,它由机器硬件直接执行。 第二级是一般机器级,也称为机器语言级。它由微程序解释系统.这一级是硬件级。 第三级是操作系统级,它由操作系统程序实现。这些操作系统由机器指令和广义指令组成,这些广义指令是操作系统定义和解释的软件指令。这一级也称混合级。 第四级是汇编语言级。它给程序人员提供一种符号形式的语言,以减少程序编写的复杂性。这一级由汇编程序支持执行。 第五级是高级语言级。这是面向用户为编写应用程序而设置的。这一级由各种高级语言支持。 2、试述RISC设计的基本原则和采用的技术。 答:一般原则: (1)确定指令系统时,只选择使用频度很高的指令及少量有效支持操作系统,高级语言及其它功能 的指令,大大减少指令条数,一般使之不超过100条; (2)减少寻址方式种类,一般不超过两种; (3)让所有指令在一个机器周期内完成; (4)扩大通用寄存器个数,一般不少于32个,尽量减少访存次数; (5)大多数指令用硬联实现,少数用微程序实现; (6)优化编译程序,简单有效地支持高级语言实现。

基本技术: (1)按RISC一般原则设计,即确定指令系统时,选最常用基本指令,附以少数对操作系统等支持最有用的指令,使指令精简。编码规整,寻址方式种类减少到1、2种。 (2)逻辑实现用硬联和微程序相结合。即大多数简单指令用硬联方式实现,功能复杂的指令用微程序实现。 (3)用重叠寄存器窗口。即:为了减少访存,减化寻址方式和指令格式,简有效地支持高级语言中的过程调用,在RISC机器中设有大量寄存嚣,井让各过程的寄存器窗口部分重叠。 (4)用流水和延迟转移实现指令,即可让本条指令执行与下条指令预取在时间上重叠。另外,将转移指令与其前面的一条指令对换位置,让成功转移总是在紧跟的指令执行之后发生,使预取指令不作废,节省一个机器周期。 (5)优化设计编译系统。即尽力优化寄存器分配,减少访存次数。不仅要利用常规手段优化编译,还可调整指令执行顺序,以尽量减少机器周期等。 3、试述全相联映像与直接映像的含义及区别 (1)全相连映像 主存中任何一个块均可以映像装入到Cache中的任何一个块的位置上。主存地址分为块号和块内地址两部分,Cache地址也分为块号和块内地址。Cache的块内地址部分直接取自主存地址的块内地址段。主存块号和Cache块号不相同,Cache块号根据主存块号从块表中查找。Cache保存的各数据块互不相关,Cache必须对每个块和块自身的地址加以存储。当请求数据时,Cache控制器要把请求地址同所有的地址加以比较,进行确认。 (2)直接映像 把主存分成若干区,每区与Cache大小相同。区内分块,主存每个区中块的大小和Cache 中块的大小相等,主存中每个区包含的块的个数与Cache中块的个数相等。任意一个主存块只能映像到Cache中唯一指定的块中,即相同块号的位置。主存地址分为三部分:区号、块号和块内地址,Cache地址分为:块号和块内地址。直接映像方式下,数据块只能映像到Cache中唯一指定的位置,故不存在替换算法的问题。它不同于全相连Cache,地址仅需比较一次。 (3)区别: 全相连映像比较灵活,块冲突率低,只有在Cache中的块全部装满后才会出现冲突,Cache 利用率高。但地址变换机构复杂,地址变换速度慢,成本高。 直接映像的地址变换简单、速度快,可直接由主存地址提取出Cache地址。但不灵活,块冲突率较高,Cache空间得不到充分利用。 4. 画出冯?诺依曼机的结构组成?

系统结构期末考试试题及答案

得分 评分人 填空题: (20分,每题2 分) 单选题:(10分,每题1分) A.任何虚页都可装入主存中任何实页的位置 B. 一个虚页只装进固定的主存实页位置 《计算机系统结构》期末考试试卷(A ) 得分 注:1、共100分,考试时间120分钟。 2、此试卷适用于计算机科学与技术本科专业。 1、."启动I/O"指令是主要的输入输出指令,是属于( A. 目态指令 B.管态指令 C.目态、管态都能用的指令 D.编译程序只能用的指令 2、 输入输出系统硬件的功能对 (B )是透明的 A.操作系统程序员 B.应用程序员 C.系统结构设计人员 D.机器语言程序设计员 3、 全相联地址映象是指(A ) C. 组之间固定,组内任何虚页可装入任何实页位置 D.组间可任意装入,组内是固定装入 4、( C ) 属于MIMD 系统结构 A.各处理单元同时受一个控制单元的管理 B.各处理单元同时受同个控制单元送来的指令 C.松耦合多处理机和多计算机系统 D. 阵列处理机 5、多处理机上两个程序段之间若有先写后读的数据相关,则( B ) A.可以并行执行 B.不可能并行 C.任何情况均可交换串行 D.必须并行执行 6、 计算机使用的语言是(B ) A.专属软件范畴,与计算机体系结构无关 B.分属于计算机系统各个层次 C.属于用以建立一个用户的应用环境 D. 属于符号化的机器指令 7、 指令执行结果出现异常引起的中断是( C ) A.输入/输出中断 B.机器校验中断 C.程序性中断 D.外部中断 &块冲突概率最高的 Cache 地址映象方式是(A ) A.直接 B .组相联 C .段相联 D .全相联 9、 组相联映象、LRU 替换的Cache 存储器,不影响 Cache 命中率的是(B ) A.增大块的大小 B .增大主存容量 C .增大组的大小 D .增加Cache 中的块数 10、 流水处理机对全局性相关的处理不 包括(C ) A.猜测法 B.提前形成条件码 C.加快短循环程序的执行 D.设置相关专用通路

《软件工程导论》课程大作业-题目及要求

《软件工程专业导论与职业生涯规划》具体要求 一、大作业题目(注:每个小组完成一个题目) 1、计算机系统软件是什么?具体的系统软件有哪些?它们的特点、作用、地位是什么?就其中的2~3个具体的系统软件进行较为详细的阐述。 2、计算机应用软件是什么?具体的应用软件有哪些?它们的特点、作用、地位是什么?就其中的2~3个具体的应用软件进行较为详细的阐述。 3、阐述计算机软件的发展历程,对比分析各阶段的特征、理论体系、优势与不足。 4、软件危机是什么?列举2~3个具体的软件危机案例。导致软件危机爆发的原因有哪些?简单阐述现阶段软件危机的具体表现。 5、陈述“软件工程”概念提出的历史背景,包括发生的时间、地点、人物、事件等。“软件工程”的定义自提出以来,有多种说法。请尽可能罗列各种说法,并对其中的2~3个说法进行评述。软件工程的七条基本原理是哪些?分别对每条原理进行较为详细的阐述。 6、软件工程的目标是什么?十个性能是哪些?分别对每个性能进行较为详细的阐述。 7、软件工程研究的主要内容包括哪两个方面?分别对每个方面进行较为详细的阐述。 8、软件开发过程必须遵循的软件工程原则有哪些?分别对每个原则进行较为详细的阐述。 9、软件工程的过程包括哪些?分别对每个过程进行较为详细的阐述。 10、软件生命周期的概念是什么?软件生命周期的划分有哪些阶段?分别对每个阶段进行较为详细的阐述。 11、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的瀑布模型和原型模型进行较为详细的阐述及对比分析,并各举例说明。 12、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的演化模型和喷泉进行较为详细的阐述及对比分析,并各举例说明。 13、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的基于知识的模型和基于构件的模型进行较为详细的阐述及对比分析,并各举例说明。 14、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的变换模型和双赢螺旋模型进行较为详细的阐述及对比分析,并各举例说明。 15、软件工程的四要素是哪些?分别对每个要素进行较为详细的阐述。中国制定

软件体系结构风格研究分析

软件体系结构风格研究分析 软件体系结构风格研究,分析了各种风格的特点、优缺点,最后重点介绍了三层C/S软件体系结构。 20世纪60年代中期的软件危机使得人们开始重视软件工程的研究。起初,人们把软件设计的重点放在数据结构和算法的选择上。随着软件系统规模越来越大、越来越复杂,整个系统的结构显得越来越重要。 软件体系结构风格分析 最初的软件体系结构是Mainframe结构——客户、数据和程序都被集中在主机上,通常只有少量的GUI界面,对远程数据库的访问比较困难。随着PC的广泛应用,该结构逐渐被淘汰。在20世纪80年代中期出现了Client/Server分布式计算结构,应用程序的处理在客户机和服务器之间分担。随着大型软件系统的开发,这种结构在系统的部署和扩展性方面暴漏出不足。随着Inter的发展,一个更灵活的体系结构“三层/多层计算”体系结构应运而生。 Garlan和Shaw将通用软件体系结构风格总结为以下几类:

1.数据流风格:批处理序列;管道/过滤器。 2.调用/返回风格:主程序/子程序;面向对象风格;层次结构。 3.独立构件风格:进程通讯;事件系统。 4.虚拟机风格:解释器;基于规则的系统。 5.仓库风格:数据库系统;超文本系统;黑板系统。C2风格是最常用的一种软件体系结构风格。从C2风格的组织规则和结构图中,我们可以得出,C2风格具有以下特点: (1)系统中的构件可实现应用需求,并能将任意复杂度的功能封装在一起;(2)所有构件之间的通讯是通过以连接件为中介的异步消 息交换机制来实现的;(3)构件相对独立,构件之间依赖性较少。系统中不存在某些构件将在同一地址空间内执行,或某些构件共享特定控制线程之类的相关性假设。 2.数据抽象和面向对象风格。目前软件界已普遍转向使用面向对象系统,抽象数据类型概念对软件系统有着重要作用。这种风格的构件是对象,或者说是抽象数据类型的实例。对象是一种被称作管理者的构件,因为它负责保持资源的完整性。对象是通过函数和过程的调用来交互的。图2是数据抽象和面向对象风格的示意图。面向对象的系统有许多的优点: (1)因为对象对其他对象隐藏它的表示,所以可以改变一个对象的表示,而不影响其他的对象。(2)设计者可将一些数据存取操作的

高级计算机体系结构作业汇总(非标准答案)

1.Explain the Concepts Computer Architecture 系统结构 由程序设计者所看到的一个计算机系统的属性。即计算机系统的软硬件界面。 Advanced CA 高级系统结构 新型计算机系统结构。基于串行计算机结构,研究多指令多数据计算机系统,具有并发、可扩展和可编程性。为非冯式系统结构。 Amdahl law Amdahl定律 系统中某部件由于采用某种方式时系统性能改进后,整个系统性能的提高与该方式的使用频率或占的执行时间的比例有关。 SCALAR PROCESSING 标量处理机 在同一时间内只处理一条数据。 LOOK-AHEAD 先行技术 通过缓冲技术和预处理技术,解决存储器冲突,使运算器能够专心与数据的运算,从而大幅提高程序的执行速度。 PVP 向量型并行计算处理机 以流水线结构为主的并行处理器。 SMP 对称多处理机系统 任意处理器可直接访问任意内存地址,使用共享存储器,访问延迟、带宽、机率都是等价的。MPP 大规模并行计算机系统 物理和逻辑上均是分布内存,能扩展至成百上千处理器,采用专门设计和定制的高通信带宽和低延迟的互联网络。 DSM 分布式共享存储系统 内存模块物理上局部于各个处理器内部,但逻辑上是共享存储的。 COW 机群系统 每个节点都是一个完整的计算机,各个节点通过高性能网络相互连接,网络接口和I/O总线松耦合连接,每个节点有完整的操作系统。 GCE 网格计算环境 利用互联网上的计算机的处理器闲置处理能力来解决大型计算问题的一种科学计算。 CISC 复杂指令集计算机

通过设置一些复杂的指令,把一些原来由软件实现的常用功能改用硬件实现的指令系统实现,以此来提高计算机的执行速度。 RISC 精简指令集计算机 尽量简化计算机指令功能,只保留那些功能简单,能在一个节拍内执行完的指令,而把复杂指令用段子程序来实现。 VMM 虚拟机监视器 作为软硬件的中间层,在应用和操作系统所见的执行环境之间。 SUPERCOMPUTER 超级计算机 数百数千甚至更多的处理器组成的能计算普通计算机不能完成的大型复杂问题的计算机。SVM 共享虚拟存储器 存储器虚拟化为一个共享的存储器,并提供单一的地址空间。 MAINFRAME 大型计算机 作为大型商业服务器,一般用于大型事务处理系统,特别是过去完成的且不值得重新编写的数据库应用系统方面。 COMPUTER SYSTEM ON CHIP 片上计算机系统 在单个芯片上集成的一个完整系统。 PARALLEL ARCHITECTURE INTO SINGLE CHIP 单片并行结构 在单个芯片上采用的并行体系结构 MOORE law Moore定律 当价格不变时,集成电路上可容纳的晶体管数目,约每隔18个月便会增加一倍,性能也将提升一倍。 UMA 一致存储访问 采用集中式存储的模式,提供均匀的存储访问。 NUMA 非一致存储访问 内存模块局部在各个结点内部,所有局部内存模块构成并行机的全局内存模块。 COMA 全高速缓存存储访问 采用分布式存储模式,通过高速缓存提供快速存储访问。 CC-NUMA 全高速缓存非一致性均匀访问 存在专用硬件设备保证在任意时刻,各结点Cache中数据与全局内存数据的一致性。NORMA 非远程存储访问

计算机系统结构期末考试题目

第一章: 1.计算机系统结构的定义 答:由程序设计者看到的一个计算机系统的属性,即概念性结构和功能特性。 2.透明性概念 答:在计算机技术中,一种本来是存在的事物或属性,但从某种角度看似乎不存在,称为透明性现象。 3.兼容性向后兼容 兼容性:同一个软件可以不加修改地运行于系统结构相同的各档机器,可获得相同的结果,差别只在于不同的运行时间。 向后兼容:按某个时期投入市场的某种型号机器编制的程序,不加修改就能运行于在它之后投入市场的机器。 4.Amdahl定律 答:系统中某一部件由于采用某种更快的执行方式后整个系统性能的提高与这种执行方式的使用频率或占总执行时间的比例有关。 5.CPI 答:每条指令的平均时钟周期数。 6.MIPS 答:每秒百万条指令数!MIPS=时钟频率/(CPI*10^6) 7.MFLOPS 答:每秒百万次浮点操作次数。MFLOPS=程序中的浮点操作次数/(执行时间*10^6) 8.命中率的概念 答: 9.Flynn分类法是按指令流和数据流的多倍性特征进行计算机系统结构的划分 答:①单指令流单数据流SISD ②单指令流多数据流SIMD ③多指令流单数据流MISD(实际不存在)④多指令流多数据流MIMD 10.计算机系统设计的定量原理(四个) 答:①加快经常性事件的速度②Amdahl定律③CPU性能公式④访问的局部性原理11.CPI和加速比的计算 答:CPI=CPU时钟周期数/IC CPU时间=CPU时钟周期数/频率 CPU时间=CPU时钟周期*时钟周期长 加速比=(采用改进措施后的性能)/(没有采用改进措施前的性能) =(没有采用改进措施前执行某任务的时间)/(采用改进措施后执行某任务的时间) 12.软硬件实现的特点 硬件实现:速度快、成本高;灵活性差、占用内存少 软件实现:速度低、复制费用低;灵活性好、占用内存多 13.系统评价的标准 ①运算速度②存储器系统③其他性能④成本标准

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

《软件体系结构》大作业(1) 学院:软件学院 课程名称:软件体系结构 专业班级: 学生姓名:学号: 学生姓名:学号: 指导教师: 完成时间:年月日 评分表 1、叙述各小组成员完成本题目的分工协作情况。 小组中的每个成员都先理解题目要求及涉及的设计模式,并一起完成代码编写。另外,组长负责文档制作。 2、评分表 序号姓名评分是否组长 1 2 作业正文需要包括以下内容: 1、作业题目内容的详细描述。 2、完成本题目所采用的软件设计模式名称及画出相应的类图,或者是所采用的 软件体系结构名称及画出相应的体系结构图。

3、画出完成本题目所设计程序的设计类图;如还有其他图,也一并画出。 4、完成本题目所设计的程序代码。 5、程序运行的典型界面截图

1、作业题目内容的详细描述。 【作业2.1-1】例2.3为使用工厂方法模式设计的汽车保险管理应用程序实例。现在需要 扩展例2.3的设计图,添加一个名为LuxuryCarInsurance的类,并且需要编写此类和其他需要添加的类的代码,详细要求参见光盘的相应作业部分。 【作业2.1-1】在例2.4中,设计并且实现了豪华(Super)和中等(Medium)别墅(House)与公寓(Condo)的查询。要求在该设计的基础上,增加一个新的类SemiDetacher(半独立式楼宇),并且编写代码,实现相应的查询功能,详细要求参见光盘的相应作业部分。 2、完成本题目所采用的软件设计模式名称及画出相应的类图,或者是所采用的软件体系结构名称及画出相应的体系结构图。 【作业2.1-1】采用的是工厂方法模式 【作业2.1-2】采用的是抽象方法模式

软件体系结构总结

第一章:1、软件体系结构的定义 国内普遍看法: 体系结构=构件+连接件+约束 2、软件体系结构涉及哪几种结构: 1、模块结构(Module) 系统如何被构造为一组代码或数据单元的决策 2、构件和连接件结构(Component-And-Connector,C&C) 系统如何被设计为一组具有运行时行为(构件)和交互(连接件)的元素 3、分配结构(Allocation) 展示如何将来自于模块结构或C&C结构的单元映射到非软件结构(硬件、开发组和文件系统) 3、视图视点模型 视点(View point) ISO/IEC 42010:2007 (IEEE-Std-1471-2000)中规定:视点是一个有关单个视图的规格说明。 视图是基于某一视点对整个系统的一种表达。一个视图可由一个或多个架构模型组成 架构模型 架构意义上的图及其文字描述(如软件架构结构图) 视图模型 一个视图是关于整个系统某一方面的表达,一个视图模型则是指一组用来构建 4、软件体系结构核心原模型 1、构件是具有某种功能的可复用的软件结构单元,表示了系统中主要的计算元素和数据存储。 2.连接件(Connector):表示构件之间的交互并实现构件 之间的连接

特性:1)方向性2)角色3)激发性4)响应特征 第二章 1、软件功能需求、质量属性需求、约束分别对软件架构产生的影响 功能性需求:系统必须实现的功能,以及系统在运行时接收外部激励时所做出的行为或响应。 质量属性需求:这些需求对功能或整个产品的质量描述。 约束:一种零度自由的设计决策,如使用特定的编程语言。 质量原意是指好的程度,与目标吻合的程度,在软件工程领域,目标自然就是需求。 对任何系统而言,能按照功能需求正确执行应是对其最基本的要求。 正确性是指软件按照需求正确执行任务的能力,这无疑是第一重要的软件质量属性。质量属性的优劣程度反映了设计是否成功以及软件系统的整体质量。 系统或软件架构的相关视图的集合,这样一组从不同视角表达系统的视图组合在一起构成对系统比较完整的表达

计算机体系结构习题答案解析

第1章计算机系统结构的基本概念 1.1 解释下列术语 层次机构:按照计算机语言从低级到高级的次序,把计算机系统按功能划分成多级层次结构,每一层以一种不同的语言为特征。这些层次依次为:微程序机器级,传统机器语言机器级,汇编语言机器级,高级语言机器级,应用语言机器级等。 虚拟机:用软件实现的机器。 翻译:先用转换程序把高一级机器上的程序转换为低一级机器上等效的程序,然后再在这低一级机器上运行,实现程序的功能。 解释:对于高一级机器上的程序中的每一条语句或指令,都是转去执行低一级机器上的一段等效程序。执行完后,再去高一级机器取下一条语句或指令,再进行解释执行,如此反复,直到解释执行完整个程序。 计算机系统结构:传统机器程序员所看到的计算机属性,即概念性结构与功能特性。 透明性:在计算机技术中,把这种本来存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性。 计算机组成:计算机系统结构的逻辑实现,包含物理机器级中的数据流和控制流的组成以及逻辑设计等。 计算机实现:计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。 系统加速比:对系统中某部分进行改进时,改进后系统性能提高的倍数。 Amdahl定律:当对一个系统中的某个部件进行改进后,所能获得的整个系统性能的提高,受限于该部件的执行时间占总执行时间的百分比。 程序的局部性原理:程序执行时所访问的存储器地址不是随机分布的,而是相对地簇聚。包括时间局部性和空间局部性。 CPI:每条指令执行的平均时钟周期数。 测试程序套件:由各种不同的真实应用程序构成的一组测试程序,用来测试计算机在各个方面的处理性能。 存储程序计算机:冯·诺依曼结构计算机。其基本点是指令驱动。程序预先存放在计算机存储器中,机器一旦启动,就能按照程序指定的逻辑顺序执行这些程序,自动完成由程序所描述的处理工作。 系列机:由同一厂家生产的具有相同系统结构、但具有不同组成和实现的一系列不同型号的计算机。 软件兼容:一个软件可以不经修改或者只需少量修改就可以由一台计算机移植到另一台计算机上运行。差别只是执行时间的不同。 向上(下)兼容:按某档计算机编制的程序,不加修改就能运行于比它高(低)档的计算机。 向后(前)兼容:按某个时期投入市场的某种型号计算机编制的程序,不加修改地就能

2020.4《计算机体系结构》期末试卷A含答案

《计算机体系结构》期末考试A卷 (总分:100分,时间:100分钟) 姓名:周元华 专业:计算机科学与技术 学号: 18260070164016 学习中心:上海弘成 一、填空题(每空1分,共14分) 1.高速缓冲存储器的地址映象方式有三种,它们分别是:全向量方式,直接相联方式,组相连方式。 2.虚拟存储器的三种管理方式是段式管理,页式管理和 段页式管理。 3.从主存的角度来看,“Cache—主存”层次的目的是为了提高速度,而“主存—辅存”层次的目的是为了扩大容量 4.根据指令间的对同一寄存器读和写操作的先后次序关系,数据相关冲突可分为读与写(RAM)、写与读(WAR)和写与写(WAW)三种类型。 5.当代计算机体系结构的概念包括指令集结构、计算机组成和计算机实现三个方面的内容 二、名词解释(每题2分,共16分) 计算机体系结构: 计算机体系结构是指根据属性和功能不同而划分的计算机理论组成部分及计算机基本工作原理、理论的总称。其中计算机理论组成部分并不单与某一个实际硬件相挂钩,如存储部分就包括寄存器、内存、硬盘等。 兼容机: 兼容机,就是由不同公司厂家生产的具有相同系统结构的计算机。简单点说,就是非厂家原装,而改由个体装配而成的机器,其中的元件可以是同一厂家出品,但更多的是整合各家之长的 计算机。 写直达法: 写直达法一般指全写法。全写法(write-through):又称写直达法、写穿法,透写法,Cache使 用方式之一。 高速缓冲存储器: 高速缓冲存储器(Cache)其原始意义是指存取速度比一般随机存取记忆体(RAM)来得快 的一种RAM,一般而言它不像系统主记忆体那样使用DRAM技术,而使用昂贵但较快速的SRAM 技术,也有快取记忆体的名称。 高速缓冲存储器是存在于主存与CPU之间的一级存储器,由静态存储芯片(SRAM)组成, 容量比较小但速度比主存高得多,接近于CPU的速度。在计算机存储系统的层次结构中,是介 于中央处理器和主存储器之间的高速小容量存储器。它和主存储器一起构成一级的存储器。高速 缓冲存储器和主存储器之间信息的调度和传送是由硬件自动进行的。 高速缓冲存储器最重要的技术指标是它的命中率。 延迟转移技术: 在转移指令之后插入一条或几条有效的指令。当程序执行时,要等这些插入的指令执行完成 之后,才执行转移指令,因此,转移指令好像被延迟执行了,这种技术称为延迟转移技术。 线性流水线: 线性流水线就是由一整套工艺串联而成的生产线。 流水线又称为装配线,一种工业上的生产方式,指每一个生产单位只专注处理某一个片段的工 作,以提高工作效率及产量;按照流水线的输送方式大体可以分为:皮带流水装配线、板链线、 倍速链、插件线、网带线、悬挂线及滚筒流水线这七类流水线。 输送线的传输方式有同步传输的/(强制式),也可以是非同步传输/(柔性式),根据配置的 选择,可以实现装配和输送的要求。输送线在企业的批量生产中不可或缺。 流水线的吞吐率: 流水线的吞吐率是单位时间内流水线处理的任务数。 并行性: 并行性是指计算机系统具有可以同时进行运算或操作的特性,在同一时间完成两种或两种以 上工作。它包括同时性与并发性两种含义。同时性指两个或两个以上事件在同一时刻发生。并发 性指两个或两个以上事件在同一时间间隔发生。 三、简答题(每题5分,共30分) 1.如有一个经解释实现的计算机,可以按功能划分成4级。每一 级为了执行一条指令需要下一级的N条指令解释。若执行第一 级的一条指令需K(ns)时间,那么执行第2、3、4级的一条指 令各需要用多少时间(ns)? 答:第1级:1条1级指令 K ns 第2级:1条2级指令N条1级指令 1*N*K ns = NK ns 第3级:1条3级指令N条2级指令 1*N*NK ns =N2K ns 第4级:1条4级指令N条3级指令 1*N*NNK ns =N3K ns 2.根据Amdahl定律,系统加速比由哪两个因素决定? 答:系统加速比依赖于两个因素: (1)可改进比例:可改进部分在原系统计算时间中所占的比例 (2)部件加速比:可改进部分改进以后的性能提高 3.简述组相联映象规则。 答:(1)主存与缓存分成相同大小的数据块。(2)主存和Cache 按同样大小划分成组。(3)主存容量 是缓存容量的整数倍,将主存空间按缓冲区的大小分成区,主存中每一区的组数与缓存的组数相同 4.引起Cache与主存内容不一致的原因是什么?为了保持Cache 的一致性,在单计算机系统中一般采取哪些措施? 答:不一致的原因:(1)由于CPU写Cache,没有立即写主存 (2)由于I/O处理机或I/O设备写主存 采取措施: (1)全写法,亦称写直达法(WT法-Write through) 方法:在对Cache进行写操作的同时,也对主存该内容进行写入 (2)写回法(WB法-Write back) 方法:在CPU执行写操作时,只写入Cache,不写入主存。 5.按照同一时间内各段之间的连接方式来分,流水线可分为哪两 类? 答:(1)静态流水线:在同一时间内,流水线的各段只能按同一种功能的连接方式工作。 (2)动态流水线:在同一时间内,当某些段正在实现某种运算时,另一些段却在实现另一种运算。 6.Flynn分类法是根据什么对计算机进行分类的?将计算机分 成哪几类? 答:Flynn分类法,根据计算机中指令和数据的并行状况把计算机分成: (1)单指令流单数据流(SISD.; (2)单指令流多数据流(SIMD.; (3)多指令流单数据流(MISD.; (4)多指令流多数据流(MIMD.。 四、问答与计算题(第1题10分,第2、3题每题15分共40分) 1.一个有快表和慢表的页式虚拟存储器,最多有64个用户,每 个用户最多要用1024个页面,每页4K字节,主存容量8M字节。 (1)写出多用户虚地址的格式,并标出各字段的长度。 (2)写出主存地址的格式,并标出各字段的长度。

软件体系结构课后作业及答案

1、就项目管理方面而言,软件重用项目与非重用项目有哪些不同之处。 答:使用软件重用技术可减少重复工作,提高软件生产率, 缩短开发周期。同时,由于软构建大多经过严格的质量认证,因此有助于改善软件质量,大量使用构建,软件的灵活性和标准化程度可得到提高。 2、实际参与/组织一个软件重用项目的开发,然后总结你是如何组织该项目的开发的 答:参加了一个网页管理系统的开发,该项目重复使用已有的软件产品用于开发新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的。在过程中使用了代码的复用、设计结果的复用、分析结果的复用、测试信息的复用等。 3、为什么要研究软件体系结构? 答:1.软件体系结构是系统开发中不同参与者进行交流和信息传播的媒介。 2.软件体系结构代表了早期的设计决策成果。 3.软件体系结构可以作为一种可变换的模型。 4、根据软件体系结构的定义,你认为软件体系结构的模型应该由哪些部分组成? 答:构件(component)可以是一组代码,如程序的模块;也可以是一个独立的程序(如数据库的SQL服务器); 连接件(connector)是关系的抽象,用以表示构件之间的相互作用。如过程调用、管道、远程过程调用等; 限制(constrain):用于对构件和连接件的语义说明。 5、在软件体系结构的研究和应用中,你认为还有哪些不足之处? 答:(1)缺乏同意的软件体系结构的概念,导致体系结构的研究范畴模糊。 (2)ADL繁多,缺乏同意的ADL的支持。 (3)软件体系结构研究缺乏统一的理论模型支持。 (4)在体系结构描述方便,尽管出现了多种标准规范或建议标准,但仍很难操作。 (5)有关软件体系结构性质的研究尚不充分,不能明确给出一个良体系结构的属性或判定标准,没有给出良体系结构的设计指导原则,因而对于软件开发实践缺乏有力的促进作用。 (6)缺乏有效的支持环境软件体系结构理论研究与环境支持不同步,缺乏有效的体系结构分析、设计、方针和验证工具支持,导致体系结构应用上的困难。 (7)缺乏有效的体系结构复用方案。 (8)体系结构发现方法研究相对欠缺。 1、选择一个规模合适的系统,为其建立“4+1”模型。 逻辑视图(Logical View),设计的对象模型(使用面向对象的设计方法时)。 过程视图(Process View),捕捉设计的并发和同步特征。 物理视图(Physical View),描述了软件到硬件的映射,反映了分布式特性。 开发视图(Development View),描述了在开发环境中软件的静态组织结构。 架构的描述,即所做的各种决定,可以围绕着这四个视图来组织,然后由一些用例(use cases)或场景(scenarios)来说明,从而形成了第五个视图。

计算机体系结构_第一次作业

计算机体系结构 第一章 1.11 Availability is the most important consideration for designing servers, followed closely by scalability and throughput. a. We have a single processor with a failures in time(FIT) of 100. What is the mean time to failure (MTTF) for this system? b. If it takes 1 day to get the system running again, what is the availability of the system? c. Imagine that the government, to cut costs, is going to build a supercomputer out of inexpensive computers rather than expensive, reliable computers. What is the MTTF for a system with 1000 processors? Assume that if one fails, they all fail. 答: a. 平均故障时间(MTTF)是一个可靠性度量方法,MTTF的倒数是故 障率,一般以每10亿小时运行中的故障时间计算(FIT)。因此由该定义可知1/MTTF=FIT/10^9,所以MTTF=10^9/100=10^7。b. 系统可用性=MTTF/(MTTF+MTTR),其中MTTR为平均修复时间, 在该题目中表示为系统重启时间。计算10^7/(10^7+24)约等于1. c. 由于一个处理器发生故障,其他处理器也不能使用,所以故障率 为原来的1000倍,所以MTTF值为单个处理器MTTF的1/1000即10^7/1000=10^4。 1.14 In this exercise, assume that we are considering enhancing

计算机体系结构期末试卷及答案

课程测试试题( A 卷) ----------------------以下为教师填写-------------------- I、命题院(部):信息科学与工程学院 II、课程名称:计算机体系结构 III、测试学期:2014-2015学年度第2学期 IV、测试对象:信息学院计算机、网络专业 2012 级班 V、问卷页数(A4): 3 页 VI、答卷页数(A4): 4 页 VII、考试方式:闭卷(开卷、闭卷或课程小论文,请填写清楚) VIII、问卷内容: 一、填空题(共30分,20空,每空分) 1、现代计算机系统是由()和()组成的十分复杂的系统。 2、计算机系统应能支持软件可移植,实现可移植性的常用方法有3种,即(),(), 统一高级语言。 3、可以将当前大多数通用寄存器型指令集结构进一步细分为3种类型,即()、() 和存储器-存储器型指令集结构。 4、MIPS指令DADDIU R14,R5,#6属于()类型的指令格式;MIPS指令 SD R4,300(R5)属于()类型的指令格式。 5、描述流水线的工作,常采用时空图的方法。在时空图中,横坐标表示(),纵坐 标代表()。 6、在MIPS指令实现的简单数据通路中,在WB周期中,有两大类指令执行操作:() 和()指令。 7、存储器的层次结构中,“Cache-主存”层次是为了弥补主存()的不足,“主 存-辅存”层次是为了弥补主存()的不足。 8、Cache实现的映像规则有全相联映像、()和()三种。 9、反映存储外设可靠性能的参数有可靠性、()和()。 10、根据系统中处理器个数的多少,可把现有的MIMD计算机分为两类,每一类代表 了一种存储器的结构和互连策略。第一类机器称为()结构,第二类机器具有()。 二、判断题(每小题1分,共10分) 1、从计算机语言的角度,系统结构把计算机系统按功能划分成多级层次结构,其中, 第2级是操作系统虚拟机,第3级是汇编语言虚拟机。() 2、计算机系统中提高并行性的3种途径中,资源重复是在并行性概念中引入时间因 素,加快硬件周转而赢得时间。() 3、指令集结构中采用多种寻址方式可能会增加实现的复杂度和使用这些寻址方式的 指令的CPI。() 4、指令条数多,通常超过200条,是设计RISC的原则之一。() 5、根据流水线中各功能段之间是否有反馈回路,可把流水线分为线性流水线和非线 性流水线。() 6、在多级存储体系中,“cache——主存”层次的存储管理实现主要由软件件实现。

相关主题
文本预览
相关文档 最新文档