2021年下半年软件设计师上午真题答案及解析(三)

21、下图所示为一个非确定有限自动机(NFA),S0为初态,S3为终态。该NFA识别的字符串( )。

  • 非确定有限自动机(Nondeterministic Finite Automata)

    在题干提示有相关进程P1,P2,P3,P4,两个资源打印机和扫描仪,三个状态:运行,就绪,等待。
    首先题干已经明确说明P1处于运行态,释放了扫描仪,此时P1还有打印机没有运行完成,应该仍处于运行状态。
    对于P2而言,单处理机计算机系统只允许拥有1个运行状态,P1此时还未运行完成,未分配对应的CPU,仍处于就绪态。
    对于P3而言,等待打印机,处于等待状态,此时没有关于打印机的资源释放,仍处于等待状态。
    对于P4而言,等待扫描仪,处于等待状态,有相关的扫描仪资源释放,应该得到相应的资源发生,从等待状态变成了就绪状态。

    23、进程P1、 P2、P3、P4、P5和P6的前趋图如下所示。用PV操作控制这6个进程之间同步与互斥的程序如下,程序中的空①和空②处应分别为(1),空③和空④处应分别为(2), 空⑤和空⑥处应公别为(3)

    • 硬盘中一般会有多个盘片组成,每个盘片包含两个面,每个盘面都对应地有一个读/写磁头。受到硬盘整体体积和生产成本的限制,盘片数量都受到限制,一般都在5片以内。盘片的编 自下向上从0开始,如最下边的盘片有0面和1面,再上一个盘片就编 为2面和3面。
    • 盘面中一圈圈灰色同心圆为一条条磁道,从圆心向外画直线,可以将磁道划分为若干个弧段,每个磁道上一个弧段被称之为一个扇区。扇区是磁盘的最小组成单元,通常是512字节。(由于不断提高磁盘的大小,部分厂商设定每个扇区的大小是4096字节)
    • 硬盘通常由重叠的一组盘片构成,每个盘面都被划分为数目相等的磁道,并从外缘的“0”开始编 ,具有相同编 的磁道形成一个圆柱,称之为磁盘的柱面。磁盘的柱面数与一个盘面上的磁道数是相等的。由于每个盘面都有自己的磁头,因此,盘面数等于总的磁头数。
    • 存储容量 = 磁头数 × 磁道(柱面)数 × 每道扇区数 × 每扇区字节数
    • 磁盘块/簇(虚拟出来的)是操作系统中最小的逻辑存储单位。操作系统与磁盘打交道的最小单位是磁盘块。通俗的来讲,在Windows下如NTFS等文件系统中叫做簇;在Linux下如Ext4等文件系统中叫做块(block)。每个簇或者块可以包括2、4、8、16、32、64…2的n次方个扇区。
    • 为什么存在磁盘块
      1. 读取方便:由于扇区的数量比较小,数目众多在寻址时比较困难,所以操作系统就将相邻的扇区组合在一起,形成一个块,再对块进行整体的操作
      2. 分离对底层的依赖:操作系统忽略对底层物理存储结构的设计。通过虚拟出来磁盘块的概念,在系统中认为块是最小的单位。
    • 操作系统经常与内存和硬盘这两种存储设备进行通信,类似于“块”的概念,都需要一种虚拟的基本单位。所以,与内存操作,是虚拟一个页的概念来作为最小单位。
    • 扇区: 硬盘的最小读写单元
    • 块/簇: 是操作系统针对硬盘读写的最小单元
    • page: 是内存与操作系统之间操作的最小单元
    • 扇区

    分析本题

    • 读取速度 = 10 / 10 = 1ms
    • 最长时间情况:
      1)第一条记录 = 1【读取】+ 2【处理】 = 3ms
      2)第二条记录,此时磁头走了 1ms 读取时间,2ms 处理时间,走了 3 块距离,来到第4块 R4 的开始位置,如果需要到 R2 必须走一圈,也就是需要经过 R4,R5,R6,…,R10,R1 共 8 块。每块要花 1ms,因此 1* 8 = 8 ms。再加上读取时间和处理时间,也就是等于 = 8 + 1 + 2 = 11ms
      3)剩下的每一个都需要走一圈再读取和处理,就是花11ms,所以 t R 2 ? R 10 = 9 ? 11 = 99ms
      4)总的时间 = 3 + 99 = 102ms
    • 29、信息系统的文档是开发人员与用户交流的工具。在系统规划和系统分析阶段,用户与系统分析人员交流所使用的文档不包括( )。
      A、可行性研究 告
      B、总体规划 告
      C、项目开发计划
      D、用户使用手册
      参考答案:D
      答案解析:
      本题考查软件开发工程需求分析相关问题。

      用户与系统分析人员交流所使用的文档可以包括以下:

      • 可行性研究 告:可行性研究 告是从事一种经济活动(投资)之前,双方要从经济、技术、生产、供销直到 会各种环境、法律等各种因素进行具体调查、研究、分析,确定有利和不利的因素、项目是否可行,估计成功率大小、经济效益和 会效果程度,为决策者和主管机关审批的上 文件。
      • 总体规划 告:至少包括市场/客户、新产品、人(引进、培养)、设备、成本等方面,也是需求分析和客户人员之间交流所使用或参考的文档。
      • 项目开发计划:是指通过使用项目其他专项计划过程所生成的结果(即项目的各种专项计划),运用整合和综合平衡的方法,制定出用于指导项目实施和管理的整合性、综合性、全局性、协调统一的整合计划文件。

      用户使用手册是详细描述软件的功能、性能和用户界面,使用户了解到如何使用该软件的说明书,一般是开发完成之后交付给客户的。

      30、如下所示代码(用缩进表示程序块),要实现语句覆盖,至少需要(1)个测试用例。采用McCabe度量法计算该代码对应的程序流程图的环路复杂性为(2)。

      (1)
      A、1
      B、2
      C、3
      D、4

      (2)
      A、2
      B、1
      C、3
      D、4
      参考答案:A、C
      答案解析:
      针对于伪代码而言,我们具体能够根据其关系判断,做得应该是将一组数据,按照从小到大的顺序进行排序的过程,实质是属于插入排序的算法。

      首先对于第一个问题,要实现语句覆盖,至少需要多少个测试用例,我们只需要一组数据就能够得到不断重复排序后的输出结果。

      流图G的环形复杂度V(G)=E-N+2,其中,E是流图中边的条数,N是结点数。
      V(G)=13-12+2=3

      2021年下半年软件设计师上午真题答案及解析(三)

      声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

  • 上一篇 2022年10月1日
    下一篇 2022年10月1日

    相关推荐