软件设计——2017年下半年选择题重要知识点

1、计算机系统的主存主要是由(DRAM)构成的。

解析:

DRAM: 动态随机存取存储器;

SRAM: 静态随机存取存储器;

Cache: 高速缓存;

EEPROM: 电可擦可编程只读存储器

 

2、在程序执行过程中,Cache与主存的地址映射是由(硬件自动)完成的。

解析:

高速缓存(Cache)的出现有两个因素:首先是因为CPU性能和速度提高很快而主存速度较慢且价格高,其次是程序执行的局部性特点。

因此才将速度比较快且容量有限的静态存储芯片构成Cache,尽可能发挥CPU的高速度。因此必须要用硬件来实现Cache的全部功能。

 

3、下列攻击行为中,属于典型被动攻击的是(会话拦截)。

解析:

计算机网络面临的安全威胁大致有四种:截获、中断、篡改、伪造

其中截获信息的行为属于被动攻击中断、篡改、伪造信息的行为属于主动攻击

4、与HTTP相比,HTTPS协议对传输的内容进行加密,更加安全。HTTPS基于(SSL)安全协议,其默认端口是(443)。

解析:

RSA:非对称加密算法

DES:使用密钥加密的块算法

SSL:为网络通信提供安全及数据完整性的安全协议

SSH:为建立在应用层基础上的安全协议

HTTP通信用的端口号是80而SSL一般使用端口号443

5、某企业财务系统的需求中,属于功能需求的是(每个月特定的时间发放员工工资)。

解析:

需求分析主要是:功能、性能、数据和界面需求。

功能需求:软件系统必须完成的所有功能。

性能需求:响应时间、吞吐量、处理时间等。

数据要求:包括基本数据元素、数据元素之间的逻辑关系、数据量和峰值等。描述手段是ER模型。

界面需求:描述软件系统的外部特性。即系统从外部输入哪些数据,系统向外部输出哪些数据。

 

6、将高级语言源程序通过编译或解释方式进行翻译时,可以先生成与源程序等价的某种中间代码。以下关手中间代码的叙途中,正确的是(后缀式和三地址码是常用的中间代码)。

解析:

中间代码(Intermediate Representation或者IR):复杂性介于源程序语言和机器语言的一种表示形式。编译程序锁使用的中间代码有多种形式。常见的有逆波兰记号,三元式,四元式,和树形表示。四元式是一种普遍采用的中间代码形式,很类似于三地址指令,有时把这类中间表示称为“三地址代码”,这种表示可以看作是一种虚拟三地址机的通用汇编码,每条”指令“包含操作符和三个地址,两个是为运算对象的,一个是为结果的。

7、某文件系统采用多级索引结构。若磁盘块的大小为1K字节,每个块号占3字节,那么采用二级索引时的文件最大长度为(116281)字节。

解析:

欲求二级索引,首先算出一级索引。一级索引需要使用一个磁盘块来保存直接索引的块号。由题目知,磁盘块的大小为1K=1024字节,每个块号需占3字节,则一个磁盘块可以保存的块号的个数为:1024/3=341

所以,采用一级索引时,文件最大长度为:1024*341/1024=341KB

采用二级索引时的文件最大长度为:341KB×341=116281KB

8、极限编程(XP)的十二个最佳实践不包括(精心设计)。

解析:
现场客户 ( On-site Customer )
代码规范 ( Code Standards )
每周40小时工作制 ( 40-hour Week )
计划博弈 ( Planning Game ):
要求结合项目进展和技术情况,确定下一阶段要开发与发布的系统范围。
系统隐喻 ( System Metaphor ):
通过隐喻来描述系统如何运作、新的功能以何种方式加入到系统。它通常包含了一些可以参照和比较的类和设计模式。
简单设计 ( Simple Design )
测试驱动 ( Test-driven )

代码重构 ( Refactoring )
代码重构是指在不改变系统行为的前提下,重新调整、优化系统的内部结构以减少复杂性、消除冗余、增加灵活性和提高性能。
成对编程 ( Pair Programming )
XP
认为开发小组的每个成员都有更改代码的权利,所有的人对于全部代码负责。
持续集成 ( Continuous Integration )
提倡在一天中集成系统多次,而且随着需求的改变,要不断的进行回归测试。
小型发布 ( Small Release )
强调在非常短的周期内以递增的方式发布新版本,从而可以很容易地估计每个迭代周期的进度,便于控制工作量和风险;同时,也可以及时处理用户的反馈。

9、以下关于管道过滤器体系结构的优点的叙述中,不正确的是(提高性能)。

解析:
管道/过滤器体系结构具有许多很好的特点:
(1)使得软构件具有良好的隐蔽性和高内聚、低耦合的特点;
(2)允许设计者将整个系统的输入/输出行为看成是多个过滤器的行为的简单合成;
(3)支持软件重用。重要提供适合在两个过滤器之间传送的数据,任何两个过滤器都可被连接起来;
(4)系统维护和增强系统性能简单。新的过滤器可以添加到现有系统中来;旧的可以被改进的过滤器替换掉;
(5)允许对一些如吞吐量、死锁等属性的分析;
(6)支持并行执行。每个过滤器是作为一个单独的任务完成,因此可与其它任务并行执行;

但是,这样的系统也存在着若干不利因素:
(1)通常导致进程成为批处理的结构。这是因为虽然过滤器可增量式地处理数据,但它们是独立的,所以设计者必须将每个过滤器看成一个完整的从输入到输出的转换。
(2)不适合处理交互的应用。当需要增量地显示改变时,这个问题尤为严重。
(3)因为在数据传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作,这样就导致了系统性能下降,并增加了编写过滤器的复杂性。综合分析现有管道一过滤器体系结构的研究成果,可以发现管道一过滤器体系结构没有给出管道和过滤器如何组装以实现系统的方法,也没有给出过滤器通过管道进行数据传输的方式,而且对过滤器和管道各自内部结构没有清晰的描述,因此可以认为管道一过滤器体系结构没有深入对管道一过滤器本质进行揭示。

10、编译过程中进行的语法分析主要是分析(程序语句的结构是否合法)。

解析:
词法分析和语法分析的本质都是对源程序的结构进行分析
语义分析阶段是分析各语法结构的含义,检查源程序是否包含静态语义错误,并收集类型信息后供后面的代码生成阶段使用。

语义分析的一个主要工作是进行类型分析和检查。

11、采用三级结构/两级映像的数据库体系结构,如果对数据库的一张表创建聚簇索引,改变的是数据库的(内模式)。

解析:
聚簇索引的顺序就是数据的物理存储顺序,,基本表文件和索引文件一起构成了数据库系统的内模式

猜你喜欢

转载自www.cnblogs.com/sunjiaojiao/p/11526486.html