当前位置:文档之家› 软件体系结构作业

软件体系结构作业

软件体系结构作业
软件体系结构作业

软件体系结构作业

姓名:蒋妮学号:S1124 W174

第1章软件体系结构概论

一、基于构件的软件开发方法能够有效提高开发效率,简述在实际的项目中有哪些方式获得构件、如何管理以及重用构件?

1)构件获取有多种不同的途径:

1.从现有构件中获得符合要求的构件,直接使用或作适应性修改,得到可重用的构件;

2.通过遗留工程,将具有潜在重用价值的构件提取出来,得到可重用的构件;

3.从市场上购买现成的商业构件,即COTS(Commercial Off-The-Shell)构件;

4.开发新的符合要求的构件。

2)构件的管理:

它包括四个部分:

1.构件描述:构件模型是对构件本质的抽象描述,主要是为构件的制作与构件的重用提供依据;从管理角度出发,也需要对构件进行描述,例如:实现方式、实现体、注释、生产者、生产日期、大小、价格、版本和关联构件等信息,它们与构件模型共同组成了对构件的完整描述。

2.构件分类与构件库组织:

构件分类方法包括三类:关键字分类法:基本思想是根据领域分析的结果将应用领域的概念按照从抽象到具体的顺序逐次分解为树形或有向无回路图结构,每个概念用一个描述性的关键字表示,不可分解的原子级关键字包含隶属于它的某些构件。刻面分类法:主要思想来源于图书馆学。定义若干用于刻画构件特征的‘面’,每个面又通过若干概念表述构件在面上的特征。如描述构件执行的功能、被操作的数据、应用的语境或任意其它特征。超文本组织法:基本思想是所有构件必须辅以详尽的功能或行为说明文档;说明中出现的重要概念或构件以网状链接方式相互链接;

3. 商业化构件分类。如果把软件系统看成是构件的集合,从构件的外部形态看,构成一个系统的构件可分为:独立而成熟的构件;有限制的构件;适应性构件;装配的构件;可修改的构件;

4.人员及权限管理。构件库系统是一个开放的公共构件共享机制,任何使用者都可以通过网络访问构件库。一般来讲,构件库系统可包括五类用户,即注册用户、公共用户、构件提交者、一般系统管理员和超级系统管理员。

3)重用软件

构件开发的目的是重用,为了让构件在新的软件项目中发挥作用,库的使用者必须完成以下工作:检索与提取构件、理解与评价构件、修改构件、构件组装。

二、软件体系结构定义众多,你是如何理解软件体系结构的?软件体系结构在软件系统中有何作用?

1)软件体系结构为软件系统提供了一个结构、行为和属性的高级抽象,由构成系统的元素的描述、这些元素的相互作用、指导元素集成的模式以及这些模式的约束组成。软件体系结构不仅指定了系统的组织结构和拓扑结构,并且显示了系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理。

2)软件体系结构在软件系统中的作用:

1.体系结构是风险承担者进行交流的手段。软件体系结构代表了系统的公共的高层次的抽象。这样,系统的大部分有关人员(即使不是全部)能把它作为建立一个互相理解的基础,形成统一认识,互相交流。

2.体系结构是早期设计决策的体现。软件体系结构明确了对系统实现的约束条件;软件体系结构决定了开发和维护组织的组织结构;软件体系结构制约着系统的质量属性;通过研究软件体系结构可能预测软件的质量;软件体系结构使推理和控制更改更简单;软件体系结构有助于循序渐进的原型设计;软件体系结构可以作为培训的基础。

3.软件体系结构是可传递和可重用的模型。软件体系结构级的重用意味着体系结构的决策能在具有相似需求的多个系统中发生影响,这比代码级的重用要有更大的好处。

第3章软件体系结构风格

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

1.浏览器/服务器(B/S)风格就是C/S三层应用结构的一种实现方式,其具体结构为:浏览器/Web服务器/数据库服务器。B/S体系结构主要是利用不断成熟的WWW浏览器技术,结合浏览器的多种脚本语言,用通用浏览器就实现了原来需要复杂的专用软件才能实现的强大功能,并节约了开发成本。从某种程度上来说,B/S结构是一种全新的软件体系结构。

其优点包括:

1)基于B/S体系结构的软件,系统安装、修改和维护全在服务器端解决。用户在使用系统时,仅仅需要一个浏览器就可运行全部的模块,真正达到了“零客户端”的功能,很容易在运行时自动升级。

2)B/S体系结构还提供了异种机、异种网、异种应用服务的联机、联网、统一服务的最现实的开放性基础。

其缺点包括:

1)B/S体系结构缺乏对动态页面的支持能力,没有集成有效的数据库处理功能;B/S体系结构的系统扩展能力差,安全性难以控制;

2)采用B/S体系结构的应用系统,在数据查询等响应速度上,要远远地低于C/S体系结构;

3)B/S体系结构的数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务处理(OLTP)应用。

2.C/S软件体系结构是基于资源不对等,且为实现共享而提出来的,是20世纪90年代成熟起来的技术,C/S体系结构定义了工作站如何与服务器相连,以实现数据和应用分布到多个处理机上。C/S体系结构有三个主要组成部分:数据库服务器、客户应用程序和网络。

其优点包括:

1)C/S 体系结构具有强大的数据操作和事务处理能力,模型思想简单,易于人们理解和接受;

2)系统的客户应用程序和服务器构件分别运行在不同的计算机上,系统中每台服务器都可以适合各构件的要求,这对于硬件和软件的变化显示出极大的适应性和灵活性,而且易于对系统进行扩充和缩小;

3)在C/S体系结构中,系统中的功能构件充分隔离,客户应用程序的开发集中于数据的显示和分析,而数据库服务器的开发则集中于数据的管理,不必在每一个新的应用程序中都要对一个DBMS进行编码。将大的应用处理任务分布到许多通过网络连接的低成本计算机上,以节约大量费用。

其缺点包括:开发成本较高;客户端程序设计复杂;信息内容和形式单一;用户界面风格不一,使用繁杂,不利于推广使用;软件移植困难;软件维护和升级困难;新技术不能轻易应用。

3.三层C/S体系结构可以将整个应用逻辑驻留在增加的应用服务器上,客户机上只有表示层,从而被称为‘瘦客户机’结构。将应用功能分为表示层、功能层和数据层。表示层是应用的用户接口部分,担负着用户与应用间的对话功能;功能层相当于应用的本体,它用于将具体的业务处理逻辑编入程序;数据层就是数据库管理系统,负责管理对数据库数据的读写。

其优点包括:

1)允许合理地划分三层结构的功能,使之在逻辑上保持相对独立性,能提高系统和软件的可维护性和可扩展性;

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

3)应用的各层可以并行开发,可以选择各自最适合的开发语言;

4)利用功能层有效地隔离开表示层与数据层,未授权的用户难以绕过功能层而利用数据库工具或黑客手段去非法地访问数据层,为严格的安全管理奠定了坚实的基础。

其缺点包括:

1)三层C/S结构各层间的通信效率若不高,即使分配给各层的硬件能力很强,其作为整体来说也达不到所要求的性能。

2)设计时必须慎重考虑三层间的通信方法、通信频度及数据量。这和提高各层的独立性一样是三层C/S结构的关键问题。

第4章软件体系结构描述

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

1.体系结构的描述有以下几种方法:

1)图形表达工具

这是一种最简单易懂且使用广泛的方法是采用矩形框和有向线段组合而成的图形表达工具。矩形框代表抽象构件,框内标注的文字为抽象构件的名称,有向线段代表辅助各构件进行通信、控制或关联的连接件。目前这种图形表达工具在软件设计中占据主导地位。尽管由于在术语和表达意义上存在着一些不规范和不精确。

2)模块内连接语言

采用将一种或几种传统程序设计语言的模块连接起来的模块内连接语言(Module Interconnection Language MIL)。由于程序设计语言和模块内连接语言具有严格的语义基础,因此它们能支持对较大的软件单元进行描述,诸如定义/使用和扇入/扇出等操作。例如,Ada 语言采用use实现包的重用,Pascal语言采用过程(函数)模块的交互等。

3)基于软构件的系统描述语言

基于软构件的系统描述语言将软件系统描述成一种是由许多以特定形式相互作用的特殊软件实体构造组成的组织或系统。例如,一种多变配置语言(Proteus Configuration Language,PCL)就可以用来在一个较高的抽象层次上对系统的体系结构建模,Darwin最初用作设计和构造复杂分布式系统的配置说明语言,因具有动态特性,也可用来描述动态体系结构。这种表达和描述方式虽然也是较好的一种以构件为单位的软件系统描述方法,但是他们所面向和针对的系统元素仍然是一些层次较低的以程序设计为基础的通信协作软件实体单元,而且这些语言所描述和表达的系统一般而言都是面向特定应用的特殊系统,这些特性使得基于软构件的系统描述仍然不是十分适合软件体系结构的描述和表达。

4)软件体系结构描述语言

软件体系结构的第四种描述和表达方法是参照传统程序设计语言的设计和开发经验,重新设计、开发和使用针对软件体系结构特点的专门的软件体系结构描述语言(Architecture Description Language ADL)。由于ADL是在吸收了传统程序设计中的语义严格精确的特点基础上,针对软件体系结构的整体性和抽象性特点,定义和确定适合于软件体系结构表达与描述的有关抽象元素,因此,ADL是当前软件开发和设计方法学中一种发展很快的软件体系结构描述方法,目前,已经有几十种常见的ADL。

2.体系结构有这些标准和规范:

1)IEEE P1471

IEEE P1471于2000年9月21日通过IEEE-SA标准委员会评审。IEEE P1471适用于软件密集的系统,其目标在于:便于体系结构的表达与交流,并通过体系结构要素及其实践标准化,奠定质量与成本的基础。IEEE P1471详细介绍了一套体系结构描述的概念框架,并给出建立框架的思路。但如何描述以及具体的描述技术等方面缺乏更进一步的指导。

IEEE P1471还讨论了体系结构描述实践,在应用体系结构描述的推荐标准时,应遵循如下几个具体的要求:体系结构的存档要求;能识别人员及其关系;体系结构视点的选择(视点的具体规格说明);体系结构视点;体系结构视点之间的一致性;体系结构原理。

2)Rational

Rational起草了可重用的软件资产规格说明,专门讨论了体系结构描述的规格说明,提出了一套易于重用的体系结构描述规范。该建议草案已经提交OMG。基于RUP(Rational

United Process)、采用UML模型描述软件的体系结构,认为体系结构描述的关键是定义视点、视图以及建模元素之间的映射关系。

与IEEE P1471相比,该建议标准的体系结构描述方案涉及面比较窄,所注重的层次比较低,因而更具体。由于将体系结构的描述限于UML和RUP,具有一定的局限性,但该建议标准结合了业界已经广泛采用的建模语言和开发过程,因而易于推广,可以有效实现在跨组织之间重用体系结构描述结果。

软件体系结构总结

第一章: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.层次结构——计算机系统可以按语言的功能划分为多级层次结构,每一层以不同的语言为 2.计算机体系结构:程序员看到的计算机的属性,即概念性结构和功能特性。 3.实质是计算机系统中软硬件界面的确定。 4.翻译——(基于层次结构)先把N+1级程序全部变换成N级程序之后,再去执行N级程序, 在执行过程中,N+1级程序不再被访问。 5.解释——每当一条N+1级指令被译码后,就直接去执行一串等效的N级指令,然后再去取下 一条N+1级指令,依此重复执行。 6.体系结构——程序员所看到的计算机的属性,即概念性结构与功能特性。主要研究计算机 系统软件和硬件的功能分配以及如何最佳、最合理地实现分配给硬件的功能。 8.透明性——在计算机技术中,对本来存在的事物或属性,从某一角度来看又好像不存在的 概念称为透明性。 9.系列机——在一个厂家生产的具有相同的体系结构,但具有不同的组成和实现的一系列不 同型号的机器。 10.软件兼容——同一个软件可以不加修改地运行于体系结构相同的各档机器上,而且它们所 获得的结果一样,差别只在于运行的时间不同。 11.兼容机——不同厂家生产的、具有相同体系结构的计算机。 12.计算机组成——计算机体系结构的逻辑实现。 13.计算机实现——计算机组成的物理实现。 14.存储程序计算机(冯·诺依曼结构)——采用存储程序原理,将程序和数据存放在同一存 储器中。指令在存储器中按其执行顺序存储,由指令计数器指明每条指令所在的单元地址。 15.并行性——在同一时刻或同一时间间隔内完成两种或两种以上性质相同或不同的工作。 16.时间重叠——在并行性中引入时间因素,即多个处理过程在时间上相互错开,轮流重叠地 使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。 17.资源重复——在并行性中引入时间因素,是根据“以数量取胜”的原则,通过重复设置资源, 尤其是硬件资源,大幅度提高计算机系统的性能。

体系结构大作业

软件体系结构课程大作业 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.根据自己的经验,谈谈对软件危机的看法。 软件危机是指软件生产方式无法满足迅速增长的计算机需求,开发和维护过程出现的一系列问题。 以下几个原因导致:(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.就项目管理方面而言,软件重用项目与非重用项目有哪些不同之处。 使用软件重用技术可减少重复工作,提高软件生产率, 缩短开发周期。同时,由 于软构建大多经过严格的质量认证,因此有助于改善软件质量,大量使用构建,软件

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

《软件工程专业导论与职业生涯规划》具体要求 一、大作业题目(注:每个小组完成一个题目) 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)设计者可将一些数据存取操作的

第六章 经典软件体系结构

第六章经典软件体系结构 本章介绍经典的软件体系结构,主要包括Mary Shaw等人所总结的一些软件体系结构分格。众所周知,计算机学科历史较短,因此,软件架构的研究历史更短。本章所谓的经典软件体系结构也仅仅是指在20世纪80年代至21世纪初期间提出的成功的软件体系结构。本章将介绍调用-返回分格软件体系结构、数据流风格软件体系结构、基于事件的软件体系结构、层次软件体系架构与MVC软件体系结构。 6.1 调用-返回风格软件体系结构 相对于一些基础学科,计算机学科的发展历史较短。20世纪50年代才出现了适合商业应用的软件开发语言。软件设计与开发也经历了从初级到高级的历程。回顾历史,从20世纪50年代到60年代末,属于非结构化简单程序开发阶段,软件设计方面采用简单程序模型,典型的开发语言Algol(1958)、COBOL(1959)和Basic(1964);从20世纪70年代初到80年代初,属于结构化设计编程阶段,典型的开发语言有Pascal(1968)、C(1972)、FORTRAN和Perl。虽然从20世纪60年代开始就有了面向对象概念的讨论,但是直到20世纪80年代初正式开始才面向对象设计编程阶段,就有了代表性的面向对象软件开发语言包括SmallTalk、Ada、C++(1983)和Java(1995)。 本节首先简要回顾非结构化编程,然后介绍对软件设计有重要的影响的调用-返回风格软件体系结构,重点介绍其中的主程序-子程序软件体系结构与面向对象软件体系结构,并对它们进行讨论。 6.1.1 非结构化编程简介 非结构化编程技术是历史上最早的编程范型。紧随其后的是结构化设计/编程技术与面向对象设计/编程技术。一个由非结构化语言编写的程序通常包含一系列有序的命令,或者称为语句,通常是每个语句占一行,每行都有标记一个行号或者可能是标签。这样做的目的事允许程序执行流可以依据行号从一行跳到程序的其他指定的行。支持非结构化编程的语言包括早期的BASIC与COBOL。 非结构化编程引入基本的循环、分支与跳跃等控制流的概念。在非结构化编程中,虽然出现了较为原始的子程序的概念,但其与结构化编程中过程(Procedure)的概念有本质的区别。非结构化编程中的子程序允许有多个入口和多个出口,理论上允许程序在任何地方转入子程序或退出子程序,而在这结构化编程中是不允许的。 虽然非结构化编程所编写的程序很难理解,并且经常遭到批评,但是早期的银行与金融机构软件代码都是由非结构化编程语言(例如COBOL)写的。 目前,非结构化编程已成为历史,现在很少使用(除了有些银行与金融业企业仍然使用COBOL进行开发,但和早期的版本相比有了很多改善,例如COBOL 97包括常规改善并且具备了面向对象的特征),因此本节将不把注意力放在非结构化编程方面,而主要介绍采用结构化设计方法的主程序-子程序软件体系结构与采用面向对象设计方法的面向对象软件体系结构。 在介绍这两种软件体系结构以前,首先介绍调用-返回风格的体系结构的概念。 6.1.2 调用-返回风格软件体系结构的概念 调用-返回风格体系结构(Call and Return Architecture)是在过去的30年内具有深远影响的软件体系结构。本节要介绍的共享数据的主程序-子程序体系结构与面向对象体系

软件体系结构作业 完整版

第一章: 1.根据自己的经验,谈谈对软件危机的看法。 软件危机是指软件生产方式无法满足迅速增长的计算机需求,开发和维护过程出现的一系列问题。 以下几个原因导致:(1)软件自身特点 (2)开发人员的弱点 (3)用户需求不明 (4)缺乏正确理论指导 (5)开发规模越来越大 (6)开发复杂度越来越高 可以通过软件生命周期的模型和软件工具的使用来缓解危机,通过程序自动化和软件工业化生产的方法实现软件标准化的目标,进一步缓解软件危机带来的影响。 软件危机有利有弊,除了带来许多麻烦,也给我们带来许多挑战,克服危机的过程,我们在技术上和创新上都有了一个提升,也算是间接为软件产业的发展做了贡献。 2.什么是软件重用,软件重用的层次可以分为哪几个级别? 软件重用:是指在两次或多次不同的软件开发过程中重复使用相同或相似软件元素的过程。可以分为三个层次: (1)代码重用(2)设计结果重用(3)分析结果重用 3.什么是可重用构件?相对于普通的软件产品,对可重用构件有何特殊要求? 可充用构件表示软件重用过程中,可重用的软件构件元素。 可重用构件的特殊要求: (1)可重用构件应该具有功能上的独立性与完整性; (2)可重用构件应该具有较高的通用性; (3)可重用构件应该具有较高的灵活; (4)可重用构件应该具有严格的质量保证; (5)可重用构件应该具有较高的标准化程。 4.基于构件的软件开发的优势是什么?基于构件的软件开发面临哪些挑战和困难? 优势:基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降低了软件开发的费 用 困难和挑战:没有可依据的参考,可用资源和环境缺乏,开发难度高,而各方面需求增长速度与日剧增,更新和升级的跟进是一个不小的挑战.此外,在同一系统采用多个开 发商提供的构件,它们之间的兼容性可能是开发过程中所要面对的一个严峻的问题挑战和困难:

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

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

软件体系结构综述

软件体系结构研究综述 班级:软件092 学号:17 姓名:陈世华摘要: 近年来,软件体系结构逐渐成为软件工程领域的研究热点以及大型软件系统与软件产品线开发中的关键技术之一.归纳了软件体系结构技术发展过程及其主要研究方向.在分析了典型的软件体系结构概念之后,给出了软件体系结构的定义.通过总结软件体系结构领域的若干研究活动,提出了软件体系结构研究的两大思路,并从7个方面介绍了软件体系结构研究进展.探讨了软件体系结构研究中的不足之处,并分析其原因.作为总结,给出了软件体系结构领域最有前途的发展趋势. 关键词: 软件体系结构;基于体系结构的软件开发;软件体系结构描述语言;软件体系结构描述方法;软件体系结构演化;软件体系结构发现;软件体系结构分析;软件体系结构验证;特定域软件体系结构(DSSA) Abstract: Software architecture (SA) is emerging as one of the primary research areas in software engineering recently and one of the key technologies to the development of large-scale software-intensive system and software product line system. The history and the major direction of SA are summarized, and the concept of SA is brought up based on analyzing and comparing the several classical definitions about SA. Based on summing up the activities about SA, two categories of study about SA are extracted out, and the advancements of researches on SA are subsequently introduced from seven aspects. Additionally, some disadvantages of study on SA are discussed, and the causes are explained at the same time. Finally, it is concluded with some significantly promising tendency about research on SA. Key words: software architecture; architecture-based development; architecture description language; architectural representation and description; architectural evolution and reuse; architectural discovery; architectural analysis; architectural verification and evaluation; domain-specific software architecture (DSSA)

第六章 经典软件体系结构教学文案

第六章经典软件 体系结构

第六章经典软件体系结构 本章介绍经典的软件体系结构,主要包括Mary Shaw等人所总结的一些软件体系结构分格。众所周知,计算机学科历史较短,因此,软件架构的研究历史更短。本章所谓的经典软件体系结构也仅仅是指在20世纪80年代至21世纪初期间提出的成功的软件体系结构。本章将介绍调用-返回分格软件体系结构、数据流风格软件体系结构、基于事件的软件体系结构、层次软件体系架构与MVC 软件体系结构。 6.1 调用-返回风格软件体系结构 相对于一些基础学科,计算机学科的发展历史较短。20世纪50年代才出现了适合商业应用的软件开发语言。软件设计与开发也经历了从初级到高级的历程。回顾历史,从20世纪50年代到60年代末,属于非结构化简单程序开发阶段,软件设计方面采用简单程序模型,典型的开发语言Algol(1958)、COBOL(1959)和Basic(1964);从20世纪70年代初到80年代初,属于结构化设计编程阶段,典型的开发语言有Pascal(1968)、C(1972)、FORTRAN和Perl。虽然从20世纪60年代开始就有了面向对象概念的讨论,但是直到20世纪80年代初正式开始才面向对象设计编程阶段,就有了代表性的面向对象软件开发语言包括SmallTalk、Ada、C++(1983)和Java(1995)。 本节首先简要回顾非结构化编程,然后介绍对软件设计有重要的影响的调用-返回风格软件体系结构,重点介绍其中的主程序 - 子程序软件体系结构与面向对象软件体系结构,并对它们进行讨论。 6.1.1 非结构化编程简介 非结构化编程技术是历史上最早的编程范型。紧随其后的是结构化设计/编程技术与面向对象设计/编程技术。一个由非结构化语言编写的程序通常包含一系列有序的命令,或者称为语句,通常是每个语句占一行,每行都有标记一个行号或者可能是标签。这样做的目的事允许程序执行流可以依据行号从一行跳到程序的其他指定的行。支持非结构化编程的语言包括早期的BASIC与COBOL。 非结构化编程引入基本的循环、分支与跳跃等控制流的概念。在非结构化编程中,虽然出现了较为原始的子程序的概念,但其与结构化编程中过程(Procedure)的概念有本质的区别。非结构化编程中的子程序允许有多个入口和多个出口,理论上允许程序在任何地方转入子程序或退出子程序,而在这结构化编程中是不允许的。 虽然非结构化编程所编写的程序很难理解,并且经常遭到批评,但是早期的银行与金融机构软件代码都是由非结构化编程语言(例如COBOL)写的。 目前,非结构化编程已成为历史,现在很少使用(除了有些银行与金融业企业仍然使用COBOL进行开发,但和早期的版本相比有了很多改善,例如COBOL 97包括常规改善并且具备了面向对象的特征),因此本节将不把注意力放在非结构化编程方面,而主要介绍采用结构化设计方法的主程序-子程序软件体系结构与采用面向对象设计方法的面向对象软件体系结构。

体系结构作业解题参考

体系结构作业解题参考 第1章习题 6.某处理机时钟频率为f =30MHz ,处理速度为20MIPS ,用它来执行一个已知混合程序。假定每次存储器访问延迟时间为1个时钟周期。问: ⑴ 此处理机的有效CPI 是多少? ⑵ 假定新处理机的时钟频率f 提高到60MHz ,但存储子系统速率不变。这样,每次存储器访问需2个时钟周期。如果30%的指令每条只需要1次访存,而另外5%指令每条需2次访存,且假定已知混合程序的指令数不变,并与原处理机兼容,请定量分析改进后的新处理机性能。 解:⑴ 由 6 10?= CPI f MIPS 得 5.110 20103010666 =??=?= MIPS f CPI ⑵ 设已知混合程序的总指令执行数为IC ,则改进前程序执行所需的总时钟周期数NC O 为 IC IC CPI NC o 5.1=?= 而改进后的混合程序的指令数不变,且每次访存需增加1个时钟周期,故改进后程序执行所需的总时钟周期数NC n 为 IC IC IC IC IC NC NC o n 9.14.05.1205.013.0=+=?+?+= 所以,改进后,处理机的有效CPI 为 9 .19.1===IC IC IC NC CPI n n 故改进后的处理机速度为 58.3110 9.11060106 6 6≈??=?=n n n CPI f MIPS

第2章习题 6.一条线性流水线有4个流水段,每个流水段的延迟时间都为△t 。开始5个 △t ,每间隔一个△t 向流水线输入一个任务,然后停顿2个△t ,如此重复。 ⑴ 画出流水线的时空图。 ⑵ 求流水线的实际吞吐率、加速比和效率。 解:⑴ 时空图如下: ⑵ 设流入流水线的任务总数为n ,若以5个任务为一组,则共可分为?? ? ???5n 组。 由于两组任务之间间隔2个时钟周期,所以完成n 个任务的总时间为 ()t n n t n t n T k ??? ? ?????? ???++=???? ? ??-??????+?-+=25121514 所以有 t n n n T n P k ???? ? ????????++=251=吞吐率 , 25125242512154???????++???? ???+-=??? ? ?????????++????? ??-??????+?=n n n n t n n t n t n S 加速比 , 25125144???????++=???? ? ????????++?= n n n t n n t n E 效率 。

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

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)来说明,从而形成了第五个视图。

计算机系统结构大作业

《计算机系统结构》大作业 介绍并行算法与并行程序设计 及它们的不足及发展趋势 专业计算机科学与技术(软件工程方向) 指导教师蔡启先 班级 学号 姓名 日期 2013年6月 广西科技大学计算机学院

介绍并行算法与并行程序设计 及它们的不足及发展趋势 摘要:并行算法是并行计算中非常重要的问题。这篇报告首先简要介绍并行计算,然后主要讨论并行算法研究中的问题和今后的方向,最后阐述并行计算研究中存在的问题以及今后面临的挑战。并行算法研究应该确立一个“理论-设计-实现-应用”的系统方法,形成一个完善的“架构—算法—编程”方法论,这样才能保证并行算法不断发展并变得更加实用。再结合例子进而介绍并行算法的基本原理,给并行算法下一个基本的定义,对并行算法进行了相关的介绍;接着根据目前并行算法的应用,提出了在计算机系统结构中以并行算法为基础的一些并行程序设计的应用,比较了目前流行的并行程序设计的方法,并通过比较指出它的不足以及并行程序设计在未来的发展趋势和前景。 关键词:计算机系统结构并行算法并行程序设计 引言 并行计算机从70年代的开始,到80年代蓬勃发展和百家争鸣,再到90年代体系结构框架趋于统一,近年来其快速发展,并行机技术日趋成熟。首先是市场的需求,一直是推动并行计算机发展的主要动力,大量实际应用部门,如天气预报、核武器、石油勘探、地震数据处理、飞行器数值模拟以及其他大型事务处理等,都需要每秒执行数十万亿次乃至数百万亿此浮点运算的计算机,基于这些应用问题本

身的限制,并行计算是满足它们的唯一可行途径。使用多计算机进行并行程序设计,它们之间的通信是通过发送消息来完成的,所以消息传递需要并行程序设计。并行程序设计使用多计算机或多个内部处理器的计算机来求解问题,它比使用单台计算机的计算速度要快得多。并行程序设计也为求解更大规模的问题提供了机会,前面所述问题需要更多的计算步或更大存储容量需求,并行程序设计以并行算法为核心,能满足这要求,因为多计算机和多处理机系统通常比单计算机有更大的总存储容量。 并行算法是一门还没有发展成熟的学科,虽然人们已经总结出了相当多的经验,但是远远不及串行算法那样丰富。并行算法设计中最常用的的方法是PCAM方法,即划分,通信,组合,映射。首先划分,就是将一个问题平均划分成若干份,并让各个处理器去同时执行;通信阶段,就是要分析执行过程中所要交换的数据和任务的协调情况,而组合则是要求将较小的问题组合到一起以提高性能和减少任务开销,映射则是要将任务分配到每一个处理器上。总之,并行算法还需要相当多完善的地方。并行算法与串行算法最大的不同之处在于,并行算法不仅要考虑问题本身,而且还要考虑所使用的并行模型,网络连接等等。 并行算法是并行计算中非常重要的问题。并法研究应该确立一个“理论-设计-实现-应用”的系统方法,形成一个完善的“架构—算法—编程”方法论,这样才能保证并行算法不断发展并变得更加实用。简单的说,算法就是求解问题的方法和步骤。并行算法,就是在

软件体系结构期末复习题

软件体系结构期末 复习题

《软件体系结构》期末复习题 简答题: 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体系结构的软件,系统安装、修改和维护全在服务器端解决。用户在使用系统时,仅仅需要一个浏览器就可运行全部的模块,真正达到了“零客户端”的功能,很容易在运行时自动升级。

计算机系统结构基本习题和答案

计算机系统结构基本习题和答案 填空题 1、从(使用语言的)角度可以将系统看成是按(功能)划分的多个机器级组成的层次结构。 2、计算机系统结构的层次结构由高到低分别为(应用语言机器级,高级语言机器级,汇编语言机器级,操作系统机器级,传统机器语言机器级,微程序机器级)。 3、应用程序语言经(应用程序包)的(翻译)成高级语言程序。 4、高级语言程序经(编译程序)的(翻译)成汇编语言程序。 5、汇编语言程序经(汇编程序)的(翻译)成机器语言程序。 6、在操作系统机器级,一般用机器语言程序(解释)作业控制语句。 7、传统机器语言机器级,是用(微指令程序)来(解释)机器指令。 8、微指令由(硬件)直接执行。 9、在计算机系统结构的层次结构中,机器被定义为(能存储和执行相应语言程序的算法和数据结构)的集合体。 10、目前M0由(硬件)实现,M1用(微程序(固件))实现,M2到M5大多用(软件)实现。以(软件)为主实现的机器成为虚拟机。(虚拟机)不一定全用软件实现,有些操作也可用(固件或硬件)实现。 11、透明指的是(客观存在的事物或属性从某个角度看不到),它带来的好处是(简化某级的设计),带来的不利是(无法控制)。 12、计算机系统结构也称(计算机体系结构),指的是(传统机器级的系统结构)。它是(软件和硬件/固件)的交界面,是机器语言汇编语言程序设计者或编译程序设计者看到的(机器物理系统)的抽象。 13、计算机组成指的是(计算机系统结构的逻辑实现),包括(机器级内的数据流和控制流)的组成及逻辑设计等。计算机实现指的是(计算机组成的物理实现),它着眼于(器件)技术和(微组装)技术。14、确定指令系统中是否要设乘法指令属于(计算机系统结构),乘法指令是用专门的高速乘法器实现还是用加法器实现属于(计算机组成),乘法器和加法-移位器的物理实现属于(计算机实现)。 15、主存容量与编址方式的确定属于(计算机系统结构),主存是否采用多体交叉属于(计算机组 成),主存器件的选定属于(计算机实现)。 16、设计何种系列机属于(计算机系统结构),系列机内不同型号计算机的组织属于(计算机组成)。 17、是否采用通道方式输入输出的确定属于(计算机系统结构),通道采用结合型还是独立型属于(计算机组成)。 18、对PDP-11或V AX-11来说,单总线结构属于(计算机系统结构),其机器级的I/O连接和使用方式属于(计算机组成)。 19、由于计算机组成和计算机实现关系密切,有人称它们为(计算机实现),即计算机系统的(逻辑实现)和(物理实现)。 20、计算机系统结构可有(由上而下)、(由下而上)和(由中间开始)三种不同的设计思路。 21、“由中间开始”设计的“中间”是指(层次结构中的软硬交界面),目前多数是在(传统机器级)与(操作系统级)之间。 22、除了分布处理,MPP和机群系统外,并行处理计算机按其基本结构特征可分为(流水线计算机)、(阵列处理机)、(多处理机)、(数据流计算机)四种不同的结构。 23、费林按指令流和数据流的多倍性把计算机系统分类,这里的多倍性指(系统瓶颈部件上处于同一执行阶段的指令或数据的最大可能个数)。 24、费林分类法能反映出大多数计算机的并行工作方式和结构特点,但只能对(控制流)机器分类,不能对(数据流)机器分类,而且对(流水线处理机)的分类不确切。 25、我们把(着眼于软、硬件功能分配和确定程序设计所看到的机器级界面的计算机系统结构)称为从程序设计者看的计算机系统结构,而把(着眼于如何更好、更合理地实现分配给硬件的功能的计算机组成)称为从计算机设计者看的计算机系统能够结构。

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