软件设计与体系结构考试重点

软件设计与体系结构考试重点
软件设计与体系结构考试重点

2.《人月神话》提出两条著名的法则:1.人月神话:向一个已经延后的项目中投入更多的人力资源,只会让他更延后。2.没有银弹:没有一种策略技术技巧可以极大地提高程序员的生产力。

15.软件设计的一般过程

16.软件设计的主要活动

1)软件设计计划2)体系结构设计3)界面设计

4)模块/子系统设计5)过程/算法设计6)数据模型设计

17.

18.软件可信性质有以下几种。

(1)可能性:在规定的环境下、规定的时间内软件无失效运行的能力。

(2)可靠安全性: 软件运行不引起危险、灾难的能力。

(3)保密安全性:软件系统对数据和信息提供保密性、完整性、可用性、真实性保障的能力。

(4)生存性;软件在受到攻击或出现失效时连续提供服务并在规定时间内恢复所有服务的能力。

(5)容错性: 软件在故障(硬件环境异常)出现时保证提供服务的能力。

(6)实时性;软件在指定的时间内完成反应或提交输出的能力

19什么是软件体系结构风格

软件体系结构风格是描述某一特定应用领城中系统组织方式的惯用模式。体系结构风格定义一个系统家族,即一个体系结构定义一个词汇表和一组约束。词汇表中包含了一些构件和连接件类型,而这组约束指出系统是如何将这些构件和连接件组合起来的。体系结构风格反映了领城中众多系统所共有的结构和谐义特征,并指导如何将各个模块和子系统有效地组织成一个完整的系统、按这种方式理解、软件体系结构风格定义了用于描述系统的术语表和一组指导构建系统的规则。

20黑板风格的体系结构的优点如下:

(1)便于多客户共享大量数据。他们不用关心数据是何时出现的、谁提供的,以及怎样提供的。

(2)既便于添加新的作为知识源代理的应用程序也便于扩展共享的黑板数据结构。

(3)可重用的知识源。

(4)支持容错性和健壮性。

黑板风格的体系结构的缺点如下:

(1)不同的知识源代理对于共享数据结构要达成一致,而且,这造成了对黑板数据结构进行修改较为困难。

(2)需要一定的同步锁机制保证数据结构的完整性和致性,增加了系统复杂度。

(3)测试困难(4)不能保证有好的求解方案。(5) 低效。(6)开发成本高。

21.C/S风格优缺点

优点主要在系统的客户端应用程序和服务器构件分别运行在不同的计算机上,系统中的每台服务器都可以适合各构件的要求,这对于硬件与软件的变化显示出极大的适应性和灵活性,而且易于对系统进行扩充和缩小。在C/S体系结构中,系统中的功能件充分隔离。客户端应用程序的开发集中于数据的显示和分析,而数据库服务器的开发则集中数据的管理,不必在每一个新的应用程序中都对一个DBMS 进行编码。将大的应用处理任务分布到许多通过网络连接的低成本计算机上,可以节约大量费用。

缺点:

(1)开发成本较高。 (2) 客户端程序设计复杂。(3)信息内容和形式单一。

(4)用户界面风格不一,使用繁杂,不利于推广使用。(5)软件移植困难。

(6)软件维护与升级困难。 (7)新技术不能轻易应用。

22.三层C/S结构风格

1表示层2功能层3数据层

23.三层C/S结构的优点

与传统的二层结构相比,三层C/S结构具有以下优点:

(1)允许合理地划分三层结构的功能,使之在逻辑上保持相对独立性,从而使整个系统的逻辑结构更为清晰,能提高系统与软件的可维护性和可扩展性。

(2)允许更灵活、有效地选用相应的平台与硬件系统,使之在处理负荷能力上与处理特性上分别适应于结构清晰的三层,并且这些平台与各个组成部分可以具有良好的可升级性与开放性。

(3)在三层C/S结构中,应用的各层可以并行开发,各层也可以选择各自最适合的开发语言,使之能并行地而且高效率地进行开发,达到较高的性能价格比,对每一层的处理逻辑的开发和维护也会更容易一些。

(4)允许充分利用功能层有效地隔离开表示层与数据层,未授权的用户难以绕过功能层而利用数据库工具或黑客手段非法地访问数据层,这就为严格的安全管理奠定了坚实的基础;整个系统的管理层次也更加合理和可控制。

24.C/S/与B/S混合结构风格

B/S与C/S混合软件体系结构是一种典型的异构体系结构。

优点是外部用户不直接访向数据库服务器。从而能保证企业数据库的相对安全。另外,企业内部用户的交互性较强.数据查询和修改的响应速度较快。

缺点是企业外部用户修改和维护数据时速度较慢,较烦琐,数据的动态交互性不强。

25.正交软件体系结构的概念

正交软件体系结构由组织层和线索的构件构成。其中,层是由一组具有相同抽象级别的构件构成的,线索是子系统的特例,它由完成不同层次功能的构件组成(通过相互调用来关联),每一条线索完成整个系统中相对独立的一部分功能。每条线索的实现与其他线索的实现无关或关联很少,在同一层中构件之间是不存在相互调用的。

26.正交软件体系结构具有以下优点:

(1)结构清晰,易于理解。 (2)易修改,可维护性强。 (3)可移植性强,

27.使用异构结构的原因

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

(2)关于软件包、框架通信以及其他一些体系结构上的问题,目前存在多种标准,即使在某段时间内某一种标准占统治地位,但变动最终是绝对的。

(3)在实际工作中开发人员总会遇到一些遗留下来的代码,它们仍然有用,但是与新系统有着某种程度上的不协调。而在许多场合将技术与经济综合进行考虑时,总是决定不再重写它们。

(4) 即使在某一单位中规定了共享共同的软件包或相互关系的一些标准,仍会存在解释或表示习惯上的不同。在UNIX中就可以发现这类问题.即使规定用单一的标准(ASCII)来保证过滤器之间的通信,但因为不同人对关于在ASCII流中信息如何表示的假设不同,不同的过滤器之间仍可能不协调。

28.异构体系结构的实例

1.“内外有别”模型

2.“查改有别”模型

29.面向对象的系统开发过程概述

面向对象的思想已经涉及软件开发的各个阶段,如面向对象分析(OOA)、面向对象设计(OOD)面向对象编程(OOP)。面向对象的系统开发生命周期由分析阶段、设计阶段、实现阶段组成,每个阶段都可以相互反馈,整个过程是一种迭代、渐增的开发过程。

1.首先要进行面向对象分析,其任务是了解问题域所涉及的对象、对象间的关系和作用(即操作),针对不同的问题性质选择不同的抽象层次,然后构造问题的对象模型,使该模型能精确地反映所要解决的“实质问题”。

2.其次就是面向对象设计,即设计软件的对象模刑。根据所应用的面向对象软件开发环境的功能强弱不等,在对问题的对象模型的分析基础上,可能要对它进行一定的改造,但应以改变原问题域的对象模型最少为原则。然后在软件系统内设计各个对象对象间的关系(如层次关系、继承关系等、对象回的通信方式(如消息模式)等,总之是设计各个对象的职责。

3.最后是面向对象编程,即软件功能的编码实现,主要工作包括每个对象的内部功能的实现;确定对象的哪些处理能力在哪些类中进行描述;确定并实现系统的界面、输出的形式及其他控制机理等,需要实现OOD阶段规定的各个对象所应完成的任务。

30.下面给出画数据流图的一般步骤:

(1)首先,找出数据源点和汇点,它们是外部实体,由它们确定系统与外界的接口。(2)找出外部实体的输出数据流与输入数据流,画出顶层数据流图。

(3)从顶层加工出发,逐步细化,画出所需的子图,分析系统的主要处理功能,把每一个处理功能作为一个加工,并且确定它们之间的数据流入和流出关系,画出第一层数据流图。(4)对当前层流图中的每个加工进行细化,画出所需的子图,直到加工不需要再分解为止。

31.数据流图

33. 面向数据流的需求分析方法步骤

(1)理解当前的现实环境,获得当前人工系统的具体模型。

(2)从当前系统的具体模型抽象出当前系统的逻辑模型。事益村路8

(3)分析目标系统与当前系统逻辑上的差别,建立目标系统的逻辑模型。5 9

(4)为目标系统的逻辑模型做补充。

36.合理的以用户为中心的界面设计分为6个阶段。

第一阶段:产品概念的开发。

第二阶段:调查研究和需求分析

第三阶段:设计思路和关键屏幕画面原型。

第四阶段:反复的设计和改进。

第五阶段:软件的实现。

第六阶段:大力推广

39设计模式的核心思想是总结和积累前人成功的设计经验,通过对这此经验的学习,使得人们在面对新的设计问题时不用再重复所有的环节,而是尽量套用已有的模式,以提高编程的效率。模式是解决特定问题的经验,实质上是软件的复用。模式由特定的环境、问题以及解决方案3个要素组成,按照软件开发的层次可以分为体系结构模式、设计模式、程序模式。体系结构模式属于层次较高的模式,设计模式是对被用来在特定场景下解决一般设计问题的类和相互通信的对象的描述。由于在以往的软件开发中,设计者经常在某种特定场合中遇到一些以前经常出现或感觉似曾相似的问题,直截了当的解决方案就是套用原有的经过证明的解决方案,或参考别人成熟的思路来解决。长时间下来,通过不断地完善并文档化就形成了针对这种问题的处理模式,形成了特定问题的解决方案。

43.什么是EJB?它有哪些特点?

EIB具有以下特点:

(1) EJB以构件的形式组织服务器,EJB构件是直接用Java语言编写的服务器构件。Java语言编写的跨平台特性使得EJB构件可以非常方便地移植到各种操作系统平台和EJB服务器上。

(2) EJB构件的实现仅需考虑应用需求,其系统级服务(如事务管理、安全性、构件生命周期与线程等)都是通过EJB服务器自动进行管理的。

(3) EJB体系结构具有面向对象、分布式跨平台、可扩充性、安全性以及便于开发等特点,同时它还以协议为中心,任何协议都可以被利用。

44EJB 由哪些角色组成?其结构的优缺点有哪些?

1角色

1.EJB组件开发者

2.应用组合者

3.部署者

4.EJB服务提供者

5.EJB容器提供者6系统管理者

2.EJB构件模型的优点如下:

(1)EJB将成为用Java语言开发分布式的、面向对象的企业级应用系统的标准构件体系

构.EJB使得通过组合构件得到分布式应用系统成为可能

(2)EJB使得应用系统开发变得容易,应用系统开发人员不需要理解底层的事务处理细节、状态管理、多线程、资源共享管理以及其他复杂的底层API细节。

(3)EJB遵行Java的“一次编译,到处运行"的思想,一旦一个EJB开发完成之后就可以部署在任何支持EJB的平台上,而不需要重新编译或对源代码进行修改。

(4)EJB定义了一个协议,使用不同供应商提供的工具开发和部署的构件能在运行时互操作,

(5)EJB体系结构与已有的服务器平台其他的Java APL、CORBA等兼容。

(6)EJB支持Enterprise Beans和其他的非Java应用系统的互操作性。

采用EJB开发应用系统有很多优点:

(1)标准的Java技术的便利应用系统可以在许多不同的服务器平台上运行。

(2)修改应用系统变得容易,对单个构件进行增加、修改、删除等操作不会对应用系统的体系结构产生很大的影响。

(3)应用系统经过划分之后,使得构件之间相互独立,又可以相互协作,提供给用户的是该用户所需要的构件。

(4)应用系统的开发变得容易,基本上是即插即用的方式。

(5)应用系统从本质上说是叮伸缩的,可以运行在多线程多处理机的环境中。(6)可以在新的应用系统中得到重用,减少了新系统的开发时间。

同时,EJB也存在些缺点,主要有:

(1)EJB的数量可能非常多,以至于在软件开发库中很难对这些EJB进行跟踪和管理。

(2)如果应用开发人员不能正确地使用EJB,可能会导致不恰当的应用系统设计,结果使得应用系统的总体性能下降。

(3)除非WM及编译器的性能得到提高,否则EJB应用系统的性能仍将是一个问题。

(4)由于EJB技术出现时间不长,目前可用的EJB还不多,要想得到大量的商业性EJB还需要一段时间。

45.什么是D? D的特性和优势有哪些?

D是一系列微软的概念和程序接口,利用这个接口,客户端程序对象能够请求来自网络中另一台计算机上的服务程序对象,D基于组件对象模型.提供了一套允许同一台计算机上的客户端与服务器之间进行通信的接口。

D的特点

1.组件和复用

2.位置独立性

3.语言无关性

4、连接管理

5.可扩展性

6.对称的多进程处理

46.软件体系结构评估方法所关注的质量属性有哪些?

1功能性2可靠性3可用性4有效性5可维护性6.可移植性

2.风险承担者包括哪些人员?

系统体系结构所涉及到的人员。包括架构设计师、开发人员、维护人员等。

47什么是场景?基于场景的软件体系结构评估方法有哪几种?

场景是对于风险承担者与系统进行交互的简短描述。一般采用刺激、环境、响应三个方面来描述场景。

评估方法:SAAM 与 ATAM

48.简述SAAM方法的评估步骤。

49.比较SAAM和ATAM两种方法的异同点。

场景的生成方式不同

风险承担者商业动机表述方式不同

软件体系结构的描述方式不同

第十三章

51.简述软件演化的几种定义,这几种定义各有哪些侧重点?

Manny Lehman和Juan F. Ranil定义:有目的地从早期的可操作版本来产生新的软件版本的所有规划设计活动。

L. A. Belady定义:软件系统在它们的生命周期里被维护和增强的动态行为。

NedChapin定义:它是软件维护活动和过程的一个运用以及对这些活动和过程质量的保证和管理。这些活动和过程是用来从一个早期的可运行版本中产生一个新的软件版本,这个新的软件必须满足客户要求改变的功能或属性。

50.造成软件演化的原因有哪些?

软件系统开发完成并且投人使用之后,变更就悄悄开始进行了。这些变更一部分来自于对软件缺陷的改正,例如软件使用后暴露的缺陷,软件的性能和可靠性的改进;一部分会随着新的需求浮现出来,例如实现新的功能;另一部分来自于外界的环境变化给软件带来的压力,例如商业模式和环境的不断改变,计算机硬件和软件环境的升级,业务的变更,等等。54.简述软件再工程模型。

58.软件如何重构?说一说常见的软件重构的方法

(1)大量重复的代码:尽量消除重复的代码,,将它们合而为根据重复的代码出现在不同的地方,分别采取不同的重构策略

①在同一个类(Class)的不同地方:提炼出重复的代码,然后生这些地方调用上述提炼出的方法。

②在不同子类(Subclass)中:提炼出重复的代码然后通过提开将该方法移动到上级Super class内.

③在没有关系的类(Class)中:将重复的代的提炼到一个新类中,然后在另个Cass中调用生成的新类,消除重复的代码。

(2)过长的方法参数序列: 如果可以向已存在的对象查询获取参数,则可通过移除参数列,在雨数内部向上述已存在的对象查询获取参数。如果参数列中的若干参数是已存在对象的属性,则可通过使用已存在的对象,取代这些参数将这些参数替换为一个完整的对象,这样不仅提高了代码的可读性同时已易于代码今后的维护。另外,还可以将若 T不相关的参数通过创建新的参数对象创建一一个新的参数类。不过,笔者认为如果这些情况过多,会产生很多莫名其妙的参数类,反而降低了代码的可读性。

(3) 代码量过大的方法体或类体:对于代码最过大的方法,拆解过长的函效。

(4) 过多的if eise和switch-case逻辑:看多态能不能取代条件式,如果能,使用多态。如果不能应该重新考虑程序的逻辑结构。

另一种情况是if 和else句子何非常相似,那么考虑将其重写,使同样的代码段无论对于那种情况都能生成正确的结果,然后去除条件式。

(5)局部变量的“全局”化:,如果是方法体内的就放在方法体内.如果是代码段内的就放在代码段。

(6)数据集合类:该用get方法的时候还是要用。对于数据集合类,最好的解决方法是不要让

客户直接去读取这些类的值域,而需要封装起来.然后设置get/set接口,让客户通过这些接口去读取数据。

(7)数据泥团:通过创建新的参数对象取代这些参数,或使用已存在的对象取代这些参数,实现使用对象代替Class成员变量和方法中的参数列表,清除数据泥团,使代码简洁,也提高了维护性和易渎性。

(8)注释的问题:如果需要注释/解释一段代码做了什么,则可以试试提取出一个独立的函数,

让函数名称解释该函数的用途/功能。另外,如果觉得需要通过注释来说明系统的某些假设条件,可以尝试引入断言来明确标明这些假设。

(9)死代码:赶紧清除它们,不要为以后着想,以后的问题不是现在放几个方法和变量就能解决掉的。

55什么是软件再工程?

软件再工程是指对既有对象系统进行调查,并将其重构为新形式代码的开发过程。

取大限度地重用既有系统的各种资源是再工程的最重要的特点之一。

56.为什么实施软件再工程?

①再工程可帮助软件机构降低软件演化的风险; ②再工程可帮助机构补偿软件投资;

③再工程可使软件易于进一步变革; ④再工程有着广阔的市场;

⑤再工程能扩大CASE工具集; ⑥再工程是推动自动软件维护发展的动力。

57.简述软件移植的方法。

软件移植主要分为源代码移植和二进制移植两种类型。源代码移植通过修改与环境相关的部分源代码,使软件具备适应多种环境的能力;二进制移植是指将软件从源环境移植到目标环境,且能正确运行,并与其在源环境下的行为保持一致。

59.云计算有哪些特点?

(1)超大规模(2)虚拟化(3)高可靠性(4)通用性(5)高可扩展性(6)按需服务(7)极其廉价。

计算机体系结构试题库—简答题

计算机体系结构试题库 简答题(100题) 1.简述CISC结构计算机的缺点。 答: ●在CISC结构的指令系统中,各种指令的使用频率相差悬殊。据统计,有20%的指 令使用频率最大,占运行时间的80%。也就是说,有80%的指令在20%的运行时 间内才会用到。 ●CISC结构指令系统的复杂性带来了计算机体系结构的复杂性,这不仅增加了研制 时间和成本,而且还容易造成设计错误。 ●CISC结构指令系统的复杂性给VLSI设计增加了很大负担,不利于单片集成。 ●CISC结构的指令系统中,许多复杂指令需要很复杂的操作,因而运行速度慢。 ●在CISC结构的指令系统中,由于各条指令的功能不均衡性,不利于采用先进的计 算机体系结构技术(如流水技术)来提高系统的性能。 2.RISC结构计算机的设计原则。 答: A.选取使用频率最高的指令,并补充一些最有用的指令; B.每条指令的功能应尽可能简单,并在一个机器周期内完成; C.所有指令长度均相同; D.只有load和store操作指令才访问存储器,其它指令操作均在寄存器之间进行; E.以简单有效的方式支持高级语言。 3.影响现代微处理器主频提升的主要原因由哪些? 答:线延迟、功耗。 4.指令集格式设计时,有哪三种设计方法? 答:固定长度编码、可变长编和混合编码)三种设计方法。

5.简述存储程序计算机(冯·诺依曼结构)的特点。 答: (1)机器以运算器为中心。 (2)采用存储程序原理。 (3)存储器是按地址访问的、线性编址的空间。 (4)控制流由指令流产生。 (5)指令由操作码和地址码组成。 (6)数据以二进制编码表示,采用二进制运算。 6.在进行计算机系统设计时,一个设计者应该考虑哪些因素对设计的影响? 答: 在进行计算机系统设计时,设计者应该考虑到如下三个方面因素的影响: ●技术的发展趋势; ●计算机使用的发展趋势; ●计算机价格的发展趋势。 7.简述程序翻译技术的特点。 答: 翻译技术是先把N+1级程序全部变换成N级程序后,再去执行新产生的N级程序,在执行过程中N+1级程序不再被访问。 8.简述程序解释技术的特点。 答: 解释技术是每当一条N+1级指令被译码后,就直接去执行一串等效的N级指令,然后再去取下一条N+1级的指令,依此重复进行。 9.经典体系结构的定义是什么? 计算机体系结构是机器级程序员所看到的计算机的属性,即概念性结构与功能特性。10.“线延迟墙”指的是什么?

软件体系结构期末考试

北京工业大学2014 - 2015学年 第二学期模拟试题 考试课程:软件体系结构I 考试日期:2015年5 月20日 学院:软件学院专业:软件工程 学号:姓名:成绩: 一填空题(共30 空,每空 1 分) 1. 软件或程序是由软件工程人员设计与开发,使计算设备发挥计算潜能,________ 的逻辑层次组织。 2. 软件体系结构(Software Architecture)-- 是软件产品设计的思想和系统的蓝图;是 对软件产品_______的规划和_______的设置;是定义软件系统组件(Components)或构建块(Building Blocks)的重要工具;用于 -- 实现对一个软件系统的构成进行_________的划分 -- 所形成和采用的工程化规范,是指导软件后续过程方方面面组成的模型。 3.软件开发中的面临若干问题:1)软件固有的复杂性;2)软件开发的随意性;3)周期 长,代价高,质量低的问题;软件体系结构设计是软件产品及大型信息系统工程实现中最重要的环节和关键技术之一,解决从软件的__________到系统实现(代码)的有效和平坦过渡。 4.软件产品的工业化生产:是指建立流水线型的软件产品生产线,是指按_____、标准 化的规范和规则(软件生产规范)来编写和实现各种各样的适应于多环境的软件___,通过软件体系结构来确定各个软件组件如何部署到开发架构模式中,组装成达到期望的软件产品。 5.体系结构设计方法的发展中,软件程序开发经历了如下的阶段 -- 功能分解法 (计算任务) -- 结构化程序设计 (以数据为中心) -- _________________ -- _________________ -- 基于 SOA 的程序设计 (以服务为中心)。 6. 一个现代软件产品生产过程如下图表示,请在带___________的方框中,填上相应的组 件名称

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

填空题 1.从2002年以来,计算机性能的年增长率下降到了约30%。其主要原因是:①大功耗问题; ②可以进一步有效地开发的指令级并行性已经很少;③存储器访问速度的提高缓慢。 2. 可移植性是指一个软件可以不经修改或者只需少量修改就可以由一台计算机移植到另一台计算机上运行。实现可移植性的常用方法有3种:系列机,模拟和仿真,统一高级语言。 2.通用寄存器型指令集结构计算机在灵活性和提高性能方面有明显的优势。主要体现在①寄存器的访问 速度比存储器快;②对编译器而言,能更加容易有效地分配和使用寄存器;③寄存器可以用来存放变量。 3.MIPS的数据寻址方式只有立即数寻址和偏移量寻址。 4.向量处理机的结构由所采用的向量处理方式决定。有两种典型的结构;存储器-存储器型结构和寄存器-寄存器型结构。 5.Cache-主存层次的工作由硬件实现,对系统程序员是透明的。 6.降低Cache不命中率最直接的方法是增加Cache的容量。不过,这种方法不但会增加成本,而且还可能增加命中时间,这种方法在片外Cache中用得比较多。 7.大多数磁盘阵列的组成可以由以下两个特征来区分:数据交叉存放的粒度、冗余数据的计算方法以及在磁盘阵列中的存放方式。 8.时延和带宽是用来评估互连网络性能的两个基本指标。时延包括通信时延和网络时延。 9.计算机系统可分为SISD、SIMD、MISD和MIMD四类,许多早期并行处理机是SIMD计算机,近年来,MIMD已经成为通用多处理机系统结构的选择。这是因为MIMD具有灵活性,并且MIMD 能充分利用现有微处理器的性价比优势。 判断题 1.从计算机语言的角度,系统结构把计算机系统按功能划分成多级层次结构,其中,第2级是操作系统虚拟机,第3级是汇编语言虚拟机。(错) 2.计算机系统中提高并行性的3种途径中,资源重复是在并行性概念中引入时间因素,加快硬件周转而赢得时间。(错) 3.指令集结构中采用多种寻址方式可能会增加实现的复杂度和使用这些寻址方式的指令的CPI。(对) 4.指令条数多,通常超过200条,是设计RISC的原则之一。(错) 5.根据流水线中各功能段之间是否有反馈回路,可把流水线分为线性流水线和非线性流水线。(对) 6.在多级存储体系中,“主存一辅存”层次的存储管理实现主要由软件实现。(对) 7.失效率和平均访存时间都可评价存储系统的性能,它们都和机器的硬件速度有关。(错) 8.RAID的特点有容量大,速度快、可靠性高,同时保存数据无冗余信息。(对) 9.在多处理机的互连网络中,交叉开关网络属于动态互连网络。(对) 10.机群是一种价格低廉、易于构建、可扩缩性极强的并行计算机系统。(对) 名词解释 1.RISC 精简指令集计算机是一种执行较少类型计算机指令的微处理器 2.请求字优先 调块时,首先向存储器请求CPU所要的请求字。请求字一旦到达,就立即送往CPU,让CPU继续执行,同时从存储器调入该块的其余部分。 3.单一系统映像

软件体系结构期末大题

软件体系结构-期末大题

————————————————————————————————作者:————————————————————————————————日期: ?

1.基于构件的软件开发的优势是什么? 基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降低了软件开发的费用2.尝试用自己的语言介绍Kruchten的“4+1”模型。 Kruchten 提出了一个"4+1"视图模型,从5个不同的视角包括包括逻辑试图、进程视图、物理视图、开发视图、场景视图来描述软件体系结构。每一个视图只关心系统的一个侧面,5个试图结合在一起才能反映系统的软件体系结构的全部内容。

3.在希赛公司的一个财务管理系统,财务部要客户提供………… 4.不同的体系结构风格具有各自的特点、优劣和用途。试对管道-过滤器风格、事件驱动风格、分层系统、C2风格和基于消息总线的风格进行分析比较。P52-56 (1)管道和过滤器 特点: @使得软构件具有良好的隐蔽性和高内聚、低耦合的特点; @允许设计者将整个系统的输入输出行为看成是多个过滤器的行为的简单合成;

@支持软件重用。只要提供适合在两个过滤器之间传送的数据,任何两个过滤器都可被连接起来; @系统维护和增强系统性能简单。新的过滤器可以添加到现有系统中来;旧的可以被改进的过滤器替换掉; @允许对一些如吞吐量、死锁等属性的分析; @支持并行执行。每个过滤器是作为一个单独的任务完成,因此可与其它任务并行执行?缺点:①通常导致进程成为批处理的结构。 ②不适合处理交互的应用。 ③因为在数据传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作,这样就导致了系统性能下降,并增加了编写过滤器的复杂性。 (2)

计算机体系结构试题汇总

计算机系统结构 姓名:学号: 一、简答题(每小题10分,共20分) 1.简述使用物理地址进行DMA存在的问题,及其解决办法。 2.从目的、技术途径、组成、分工方式、工作方式等5个方面对同构型多处理机和异构型多处理机做一比较(列表)。 二、(60分)现有如下表达式: Y=a ×X 其中:X和Y是两个有64个元素的32位的整数的向量,a为32位的整数。假设在存储器中,X和Y的起始地址分别为1000和5000,a的起始地址为6000。 1.请写出实现该表达式的MIPS代码。 2.假设指令的平均执行时钟周期数为5,计算机的主频为500 MHz,请计算上述MIPS 代码(非流水化实现)的执行时间。 3.将上述MIPS代码在MIPS流水线上(有正常的定向路径、分支指令在译码段被解析出来)执行,请以最快执行方式调度该MIPS指令序列。注意:可以改变操作数,但不能改变操作码和指令条数。画出调度前和调度后的MIPS代码序列执行的流水线时空图,计算调度前和调度后的MIPS代码序列执行所需的时钟周期数,以及调度前后的MIPS流水线执行的加速比。 4.根据3的结果说明流水线相关对CPU性能的影响。 三、(20分)请分析I/O对于性能的影响有多大?假设: 1.I/O操作按照页面方式进行,每页大小为16 KB,Cache块大小为64 B;且对应新页的地址不在Cache中;而CPU不访问新调入页面中的任何数据。 2.Cache中95%被替换的块将再次被读取,并引起一次失效;Cache使用写回方法,平均50%的块被修改过;I/O系统缓冲能够存储一个完整的Cache块。 3.访问或失效在所有Cache块中均匀分布;在CPU和I/O之间,没有其他访问Cache 的干扰;无I/O时,每1百万个时钟周期中,有15,000次失效;失效开销是30个时钟周期。如果替换块被修改过,则再加上30个周期用于写回主存。计算机平均每1百万个周期处理一页。

软件设计与体系结构期末复习整理解读

1面向对象编程中是如何体现封装性的? 封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。 2重载和重写的含义 重载是发生在一个类中,方法名相同,参数不同 重写(覆盖)是子类继承父类,子类可以通过重写的方法隐藏继承的方法 3 什么是接口回调,过程细节是什么? 概念:把可以实现某一接口的类创建的对象的引用赋给该接口声明接口变量,那么该接口变量可以调用被类实现(重写)的接口方法。 4试举例说明什么是组合关系和依赖关系 组合(关联)关系:A类中成员变量是用B类声明的对象。公司--职员 依赖关系:A类中某个方法的参数是用B类声明的对象,或某个方法返回的数据类型是B类的对象 5抽象类和接口,区别是什么?如何应用 抽象类:抽象类中有抽象方法;抽象类中不能用new运算符创建对象;抽象类的对象做商转型对象 接口:(1)接口中只可以有public权限的抽象方法,不能有非抽象方法; (2)接口由类去实现,即一个类如果实现一个接口,那么他必须重写接口中的抽象方法 (3)接口回调 区别:接口中只有常量,不能有变量;抽象类中既可以有常量也可以有变量; 抽象类中也可以有非抽象方法,接口不可以。 应用:定义抽象方法:public abstract void 方法名(); 在子类实现抽象方法:public void 方法名(){} 接口:public interface 接口名{}接口只负责定义规则,不负责任何实现;实现交给实现接口的类 (6)面向对象的六条基本原则包括: 开闭原则,里式代换原则,单一职责,依赖倒转、迪米特法则(接口隔离)。 (7)什么是设计模式? 设计模式是从许多优秀的软件系统中总结出的成功的可复用的设计方案。是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性 (8)什么是框架?框架与模式的区别有哪些? 框架是针对某个领域,提供用于开发应用系统的类的集合。 区别:层次不同、范围不同、相互关系

软件体系结构考试参考试题

壹 . 名词解释(参考斯佳分享的名词解释文档) 1.ADL(Architecture Description Language) 体系结构描述语言 2. SOA(Service-Oriented Architecture) 面向服务架构 3. DSSA (Domain Specific Software Architecture) 特定领域软件体系结构 4.CORBA(Common Object Request Broker Architecture) 公共对象请求代理体系结构 5. UML(Unified Modeling Language) 统一建模语言 6.XML(Extensible Markup Language ) 可扩展标记语言 7.B/S(Browser/Server) 浏览器/服务器C/S(Client/Server) 客户端/服务器 8.HMB(Hierarchical [?ha??'rɑ:k?kl] message bus) 层次消息总线 9.SA (Software Architecture) 软件体系结构 10.OMG(Object Management Group) 对象管理组织 11.SOAP(Simple Object Access Protocol) 简单对象访问协议 12.WSDL(Web Services Description Language) web服务描述语言 13.SOAD(Service Oriented Analysis And Design) 面向服务的分析与设计 14.DCOM(Distributed Component Object Model) 分布式对象组件模型 https://www.360docs.net/doc/f015650813.html, (Module Interconnection Language) 模块内连接语言 贰 . 判断题 1、软件重用是指重复使用已有的软件产品用于开发新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的。答案:√ 依据页码:P4 2、软件体系结构充当一个理解系统构件和它们之间关系的框架,特别是那些始终跨越时间和实现的属性。 答案:√ 依据页码:P28 5、构件可以由其他复合构建和原子构件通过连接而成。() 答案:√ 依据页码:P37 6、体系的核心模型由5种元素组成:构件、连接体、配置、端口和角色() 答案:√ 依据页码:P37 7、软件体系结构的核心由5种元素组成:构件、连接件、配置端口和角色。其中,构件、连接件和配置是最基本的元素() 答案:√ 依据页码:P37 8、开发视图主要支持系统的功能需求,即系统提供给最终用户的服务() 答案:X 依据页码:P32、33 9、构件、连接件以及配置是体系结构的核心模型最基本的元素() 答案:√ 根据页码:P37

计算机系统结构期末考试试题及其答案

计算机系统结构期末考试试题及其答案

《计算机系统结构》期末考试试卷A 卷第 2 页 共 24 页 计算机科学系《计算机系统结构》期末考试试卷(A 卷) 2、此试卷适用于计算机科学与技术本科专业。 一 单选题:(10分,每题1分) 1、 ."启动I/O"指令是主要的输入输出指 令,是属于( B ) A.目态指令 B.管态指令 C.目态、管态都能用的指令 D.编译程序只能用的指令 2、 输入输出系统硬件的功能对(B )是透 明的 A.操作系统程序员 B.应用程序员 C.系统结构设计人员 D.机器语言程序设计员 3、 全相联地址映象是指(A ) A.任何虚页都可装入主存中任何实页的位置 B.一个虚页只装进固定的主存实页位置 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.外部中断 《计算机系统结构》期末考试试卷A卷第 3 页共 24 页

软件体系结构期末复习题概述

《软件体系结构》期末复习题 简答题: 1、软件体系结构建模的种类有: 结构模型、框架模型、动态模型、过程模型、功能模型。 2、“4+1”视图模型从5个不同的视角包括: 逻辑视图、进程视图、物理视图、开发视图和场景视图来描述软件体系结构。 3、构件:是具有某种功能的可重用的软件模板单元,表示了系统中主要的计算元素和数据存储。 连接件:表示构件之间的交互。 配置:表示构件和连接件的拓扑逻辑和约束。 端口:表示构件和外部环境的交互点。 角色:定义了该连接交互的参与者。 4、画出“4+1”视图模型图,分析各部分的原理和功能。 5、软件体系结构风格: 是描述某一特定应用领域中系统组织方式的惯用模式。 6、软件体系结构 (Software Architecture) 软件体系结构以组件和组件交互的方式定义系统,说明需求与成品系统之间的对应关系,描述系统级别的可伸缩性、能力、吞吐量、一致性和兼容性等属性。软件体系结构由组件、连接件和属性组成。 7、分层系统的优点有: 1)支持基于抽象程度递增的系统设计,使设计者可以把一个复杂系统按递增的步骤进行分解; 2)支持功能增强,因为每一层至多和相邻的上下层交互,因此功能的改变最多影响相邻的上下层; 3)支持重用。只要提供的服务接口定义不变,同一层的不同实现可以交换使用。这样,就可

以定义一组标准的接口,而允许各种不同的实现方法。 8、分层系统的缺点有: 1)并不是每个系统都可以很容易地划分为分层的模式,甚至即使一个系统的逻辑结构是层次化的,出于对系统性能的考虑,系统设计师不得不把一些低级或高级的功能综合起来; 2)很难找到一个合适的、正确的层次抽象方法。 9、 B/S体系结构的优点有什么? 答:1)基于B/S体系结构的软件,系统安装、修改和维护全在服务器端解决。用户在使用系统时,仅仅需要一个浏览器就可运行全部的模块,真正达到了“零客户端”的功能,很容易在运行时自动升级。 2)B/S体系结构还提供了异种机、异种网、异种应用服务的联机、联网、统一服务的最现实的开放性基础。 10、B/S体系结构的缺点有什么? 答:1)B/S体系结构缺乏对动态页面的支持能力,没有集成有效的数据库处理功能。 2)B/S体系结构的系统扩展能力差,安全性难以控制。 3)采用B/S体系结构的应用系统,在数据查询等响应速度上,要远远地低于C/S体系结构。 4)B/S体系结构的数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务处理(OLTP)应用。 11、DSSA 答案:DSSA就是在一个特定应用领域中为一组应用提供组织结构参考的标准软件体系结构 11、软件体系结构的动态性主要分为: 交互式动态性、结构化动态性、体系结构动态性等三类。 12、请画出基于构件的动态系统结构模型画。 13、软件产品线 产品线是一个产品集合,这些产品共享一个公共的、可管理的特征集,这个特征集能满足选定的市场或任务领域的特定需求。这些系统遵循一个预描述的方式,在公共的核心资源(core assets)基础上开发的 14、SOA 即service-oriented architecture,面向服务架构。它是一个组件模型,它 将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接 口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于 实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的 系统中的服务可以以一种统一和通用的方式进行交互。 14、RIA

软件体系结构试题免费版本

软件体系结构考试试题 1、设计模式一般用来解决什么样的问题( a) A.同一问题的不同表相 B不同问题的同一表相 C.不同问题的不同表相 D.以上都不是 2、下列属于面向对象基本原则的是( c ) A.继承 B.封装 C.里氏代换 D都不是 3、Open-Close原则的含义是一个软件实体( a ) A.应当对扩展开放,对修改关闭. B.应当对修改开放,对扩展关闭 C.应当对继承开放,对修改关闭 D.以上都不对 4、当我们想创建一个具体的对象而又不希望指定具体的类时,可以使用( a )模式。 A.创建型 B.结构型 C行为型 D.以上都可以 5、要依赖于抽象,不要依赖于具体。即针对接口编程,不要针对实现编程,是( d )的表述 A.开-闭原则 B.接口隔离原则 C.里氏代换原则 D.依赖倒转原则 6、依据设计模式思想,程序开发中应优先使用的是( a )关系实现复用。 A, 委派 B.继承 C创建 D.以上都不对 复用方式:继承和组合聚合(组合委派) 7、设计模式的两大主题是( d ) A.系统的维护与开发 B 对象组合与类的继承 C.系统架构与系统开发 D.系统复用与系统扩展 8、单子模式中,两个基本要点( a b )和单子类自己提供单例 A .构造函数私有 B.唯一实例 C.静态工厂方法 D.以上都不对 9、下列模式中,属于行为模式的是( b ) A.工厂模式 B观察者 C适配器以上都是

10、“不要和陌生人说话” 是( d )原则的通俗表述 A.接口隔离 B.里氏代换 C.依赖倒转 D.迪米特:一个对象应对其他对象尽可能少的了解 11、构造者的的退化模式是通过合并( c )角色完成退化的。 A.抽象产品 B产品 C创建者 D使用者 12、单子(单例,单态)模式类图结构如下: 下列论述中,关于”0..1”表述的不正确的是( d ) A.1表示,一个单例类中,最多可以有一个实例. B.”0..1”表示单例类中有不多于一个的实例 C.0表示单例类中可以没有任何实例 D.0表示单例类可以提供其他非自身的实例 13、对象适配器模式是( a )原则的典型应用。 A.合成聚合复用原则 B.里式代换原则 C.依赖倒转原则 D.迪米特法则 14、静态工厂的核心角色是(a) A.抽象产品 B.具体产品 C.静态工厂 D.消费者 15、下列关于静态工厂与工厂方法表述错误的是:( a ) A.两者都满足开闭原则:静态工厂以if else方式创建对象,增加需求的时候会修改源代码 B.静态工厂对具体产品的创建类别和创建时机的判断是混和在一起的,这点在工厂方法中 C.不能形成静态工厂的继承结构 D.在工厂方法模式中,对于存在继承等级结构的产品树,产品的创建是通过相应等级结构的工厂创建的。 16、在观察者模式中,表述错误的是( c ) A.观察者角色的更新是被动的。 B.被观察者可以通知观察者进行更新 C.观察者可以改变被观察者的状态,再由被观察者通知所有观察者依据被观察者的状态进行。 D.以上表述全部错误。 17.对于违反里式代换原则的两个类,可以采用的候选解决方案错误的是:( d ) A.创建一个新的抽象类C,作为两个具体类的超类,将A 和B 共同的行为移动到C 中,从而解决A和B 行为不完全一致的问题。 B.将B到A的继承关系改组成委派关系。 C.区分是“IS-a”还是”Has-a”。如果是“Is-a”,可以使用继承关系,如果是”Has-a”应该改成委派关系

计算机体系结构模拟试题二汇总

模拟试题二 课程名称计算机系统结构适用班级: 考试时间120分钟班级学 号姓名 一、单项选择题(本大题共10小题,每小题2分,共20分。在每小题的四个备选答案中选出一个符合题意的,并将其前面的序号填在题后的括号内。) 1.输入输出系统硬件的功能对()是透明的。 ①操作系统程序员②应用程序员③系统结构设计人员④机器语言程序设计员 2."启动I/O"指令是主要的输入输出指令,是属于() ①目态指令②管态指令③目态、管态都能用的指令④编译程序只能用的指令 3.全相联地址映象是指() ①任何虚页都可装入主存中任何实页的位置 ②一个虚页只装进固定的主存实页位置 ③组之间是固定的,而组内任何虚页可以装入任何实页位置 ④组间可任意装入,组内是固定装入 4.()属于MIMD系统结构。 ①各处理单元同时受同一个控制单元的管理 ②各处理单元同时接受同一个控制单元送来的指令 ③多处理机和多计算机系统 ④阵列处理机 5.在下列方法中,指令并行度不能大于1的是()。 ①超级流水②超标量③超长指令字④标量流水线 6.设16个处理器编号分别为0,1,2,…,15用Cube3互联函数时,第10号处理机与第( )

号处理机相连. ①11 ②8 ③l4 ④2 7.若输入流水线的指令既无局部性相关,也不存在全局性相关,则() ①可获得高的吞吐率和效率②流水线的效率和吞吐率恶化 ③出现瓶颈④可靠性提高 8.对于共享主存的多处理机系统,在各个CPU都带有自己的Cache的情况下,为保证处理机所带Cache的一致性,可采用的方法有() ①写直达法②写回法③播写法④堆栈法 9.下面哪种相关不是流水线顺序流动方式所具有的() ①数据相关②指令相关③先读后写④先写后读 10.下面关于Omega网络和多级立方体网络的说法错误的是() ①Omega网络采用四功能单元 ②Omega网络和多级立方体网络的控制方式是不一样的 ③Omega网络可以实现一个处理单元与多个处理单元的同时连接 ④Omega网络和多级立方体网络的级编号顺序正好相反。 二、填空题(本大题共10小题,每小题1分,共10分。把答案填在题中横线上。) 1.为提高计算机系统的并行性,可通过的技术途径有__________、资源重复和资源共享。 2.按弗林(Michael J.Flynn)的观点,计算机系统可分为SISD、、MISD 和MIMD四大类。 3.为提高访Cache的命中率,Cache的预取算法可以有恒预取法和___________预取法。 4.衡量主存性能的指标是访问时间、存储周期和__________。 5.要实现两条指令在时间上重叠解释,首先是以增加硬件为代价的,其次,还要处理好指令之间可能存在的。 6.互连网络的交换方法主要有线路交换、包交换、线路/包交换,SIMD互连网络多采用交换,多处理机常采用包交换。 7.为同时解释相邻两条或多条指令,常用的控制方式是重叠和____________。 8.数组多路通道与设备之间的数据传送的基本单位是_____。 9.多级互连网络的交换开关控制方式主要有三种,分别是______、单元控制和部分级控制。 10.多处理机系统按照连接的紧密程度主要分两大类,分别是___________和松散耦合多处理

软件体系结构期末考试试题

软件体系结构-设计模式练习题1 1.面向对象分析与设计中的(1)是指一个模块在扩展性方面应该是开放的,而在更改性方面应该是封闭的;而(2)是指子类应当可以替换父类并出现在父类能够出现的任何地方。 (1) A.开闭原则 B.替换原则 C.依赖原则 D.单一职责原则 (2) A.开闭原则 B.替换原则 C.依赖原则 D.单一职责原则 2.(3)限制了创建类的实例数量,而(4)将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 (3) A.命令模式(Command)B.适配器模式(Adapter)C.策略模式(Strategy) D.单例模式(Singleton) (4) A.命令模式(Command) B.适配器模式(Adapter) C.策略模式(Strategy) D.单例模式(Singleton) 3. (5)设计模式允许一个对象在其内部状态改变时改变它的行为。下图为这种设计模式的类图,已知类State 为抽象类,则类(6)的实例代表了Context 对象的状态。 (5) A.单件(Singleton) B.桥接(Bridge) C.组合(Composite) D.状态(State) (6) A. Context B. ConcreteStateA C. Handle D. State

4.某公司欲开发一门户网站,将公司的各个分公司及办事处信息进行整合。现决定采用Composite设计模式来实现公司的组织结构关系,并设计了如下图所示的UML类图。图中与Composite模式中的“Component”角色相对应的类是(7) ,与“Composite”角色相对应的类是(8) 。 (7) A. Company B. FinanceDepartment C. HRDepartment D. ConcreteCompany (8) A. Company B. FinanceDepartment C. HRDepartment D. ConcreteCompany 5.某软件公司正在设计一个通用的嵌入式数据处理平台,需要支持多种数据处理芯片之间的数据传递与交换。该平台的核心功能之一要求能够屏蔽芯片之间的数据交互,使其耦合松散,并且可以独立改变芯片之间的交互过程。针对上述需求,采用(9)最为合适。 (9) A. 抽象工厂模式 B. 策略模式 C. 中介者模式D. 状态模式 6.某软件公司正在设计一个图像处理软件,该软件需要支持用户在图像处理中的撤销和重做等动作,为了实现该功能,采用(10)最为合适。 (10) A. 单例模式B. 命令模式 C. 访问者模式 D. 适配器模式 7.某互联网公司正在设计一套网络聊天系统,为了限制用户在使用该系统时发表不恰当言论,需要对聊天内容进行特定敏感词的过滤。针对上述功能需求,采用(11)能够灵活配置敏感 词的过滤过程。 (11) A. 责任链模式 B. 工厂模式 C. 组合模式 D. 装饰模式

软件设计与体系结构题目与答案

1.各种性能指标及如何到达各种性能指标的方法 (1)防止变异模式:是如何设计对象,子系统和系统,使这些元素内部的变化或不稳定性不会对其他元素产生不良影响。 解决方案:识别预测的变化或不稳定之处,分配职责用以创建稳定借口。 (2)依赖反转原理:把你的类从局的现实中隔离开,使他们依赖于抽象类或接口。它促进了代码面向接口而不是实现,这通过保证对实现的低耦合来增加系统的灵活性。 2.常用的中间件有那几种类型 (1)常见的对象请求代理架构 (2)面向消息的中间件 (3)J2EE (4)消息代理 (5)业务过程代理 3.有那些常见架构风格 (1)管道和过滤器架构风格 (2)面向对象风格 (3)隐式调用风格 (4)客户-服务器风格 (5)分层风格 (6)仓库风格 (7)解释程序风格 (8)过程控制风格 4.架构师需要的核心技能是什么 (1)涉众之间的交流 (2)技术知识 (3)软件工程学 (4)风险管理

5.什么是软件架构 软件架构是一系列相关的抽象模式,用于指导大型软件系统各个方面的设计。软件架构是一个系统的草图。软件架构描述的对象是直接构成系统的抽象组件。各个组件之间的连接则明确和相对细致的描述组件之间的通讯。在实现阶段,这些抽象组件被细化为实际的组件,比如具体某个类或者对象。在面向对象领域中,组件之间的连接通常用接口(计算机科学)实现。 6.什么是架构风格 一组原则。你可以把它看成是一组为系统家族提供抽象框架的粗粒度模式。 7.什么是架构视图 一个架构视图是对于从某一视角或某一点上看到的系统所做的简化描述,描述中涵盖了系统的某一特定方面,从而省略了此方面无关的实体。 8.各种架构风格的组件和连接器是什么 1.管道和过滤器架构风格: 适用于需要定义一系列的执行规则数据的独立运算,组件在输入时读数据流,在输出时产生数据流 组件:称为过滤器,应用于对局部的输入流的转换,经常增长的计算,因此,在输入结束前输出就开始了 连接器:称为管道,给流提供管道,把一个过滤器的输出传输到另一个输入。 2.面向对象风格: 适用于主要问题识别和保护信息的相关主体 数据代理和他们相关的操作封装在一个抽象数据类型里面 组件:对象 连接器:功能和过程调用 3.客户-服务器风格: 适用于涉及到分布式的数据和跨越一系列的组件的处理 组件:服务器、客户端 连接器:网络 4.分层风格: 适用于设计到分布式的能够分层的组织的类的服务,每层给它的上一层提供服务,同时作为下一层的客户端。只有仔细的从内层选择选择过程,才能用于他们接近的外层。 组件:典型的过程的集合

计算机系统结构试题及答案

计算机系统结构复习题 单选及填空: 计算机系统设计的主要方法 1、由上往下的设计(top-down) 2、由下往上的设计(bottom-up) 3、从中间开始(middle-out) Flynn分类法把计算机系统的结构分为以下四类: (1)单指令流单数据流 (2)单指令流多数据流 (3)多指令流单数据流 (4) 多指令流多数据流 堆栈型机器:CPU 中存储操作数的单元是堆栈的机器。 累加器型机器:CPU 中存储操作数的单元是累加器的机器。 通用寄存器型机器:CPU 中存储操作数的单元是通用寄存器的机器。 名词解释: 虚拟机:用软件实现的机器叫做虚拟机,但虚拟机不一定完全由软件实现,有些操作可以由硬件或固件(固件是指具有软件功能的固件)实现。 系列机:由同一厂家生产的具有相同系统结构、但具有不同组成和实现的一系列不同型号的计算机。 兼容机:它是指由不同公司厂家生产的具有相同系统结构的计算机。 流水线技术:将一个重复的时序过程,分解成为若干个子过程,而每一个子过程都可有效地在其专用功能段上与其它子过程同时执行。 单功能流水线:指流水线的各段之间的连接固定不变、只能完成一种固定功能的流水线。 多功能流水线:指各段可以进行不同的连接,以实现不同的功能的流水线。 顺序流水线:流水线输出端任务流出的顺序与输入端任务流入的顺序完全相同。 乱序流水线:流水线输出端任务流出的顺序与输入端任务流入的顺序可以不同,允许后进入流水线的任务先完成。这种流水线又称为无序流水线、错序流水线、异步流水线。 吞吐率:在单位时间流水线所完成的任务数量或输出结果的数量。 指令的动态调度:

是指在保持数据流和异常行为的情况下,通过硬件对指令执行顺序进行重新安排,以提高流水线的利用率且减少停顿现象。是由硬件在程序实际运行时实施的。 指令的静态调度: 是指依靠编译器对代码进行静态调度,以减少相关和冲突。它不是在程序执行的过程中、而是在编译期间进行代码调度和优化的。 超标量: 一种多指令流出技术。它在每个时钟周期流出的指令条数不固定,依代码的具体情况而定,但有个上限。 超流水:在一个时钟周期分时流出多条指令。 多级存储层次: 采用不同的技术实现的存储器,处在离CPU不同距离的层次上,各存储器之间一般满足包容关系,即任何一层存储器中的容都是其下一层(离CPU更远的一层)存储器中容的子集。目标是达到离CPU最近的存储器的速度,最远的存储器的容量。 写直达法: 在执行写操作时,不仅把信息写入Cache中相应的块,而且也写入下一级存储器中相应的块。写回法: 只把信息写入Cache中相应块,该块只有被替换时,才被写回主存。 集中式共享多处理机: 也称为对称式共享存储器多处理SMP。它一般由几十个处理器构成,各处理器共享一个集中式的物理存储器,这个主存相对于各处理器的关系是对称的, 分布式共享多处理机: 它的共享存储器分布在各台处理机中,每台处理机都带有自己的本地存储器,组成一个“处理机-存储器”单元。但是这些分布在各台处理机中的实际存储器又合在一起统一编址,在逻辑上组成一个共享存储器。这些处理机存储器单元通过互连网络连接在一起,每台处理机除了能访问本地存储器外,还能通过互连网络直接访问在其他处理机存储器单元中的“远程存储器”。 多Cache一致性: 多处理机中,当共享数据进入Cache,就可能出现多个处理器的Cache中都有同一存储器块的副本,要保证多个副本数据是一致的。 写作废协议: 在处理器对某个数据项进行写入之前,它拥有对该数据项的唯一的访问权 。 写更新协议: 当一个处理器对某数据项进行写入时,它把该新数据广播给所有其它Cache。这些Cache用该新数据对其中的副本进行更新。 机群:是一种价格低廉、易于构建、可扩放性极强的并行计算机系统。它由多台同构或异构

最新软件体系结构期末试题+答案

1.以下关于系统性能的叙述中,不正确的是(17)。(17)A. 常见的Web服务器性能评估方法有基准测试、压力测试和可靠性测试B. 评价Web服务器的主要性能指标有最大并发连接数、响应延迟和吞吐量C. 对运行系统进行性能评估的主要目的是以更好的性能/价格比更新系统D. 当系统性能降到基本水平时,需要查找影响性能的瓶颈并消除该瓶颈 2某公司欲对其内部的信息系统进行集成,需要实现在系统之间快速传递可定制格式的数据包,并且当有新的数据包到达时,接收系统会自动得到通知。另外还要求支持数据重传,以确保传输的成功。针对这些集成需求,应该采用(21)的集成方式。(21)A. 远程过程调用 B. 共享数据库C. 文件传输 D. 消息传递 3 在RUP中采用“4+1”视图模型来描述软件系统的体系结构。在该模型中,最终用户侧重于(26),系统工程师侧重于(27)。(26)A. 实现视图 B. 进程视图 C. 逻辑视图 D. 部署视图(27)A. 实现视图 B. 进程视图 C. 逻辑视图 D. 部署视图 4.某银行系统采用Factory Method方法描述其不同账户之间的关系,设计出的类图如下所示。其中与Factory Method中的“Creator”角色相对应的类是(33);与“Product” 角色相对应的类是(34)。(33) A. Bank B. Account C. Checking D. Savings(34) A. Bank B. Account C. Checking 5.是一个独立可交付的功能单元,外界通过接口访问其提供的服务。(35)A. 面向对象系统中的对象(Object)B. 模块化程序设计中的子程序(Subroutine)C. 基于构件开发中的构件(Component)D. 系统模型中的包(Package) 6 软件的横向重用是指重用不同应用领域中的软件元素。(31)是一种典型的、原始的横向重用机制。(31)A. 对象 B. 构件 C. 标准函数库 D. 设计模式

软件体系结构试题试题+答案

1、设计模式一般用来解决什么样的问题( a) A.同一问题的不同表相B不同问题的同一表相 C.不同问题的不同表相 D.以上都不是 2、下列属于面向对象基本原则的是( c ) A.继承 B.封装 C.里氏代换D都不是 3、Open-Close原则的含义是一个软件实体( a ) A.应当对扩展开放,对修改关闭. B.应当对修改开放,对扩展关闭 C.应当对继承开放,对修改关闭 D.以上都不对 4、当我们想创建一个具体的对象而又不希望指定具体的类时,可以使用(a )模式。 A.创建型 B.结构型C行为型D.以上都可以 5、要依赖于抽象,不要依赖于具体。即针对接口编程,不要针对实现编程,是( d ) 的表述 A.开-闭原则 B.接口隔离原则 C.里氏代换原则 D.依赖倒转原则 6、依据设计模式思想,程序开发中应优先使用的是( a )关系实现复用。 A, 委派 B.继承C创建 D.以上都不对 复用方式:继承和组合聚合(组合委派) 7、设计模式的两大主题是( d ) A.系统的维护与开发 B 对象组合与类的继承 C.系统架构与系统开发 D.系统复用与系统扩展 8、单子模式中,两个基本要点( a b )和单子类自己提供单例 A .构造函数私有 B.唯一实例 C.静态工厂方法 D.以上都不对 9、下列模式中,属于行为模式的是( b ) A.工厂模式B观察者C适配器以上都是 10、“不要和陌生人说话”是( d )原则的通俗表述 A.接口隔离 B.里氏代换 C.依赖倒转 D.迪米特:一个对象应对其他对 象尽可能少的了解 11、构造者的的退化模式是通过合并(c )角色完成退化的。 A.抽象产品B产品C创建者D使用者 12、单子(单例,单态)模式类图结构如下: 下列论述中,关于”0..1”表述的不正确的是( d ) A.1表示,一个单例类中,最多可以有一个实例. B.”0..1”表示单例类中有不多于一个的实例 C.0表示单例类中可以没有任何实例 D.0表示单例类可以提供其他非自身的实例 13、对象适配器模式是(a )原则的典型应用。 A.合成聚合复用原则 B.里式代换原则 C.依赖倒转原则 D.迪米特法则

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

《软件体系结构》大作业(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】采用的是抽象方法模式

相关文档
最新文档