当前位置:首页计算机类软件水平考试中级嵌入式系统设计师->2014嵌入式系统设计师下午真题卷

2014嵌入式系统设计师下午真题卷

推荐等级:

发布时间: 2021-12-17 11:05

扫码用手机做题

试卷预览

1 问答题 1分

在开发某嵌入式系统时,设计人员根据系统要求,分别编写了如下程序,其中:

[程序1]:实现两个变量的值的互换;

[程序2]:完成某功能的C语言程序;

[程序3]和[程序4]:是P、V操作的形式化定义,设S为信号量。在多道程序系统中,进程是并发执行的。这些进程间存在着不同的相互制约关系,主要表现为同步和互斥两个方面。信号量是解决进程间同步与互斥的有效方法。 [程序1] void swap (int n1, int n2) { int tmp=n1; n1=n2; n2=tmp; [程序2] #include image.pngstdio.h> int fun (int n) { int f0=0, f1=1, f, i; if (n==0) return 0; if (n==1) return 1; for(i=2j; iimage.png=n; i++) { f=f0+f1; f0=f1; f1=f; } return f; } void main12 {int n=5; printf ("fun(%d)=%d\n", n, fun(n)); n=7; printf ("fun(%d)=%d\n", n, fun(n)); n=9; printf ("fun(%d)=%d\n", n, fun(n)); } [程序3] P操作的形式化定义: P (S) { ______; if(______){ 阻塞该进程; 将该进程插入信号量S的等待队列; } } [程序4] V操作的形式化定义: V(S) { ______; if(______){ 从信号量S的等待队列中取出队首进程; 将其插入就绪队列; } }

1、执行[程序1]后,没有能够实现两个变量值的交换,为什么?请修改上述函数,实现两个变量值的交换,要求函数无返回值,形式为:void swap(...)。

2、请问[程序2]运行结果是什么?

3、请简述什么是临界资源?什么是临界区? 请完成[程序3]和[程序4]的形式化定义

查看答案 开始考试
正确答案:

本题解析:

1、两个变量不能交换值的原因: 因为函数是传值的,函数形参值的交换,并不影响到实参的值的变化。 正确的函数编写如下(下面只是范例,变量名称不作要求): void swap (int *pn1, int *pn2) { int tmp=*pn1; *pn1=*pn2; *pn2=tmp; }

2、第一次输出:fun(5)=5 第二次输出:fun(7)=13 第三次输出:fun(9)=34

3、临界资源:一次只能使一个进程访问的资源称为临界资源。 临界区:进程中访问临界资源的那段代码称为临界区。 (1)S-- (2)S<0 (3)S++ (4)S<=0

1、本题考查嵌入式C/C++语言编程基础知识。 函数swap采用值传递,虽然将形参n1和n2交换了,但是并不影响到实参,所以执行[程序1]后,实参变量并没有完成数据交换。

将值传递改成指针传递就可以了。 对应的swap函数应修改如下: swap (int *pn1, int *pn2) { int tmp; tmp=*pn1; *pn1=*pn2; *pn2=tmp; }

2、当n=5时,初始:f0=0,f1=1; for循环计算如下: i=2: f=0+1=1; f0=1; f1=1; i=3: f=1+1=2; f0=1; f1=2; i=4: f=1+2=3; f0=2; f1=3; i=5: f=2+3=5; f0=3; f1=5; 所以,调用fun(5),得到返回值5; 同理,可计算出fun(7)=13; fun(9)=34。

3、在多道程序系统中,进程是并发执行的,这些进程之间存在着不同的相互制约关系。进程之间的这种制约关系来源于并发进程的合作以及对资源的共享。 进程在运行过程中,一般会与其他进程共享资源,而有些资源的使用具有排他性。系统中的多个进程可以共享系统的各种资源,然而其中许多资源一次只能为一个进程所使用,通常把一次仅允许一个进程使用的资源称为临界资源。许多物理设备都属于临界资源,如打印机、绘图机等。除物理设备外,还有许多变量、数据等都可由若干进程所共享,它们也属于临界资源。

进程中访问临界资源的那段代码称为临界区,也称为临界段。

访问临界资源应遵循如下原则:

①空闲让进(或有空即进):当没有进程处于临界区时,可以允许一个请求进入临界区的进程立即进入自己的临界区;

②忙则等待(或无空则等):当已有进程进入其临界区时,其他试图进入临界区的进程必须等待;

③有限等待:对要求访问临界资源的进程,应保证能在有限时间内进入自己的临界区;

④让权等待:当进程不能进入自己的临界区时,应释放处理机。

信号量是荷兰著名的计算机科学家Dijkstra于1965年提出的一个同步机制,其基本思想是在多个相互合作的进程之间使用简单的信号来同步。 在操作系统中,信号量是表示资源的实体,除信号量的初值外,信号量的值仅能由P操作(又称Wait操作)和V操作(又称Signal操作)改变。

设S为一个信号量,P(S)执行时主要完成:先执行S=S-1;若S≥0则进程继续运行;若S<0则阻塞改进程,并将它插入该信号量的等待队列中。 V(S)执行时主要完成:先执行S=S+1;若S>0则进程继续执行;若S≤0则从该信号量等待队列中移出第一个进程,使其变为就绪状态并插入就绪队列,然后再返回原进程继续执行。 P、V操作的形式化描述如下: P(S) { S --; IF(S<0){ 阻塞该进程; 将该进程插入信号量s的等待队列; } } V(S) { S++; IF(S=0) { 从信号量S的等待队列中取出队首进程; 将其插入就绪队列; } }

2 问答题 1分

某公司承接了一个控制系统的项目,由王工负责系统的方案设计。王工的设计方案如图1所示。该方案是基于VME总线的多机并行处理系统,由主控制模块作为VME总线的主设备,即总线控制器,负责整个系统的控制与管理;3个数据处理模块作为从设备,负责数据处理与计算;1个I/O模块也作为从设备,负责系统与外部接口之间的高速数据通信。同时,为了简化设计,该系统5个模块均采用同一款VME协议芯片,实现内总线和VME总线的连接。

中级嵌入式系统设计师,章节练习,案例分析

该系统中每个模块的相关信息见表1所示。

中级嵌入式系统设计师,章节练习,案例分析

1、王工设计采用共享存储器方式,进行多机之间的通信。VME共享存储器的地址空间映射,分为输出窗口和输入窗口两部分。输出窗口实现处理器本地地址空间到VME总线地址空间的映射,输入窗口实现VME总线地址空间到处理器本地地址空间的映射。 输出窗口空间设置说明:为了每个模块能访问到其他4个模块,在每个模块的处理器本地地址空间中开辟5M空间,映射到VME总线上的5M地址空间。映射关系见表2。

中级嵌入式系统设计师,章节练习,案例分析

输入窗口空间设置说明:每个模块分配1M的VME地址空间,并将这1M空间映射到处理器本地RAM区域中,专门用于VME通信数据缓冲区。映射关系见表3。

中级嵌入式系统设计师,章节练习,案例分析

VME总线驱动中,按照上述方式对寄存器进行设置,实现了VME总线共享存储器工作方式,将对其他模块的操作转化为对处理器本地地址空间访问操作相似的读写操作,并且都采用总线远程写,总线本地读的方式。

数据处理模块1发送消息到数据处理模块2,它们之间采用1M数据缓冲区的第一个32位作为握手标志。则数据处理模块1访问标志区的总线地址为______,数据处理模块2访问标志区的总线地址为______。 I/O模块向主控制模块发送控制命令,它们之间采用1M数据缓冲区偏移0x100处作为命令缓冲区。则I/O模块访问命令区的总线地址为______,主控制模块访问命令区的总线地址为______。

2、如表1所示,该系统中采用的处理器有大端和小端两种工作模式。王工设计VME总线上传输的数据全部采用小端方式,那么当处理器通过VME总线发送数据时,需要根据自己的工作模式,对数据进行必要的转换,以符合协议要求。 当I/O模块向主控制模块发送控制命令0xAABBCCDD,那么它写入V=ME总线的实际数据是______,当主控制模块向数据处理模块3和I/O模块发送控制命令0x12345678,那么它写入VME总线的实际数据是______和______。

3、为了提高数据通信的性能,在进行大数据量通信时,王工设计采用DMA的方式。DMA通信方式能够满足高速VME设备的需求,也有利于发挥CPU效率。该VME协议芯片有两种DMA工作方式:一种是直接方式(Direct mode),一种是链方式(Linked list mode)。

在直接方式下,在每次数据传输前,需要驱动程序对DMA控制寄存器进行设置,然后进行DMA传输,并等待传输完成,或者异常错误。直接方式是一种软件和硬件同步工作方式。在链方式下,驱动程序只需要设置命令包。

在通信过程中,硬件根据命令包的内容完成传输,并根据链中的下一个命令包,继续传输,直到所有命令包完成或者异常错误。链方式是一种软件和硬件异步工作的方式。 图2是DMA直接方式的流程图,请补全流程图。

中级嵌入式系统设计师,章节练习,案例分析

查看答案 开始考试
正确答案:

本题解析:

1、0xD020'0000 0x00F0'0000 0xD000'0100 0x00F0'0100

2、0xAABBCCDD 0x78563412 0x78563412

3、(1)设置DMA目的地址或(2) (2)设置传输长度或(1) (3)设置DMA传输启动位 DMA是否正常终止

1、本题考查嵌入式系统中计算机总线、存储、DMA等相关知识及应用。

该系统是基于VME总线的多机并行处理系统,采用共享存储器方式进行多机之间的通信,定义了5MB的VME空间,用于主控制模块等5个模块之间的VME通信。

VME总线的共享存储器方式,通过地址空间映射来实现,分为输出窗口和输入窗口两部分。输出窗口实现处理器本地地址空间到VME总线地址空间的映射,本系统中每个模块配置了相同的5MB的处理器输出窗口地址空间(0xD000' 0000~0xD04F' FFFF),用于映射到VME总线上的5MB地址空间(0x0000' 0000~0x004F' FFFF)。

输入窗口实现VME总线地址空间到处理器本地地址空间的映射。本系统中按照模块顺序,每个模块将1M的VME地址空间,映射到处理器本地RAM区域中(0x00F0' 0000~0x00FF' FFFF),专门用于VME通信数据缓冲区。整个系统的映射关系图3所示。

中级嵌入式系统设计师,历年真题,案例分析

由于所有驱动都采用总线远程写方式,数据处理模块1要访问数据处理模块2的通信缓冲区,访问的基地址就是数据处理模块2内存缓存区对应的VME总线地址,即VME总线0x0020' 0000,该地址对应数据处理模块1的本地地址,则为0xD020' 0000。由于所有驱动都采用总线本地读的方式,所以数据处理模块2访问的基地址为本地存储器地址,即0x00F0' 0000。具体的地址空间再由基地址加上指定的偏移即可。

同理,I/O模块要访问主控制模块的通信缓存区,访问的基地址就是主控制模块内存缓存区对应的VME总线地址,即VME总线0x0000' 0000,该地址对应I/O模块的本地地址,则为0xD000' 0000。主控制模块访问的基地址为本地存储器地址,即0x00F0' 0000。具体的地址空间再由基地址加上指定的偏移即可。

2、数据在计算机中表示时,有大端和小端两种格式。大端模式是指数据的高位保存在内存的低地址中,而数据的低位保存在内存的高地址中,这样的存储模式有点儿类似于把数据当作字符串顺序处理,地址由小向大增加,而数据从高位往低位放。小端模式是指数据的高位保存在内存的高地址中,而数据的低位保存在内存的低地址中,这种存储模式将地址的高低和数据位权有效地结合起来,高地址部分权值高,低地址部分权值低,与用户的逻辑方法一致。

例如,数字0x12345678在内存中的表示形式为:

1.大端模式:低地址------>高地址0x12|0x34|0x56|0x78

2.小端模式:低地址------>高地址0x78|0x56|0x34|0x12

从软件处理的角度上,不同端模式的处理器进行数据传递时必须要考虑端模式的不同。如进行网络数据传递时,必须要考虑端模式的转换。其中互联网使用的网络字节顺序采用大端模式进行编址,而主机字节顺序则根据处理器的不同而不同,如PowerPC处理器使用大端模式,而Pentium处理器使用小端模式。大端模式处理器的字节序到网络字节序不需要转换;而小端模式处理器的字节序到网络字节必须要进行转换。

在该系统中,VME总线上传输的数据全部采用小端方式,但主控制模块、数据处理模块1、数据处理模块2、数据处理模块3均采用大端方式处理器,因此发送到VME总线上的数据要进行大端到小端模式的转换,而从VME总线上接收的数据,要进行小端到大端模式的转换,但I/O模块由于采用的是小端模式的处理器,则不需要进行转换。

3、DMA(Direct Memory Access, 直接内存存取)是所有计算机的重要特色,它允许不同速度的硬件装置来传输数据,而不需要依赖于CPU的大量负载。DMA传输将数据从一个地址空间复制到另外一个地址空间。

当CPU初始化这个传输动作,传输过程则由DMA控制器来实行和完成,如图4所示。典型的例子就是移动一个外部内存的区块到芯片内部更快的内存区。这样的操作并没有让处理器工作拖延,反而可以被重新安排去处理其他的工作。DMA传输对于高效能嵌入式系统是很重要的。

在实现DMA传输时,由DMA控制器直接掌控总线,因此,存在着一个总线控制权转移问题。即DMA传输前,CPU要把总线控制权交给DMA控制器,而在结束DMA

中级嵌入式系统设计师,历年真题,案例分析

传输后,DMA控制器应立即把总线控制权再交回给CPU。

一个完整的DMA传输过程必须经过DMA请求、DMA响应、DMA传输、DMA结束4个步骤。

(1)DMA请求

CPU对DMA控制器初始化,并提供要传送的数据的起始位置、目的地址和数据长度。并向I/O设备发出启动操作命令,I/O设备提出DMA请求。

(2)DMA响应

DMA控制器对DMA请求判别优先级及屏蔽,向总线裁决逻辑提出总线请求。当CPU执行完当前总线周期即可释放总线控制权。此时,总线裁决逻辑输出总线应答,表示DMA已经响应,通过DMA控制器通知I/O设备开始DMA传输。

(3)DMA传输

DMA控制器获得总线控制权后,CPU即刻挂起或只执行内部操作,由DMA控制器输出读写命令,直接控制RAM与I/O设备进行DMA传输。

在DMA控制器的控制下,在存储器和外部设备之间直接进行数据传送,在传送过程中不需要中央处理器的参与。

(4)DMA结束

当完成规定的成批数据传送后,DMA控制器即释放总线控制权,并向I/O设备发出结束信号。当I/O设备收到结束信号后,一方面停止I/O设备的工作,另一方面向CPU提出中断请求,使CPU从不介入的状态解脱,并执行一段检查本次DMA传输操作正确性的代码。最后带着本次操作结果及状态继续执行原来的程序。

由此可见,DMA传输方式无需CPU直接控制传输,也没有中断处理方式那样保留现场和恢复现场的过程,通过硬件为RAM与I/O设备开辟一条直接传送数据的通路,使CPU的效率大为提高。

3 问答题 1分

某嵌入式刹车控制软件,应用于汽车刹车控制器,该软件需求如下:

1.模式选择:采集模式控制离散量信号In_D1并通过模式识别信号灯显示软件当前工作模式。在信号In_D1为低电平时进入正常工作模式(模式识别信号灯为绿色),为高电平时进入维护模式(模式识别信号灯为红色)。软件在正常工作模式下仅进行刹车控制和记录刹车次数,在维护模式下仅进行中央控制器指令响应;

2.刹车控制:采用定时中断机制,以5ms为周期采集来自驻车器发出的模拟量信号In_A1以及来自刹车踏板发出的模拟量信号In_A2,并向刹车执行组件发送模拟量信号Out_A1进行刹车控制;

3.记录刹车次数:在Out_A1大于4V时,读出非易失存储器NVRAM中保存的刹车次数记录进行加1操作,然后保存至非易失存储器NVRAM中;

4.响应中央控制器指令:接收来自中央控制器的串行口指令字In_S1,回送串行口响应字Out_S1。当接收的指令字错误时,软件直接丢弃该命令字,不进行任何响应。 指令字及响应字说明如表1所示。表1 指令字和响应字

中级嵌入式系统设计师,章节练习,案例分析

1、请简述本软件串行输入接口测试的测试策略及测试内容。针对表1中“读取刹车次数指令”进行鲁棒性测试时应考虑哪些情况?

2、某测试人员设计了表2所示的操作步骤对模式选择功能进行测试(表中END表示用例到此结束)。

中级嵌入式系统设计师,章节练习,案例分析

为进一步提高刹车控制软件的安全性,在需求中增加了设计约束:软件在单次运行过程中,若进入正常工作模式,则不得再进入维护模式。请参照表2的测试用例完成表3,用于测试该设计约束。

中级嵌入式系统设计师,章节练习,案例分析

3、本项目在开发过程中通过测试发现了17个错误,后期独立测试发现了31个软件错误,在实际使用中用户反馈了2个错误。请计算缺陷探测率(DDP)。

查看答案 开始考试
正确答案:

本题解析:

1、测试策略包括测试正常和异常指令的响应。测试内容包括读取刹车次数和清除刹车次数两种指令。对“读取刹车次数指令”鲁棒性测试时应考虑输入接口帧头错误、指令码错误、帧长错误、帧尾错误以及整个指令长度超过4字节的情况。

2、中级嵌入式系统设计师,历年真题,案例分析

1、本题考查软件测试的一些基本概念及依据需求进行测试用例设计的能力。

此题目要求考生认真阅读题目所给的说明,了解刹车控制软件的工作流程,结合软件测试的一些基本概念,在刹车控制软件中进行实际应用。

本问题主要考查测试的基本概念,对所有的测试而言,都必须进行正常测试和异常测试,在本题中对测试对象实例化为串行输入接口。串行输入接口在本题的需求描述中,根据表1内容,负责接收读取刹车次数和清除刹车次数两种指令,故测试内容为此两种指令。对“读取刹车次数指令”进行鲁棒性测试时应考虑的情况,其实也是接口鲁棒性测试概念的一个实例化,对接口的数据包而言,至少应该包括帧头错误、数据长度错误、数据错误、校验和错误、校验码错误以、帧尾错误以及其他防止指令错误手段的错误等。对本题的实例化而言,具体包括帧头错误、指令码错误、帧长错误、帧尾错误以及整个指令长度超过4字节的情况。

2、如果不考虑约束,软件工作状态从组合的角度来说,表2的测试顺序完全符合要求。但是许多软件在实际使用中,由于真实情况的限制,不能从理论的情况进行组合,对一些条件必须要进行约束。比如本题中,在单次进入正常工作模式后,就不能进入维护模式,因为维护模式是一种检修模式,不能在正常工作中进行检修,所以必须保证在正常工作模式下,对维护模式命令不响应。

所以此题的前提条件应该为“上电前置In_D1为高电平,给测试环境上电,模式识别信号灯为红色”,即在上电后首先让工作模式为维护模式;然后再发送进入正常工作模式命令,灯变绿,进入工作模式;最后在正常工作模式下,发送进入维护模式命令,此时软件应该不响应,灯继续为绿色,表示在工作模式,完成带约束条件的状态转换测试。如果继续表2的测试前提条件,不管发送什么命令,灯一直不会变化,就无法判断是软件问题还是测试设备问题,无法完成测试。

3、此题是一个简单的测试概念,缺陷探测率(DDP)=测试发现的软件问题/软件总的发现问题,对本题而言,缺陷探测率(DDP)=(17+31)/(17+31+2)=96%。

4 问答题 1分

在嵌入式系统设计中,李工使用某嵌入式处理器和对应的以太网芯进行带有网络功能的单板实现,该电路中还包含DDR、Flash等存储芯片和相应的外围控制芯片。

图1为所选用嵌入式处理器的存储模块存储地址总线变换示意图,

图2为以太网芯片外围设计的相关原理示意图,

图3为用户在该嵌入式单板系统上实现内部嵌入式Web服务器的流程示意图。

在该嵌入式处理器的存储系统设计中,嵌入式处理器内部包含SA[25:0](从高到低)共26根系统地址总线,外部使用22根数据线和外部存储设备进行连接。 嵌入式处理器和以太网芯片之间的交互接口为:MII(Media Independent Interface)接口,包含数据线和控制线。数据线分为收发两个方向:其中RXD[3:0]为并行数据接收线,RXCLK为对应的时钟线;TXD[3:0]为并行数据发送线,TXCLK为对应的时钟线。

MDIO和MDC为控制线,通过其进行以太网芯片的配置。以太网芯片的最大通信频率由其外围的晶振频率和收发数据线的并行数目决定。 在嵌入式系统设计中,嵌入式处理器和以太网芯片之间可以设计为一对多的方式,每个以太网控制器都有一个PHYID,该PHYID依赖于以太网芯片周边的电路设计。在图2的设计中,该以太网芯片的PHYID由图中的PHYID[4:0]五个管脚来定。

对于该以太网芯片而言,PHYID[4:0]在启动时是作为。PHYID选择控制使用,在启动后是作为其他指示功能使用。PHYID的最大值是31(五位),最小是0,由PHYID[4:0]从高位到低位决定,对应管脚为高电平时对应的值为1,低电平时对应的值为0。

中级嵌入式系统设计师,章节练习,案例分析

中级嵌入式系统设计师,章节练习,案例分析

1、如图1所示,用户可以通过寄存器将存储总线变换方式配置为字节模式(8位模式),半字模式(16位模式)或者字模式(32位模式)中的任何一种,不同模式下,所使用到的地址线不同。 在图2中的,①、②、和③分别对应的地址线连接应该依次是______。 A SA2-SA23, SA1-SA22, SA0-SA21 B SA0-SA21, SA2-SA23, SA1-SA22 C SA1-SA22, SA2-SA23, SA0-SA21 D SA0-SA21, SA1-SA22, SA2-SA23 根据图2的网络部分相关电路设计,可以知道该嵌入式处理器的网络通信中,最大通信频率是______Mbps。 A.10000 B.1000 C.100 D.10 如果该网络芯片工作在100Mbps,那么在图2的设计中,RXCLK的工作频率应该是______Mbps.根据图2的电路和题目说明,在该电路中,以太网芯片的PHYID应该是______。

2、在图3中,为了实现嵌入式Web服务器和对应的请求流程,李工设计了该流程示意图,根据网络通信的过程,从下面选项中选择合适的处理过程,填充图3中的空(1)~(4)。 空(1)~(4)备选答案: A.创建TCP socket套接字 B.关闭socket套接字 C.accept尝试建立TCP连接 D.HTTP服务 E.数据发送处理 F.数据接收处理 G.bind绑定套接字 H.本地其他服务处理 I.listen侦听客户套接字 J.创建UDP socket套接字

中级嵌入式系统设计师,章节练习,案例分析

查看答案 开始考试
正确答案:

本题解析:

1、D C 25 1或者0x01

2、G I C D

1、本题考查嵌入式处理器的硬件原理及连线设计和相关软件中网络程序的设计。

此类题目要求考生认真阅读题目对题目进行分析,仔细查看所提供的硬件原理设计,根据设计开发经验,进行问题回答。

在该嵌入式处理器的存储系统设计中,嵌入式处理器内部包含SA[25:0](从高到低)共26根系统地址总线,外部使用22根数据线和外部存储设备进行连接。由原理图中可以看出,该存储器设计可以实现8位,16位,32位的不同控制,在不同控制方式下,连线的方式也会不同。在8位模式下,最低位使用的肯定是SA0;在16位模式下,也就是无论最低位是0是1都不影响地址选择,即此时最低位应该是SA1;在32位模式下,即最低位是0,1,2,3时候都不影响寻址,即此时最低位应该是SA2。由此即可知,在不同模式选择下所连接的地址位是不同的。

目前典型的嵌入式处理器支持10M、100M、1000M的不同速率设计,在不同模式下,网络芯片和外部接口有所不同,尤其表现在RJ45连线的差分线的数目上,以及表现在PHY芯片和CPU之间的MOIO数据线和PHY芯片的时钟上。由原理图可以看出,该PHY芯片的时钟为25M,同时MDIO中收发数据线各是4根,因此其最大速率应该是100Mbps。

当网络工作在100Mbps情况下,PHY和CPU之间的收发都是依靠四根并行线来实现的。因此100M/4=25M,也就是说CLK应该工作在25M。由原理图及题目中所给出PHYID的计算方法,由高位到低位,依据上电状态下的高低电平可以非常容易计算出PHYID的数值。

2、在网络设计过程中,一般服务器和客户端的通信可以采用TCP,也可以采UDP的形式进行。

TCP是面向连接的通信方式,可以保证数据的准确性和一致性,UDP是不保证连接,但是其速度快,负荷较小。

在TCP连接过程中,需要服务器,客户端按照固定的流程进行软件实现。服务器首先绑定端口和IP,然后侦听,等待客户端连接。客户端在创建对应的套接字后即可按照IP,端口来连接服务器,待连接成功后,服务器客户端即可开始通信。

5 问答题 1分

ATM自动取款机系统是一个由终端机、ATM系统、数据库组成的应用系统,具有提取现金、查询账户余额、修改密码及转账等功能。

ATM自动取款机系统用例图如图1所示。

中级嵌入式系统设计师,章节练习,案例分析

ATM自动取款机系统功能组成如图2所示。

中级嵌入式系统设计师,章节练习,案例分析

1、根据ATM自动取款机系统功能和系统用例图,完成图3所示的ATM自动取款机系统的系统状态图,将系统状态图中的(1)~(6)补充完整。

中级嵌入式系统设计师,章节练习,案例分析

2、ATM自动取款机系统取款用例描述用户取款的过程。其事件流如下:

(1)基本流 a.用户输入取款金额; b.系统验证输入金额是否符合输入要求; c.系统验证用户账户余额; d.系统显示用户账户余额; e.用户确认取款金额; f.系统要求点钞机出钞; g.系统更新并保存账户信息。

(2)备选流 a.如果输入金额不符合输入数字格式要求,给出提示,退出; b.如果输入金额超出最大取款金额,给出提示,退出; c.如果用户没有确认,给出提示,退出。

根据上述ATM:自动取款机系统取款用例描述,请完成取款功能的流程图。

3、ATM自动取款机系统是与银行服务器联网的网络系统,由于系统涉及个人和企事业单位的财产安全,要求网络通信安全可靠,因此通信过程要采取消息加解密、身份认证、消息鉴别和访问控制等信息安全措施。

(1)请简要解释下列术语的基本概念。 a.对称密钥 b.公开密钥 c.访问控制 d.消息鉴别

(2)以下几种常见的加密算法哪些属于对称加密算法?哪些属于非对称加密算法?a.DES b.RSA c.AES d.IDEA e.PGP f.DSA g.椭圆曲线DSA

查看答案 开始考试
正确答案:

本题解析:

1、(1)取款 (2)选择修改密码 (3)选择继续服务 (4)选择转账 (5)转账 (6)输入密码

本题考查软件设计中的状态图、流程图以及信息安全方面概念和基本知识。本题要求考生认真阅读题目的描述,根据ATM自动取款机系统用例图和ATM自动取款机系统功能图了解ATM自动取款机系统工作过程,结合软件设计中的状态图和流程图的绘制要求,完成相关问题。由ATM自动取款机系统用例图和ATM自动取款机系统功能图可知,其工作过程如下:当客户将银行卡插入ATM机后,ATM机会要求输入密码,如果密码不正确,则需要重新输入;如果密码正确,则进入主菜单,选择不同的服务类型。服务类型有取款、修改密码、查询余额、转账等功能。完整的ATM自动取款机系统的系统状态图如图4所示。

中级嵌入式系统设计师,历年真题,案例分析

中级嵌入式系统设计师,历年真题,案例分析

2、该问题的描述部分已经给出了ATM自动取款机系统的取款过程的事件,流程图只需要根据实际取款的工作次序排序即可。正确的流程如下:a)用户输入取款金额;b)系统验证输入金额是否符合输入要求;c)判断格式要求,如果满足要求,则继续;否则,转结束;d)系统验证用户账户余额;e)系统显示用户账户余额;f)判断实际取款金额是否超出最大取款金额,若不大于,则继续;否则,给出超出最大金额提示后,转结束;g)用户确认取款金额;h)如果用户没有确认,时间超时,则给出超时提示,转结束:i)系统要求点钞机出钞;j)系统更新并保存账户信息;k)结束。

3、(1)a.对称密钥:对称密钥加密又叫专用密钥加密,即发送和接收数据的双方必须使用相同的密钥对明文进行加密和解密运算。b.公开密钥:公开密钥也称为非对称密钥,每个人都有一对唯一对应的密钥:公开密钥(简称公钥)和私人密钥(私钥),公钥对外公开,私钥由个人秘密保存;用其中一把密钥加密,就只能用另一把密钥解密。c.访问控制:按用户身份及其所归属的某项定义组来限制用户对某些信息项的访问,或限制对某些控制功能的使用的一种技术。d.消息鉴别:利用鉴别函数产生一个鉴别符,接收者通过鉴别符能够检验和证实消息的合法性、真实性和完整性。这是一个证实收到的消息来自可信的原点且未被篡改的过程。

(2)对称加密算法:DES、AES、IDEA 非对称加密算法:RSA、PGP、DSA、椭圆曲线DSA

在信息安全领域,密码技术是解决信息系统安全问题的主要手段,包括加密技术、解密技术、密钥、认证等。按照密钥或者加密算法的不同,密码分为两大类:对称密钥或对称加密算法以及非对称密钥或非对称加密算法。

对称密钥(或称单密钥)或对称加密算法:编码和解码时使用同一密钥,主要用于通信和存储数据的加密。消息的发送者和接收者事先需要通过某种方法约定密钥,不让别人知道。对称密钥的优点是加密和解密速度快,容易实现;缺点是随着网络规模的扩大,密钥的管理困难,无法解决消息确认问题,缺乏自动检测密钥泄漏的能力。

非对称密钥(或称双钥)或非对称加密算法:加密和解密的密钥不同,公开密钥的加密算法,把密钥分为私钥和公钥,两者成对使用,加密用公钥,解密用私钥。

非对称密钥管理简单,还具有数字签名功能,但算法比较复杂,加/解密速度慢。DES算法是对称加密算法。1997年1月,美国政府采纳IBM公司设计的密码算法,作为正式的数据加密标准(Data Encryption Standard, DES),简称DES。

RSA是非对称加密算法。由Rivest、Shamir、Adleman于1977年提出的,RSA是第一个使用公开密钥的加密算法,也是第一个既能用于数据加密,也能用于数字签名的算法。RSA现在广泛用于电子商务。

AES是先进加密标准(Advanced Encryption Standard, AES)的简称,1997年NIST公开征集新的数据加密标准,以取代DES,2002年5月26日正式生效,到了2006年,AES成为应用广泛的对称加密算法。

IDEA是国际数据加密算法(International Data Encryption Algorithm, IDEA)的简称,是由我国科学家来学嘉和其同事James Massey设计的,于1991年发表,目的是取代DES。

PGP(Pretty Good Privacy)密码算法用于签名、电子邮件加密和解密,是MIT的Philip Zimmermann于1991年提出的。PGP使用公开密钥加密,包括一个把公钥和用户名或电子邮箱地址捆绑起来的系统,他在第二版中使用IDEA加密算法。

DSA数字签名算法(Digital Signature Algorithm, DSA)是美国NIST在1991年8月提出的,作为数字签名标准(Digital Signature Standard, DSS)。1993年DSA被FIPS所采用。DSA属于非对称加密算法,其安全性于RSA相似。

椭圆曲线DSA(Elliptic Curve DSA, ECDSA)是DSA的变种,是Scott Vanstone于1992年提出的,椭圆曲线加密是公开密钥加密的一种方法,基于有限域的椭圆曲线的代数结构。椭圆曲线DSA于1998年被ISO接受为标准(ISO 14888-3),1999年被NIST接受为标准(ANSI X9.62),2000年被IEEE和FIPS接受为标准(IEEE 1363-2000和FIPS186-2)。

因此,对称加密算法有DES、AES、IDEA。非对称加密算法有RSA、PGP、DSA、椭圆曲线DSA。

其他考生还关注了更多>

相关题库更多>