概念题
一、
1. 普适计算
是一种人们能够在任何时间、任何地点、以任何方式进行信息的获取与处理的计算;
是强调和环境融为一体的计算;在普适计算模式下,计算机本身则从人们的视线中消失。
2. 云端计算
是指为能够通过连接云服务器扩展终端自身运算能力、存储能力或功能的软件或软硬件
专用计算系统。(通过云端计算,可以更好的连接终端用户和云服务,应对多变的应用场景
和网络环境,提供持续有效的服务,改善用户体验。)
3. 嵌入式系统
嵌入式系统的定义有两种方式:
外包法:嵌入式系统是以应用为中心,以计算机技术为基础,软件硬件可裁剪,适应应
用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
内涵法:嵌入式系统是以提高对象体系智能性、控制力和人机交互能力为目的,通过相
互作用和内在指标评价的,嵌入到对象体系中的专用计算机系统。
4.嵌入式操作系统
从用途上说,嵌入式操作系统是针对行业或一类应用定制的,具备封装、裁剪、融合特
征的专用操作系统,应用在具有嵌入式系统的设备上。
从结构上讲,嵌入式操作系统是介于下层硬件、引导层和上层系统软件、应用软件之间
的系统软件,管理硬件资源,并同时为上层应用提供可靠、高效的接口。
5.嵌入式微处理器
嵌入式微处理器是指具备强的中断、IO、内存和能耗管理能力,具有定制多类体系架构
的特征,适当计算处理性能的微处理器。
6.嵌入式产品
嵌入式产品包含了嵌入式系统,但不是嵌入式系统,而是具体的设备或者运行着的操作
系统。比如:手机、PDA、智能家电等。(如果把嵌入式产品比作混凝土,那嵌入式系统是
里面的“钢筋”。)
7.数学模型与控制数学模型
数学模型是指人们为一定的目的,在一定的假设条件下,利用字母、数字、图表、图像、
框图、结构图、数理逻辑等来描述系统特征及其内部联系与外界联系的模型。
控制数学模型:包括指令机构、控制器、外部对象、执行装置和传感检测等部分。指令
机构发出的指令信号与检测装置检测的被控量之差,经过控制器的处理、校正来满足一定的
控制品质。由驱动执行机构,使被控对象的被控量跟随指令信号变化。
8.JAVA 虚拟机
虚拟机是类似于计算机的一个软件程序。它会像真正硬件处理器那样取出并执行程序指
令,但两者的区别在于,虚拟机的指令执行过程发生在软件级而不是硬件级,即指令是由软
件而不是硬件执行的。Java 虚拟机可以定义为:执行经过编译的 Java 目标代码的计算机实
现。
9.最小系统
使一个含有微处理器的系统具有 I/O、中断处理、基本计算能力等制造功能与用户功能,
所需的最少的硬件及软件环境。(一般可认为,引导层和硬件层为一个最小的系统,或认为
引导层、硬件层和操作系统内核为一个最小系统。)
10.进程与线程
进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。
线程是进程中的一个相对独立的实体,是被系统独立调度和分派的基本单位。
11.SDK
Soft Develop Kit,即软件开发工具包 。一般是一些被软件工程师用于为特定的软件包、
软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。
12.实时系统
实时系统是指计算结果的正确性不仅依赖于计算结果的逻辑正确性,还依赖于计算
结果产生时间的计算机系统。(应用于嵌入式系统中,有能力在响应时间的边界内,提
供满足要求的服务的 OS)。
13.系统可靠性
系统可靠性是指系统在规定条件下和规定时间内,完成规定功能的能力。
14.软件封装
封装是一种对相关的软件、硬件等模块打包的技术,通过打包实现易于管理、使用、技
术保密、提高功能、性能、降低成本、提高复用性、降低功耗的目的。
为了便于管理和节省空间把开发包、类库、相关的应用打包在一起。
15.软件生态
百度百科:软件生态系统指的是:能够创造战略优势、迅速适应不断变化的业务需求并
具备高度可靠性与伸缩性的应用程序。
由此推测:软件生态是应用程序能够创造战略优势、迅速适应不断变化的业务需求具备
高度可靠性与伸缩性的状态。(猜的)
16.系统缺陷
直接或间接引起系统错误的原因。(缺陷的定义)
17.云端系统
答:运行于云端的操作系统,例如现在流行的各类手机操作系统 (云终端:是基于云
计算商业模式应用的终端设备和终端平台服务的总称。云操作系统:它是指构架于服务器、
存储、网络等基础硬件资源和单机操作系统、中间件、数据库等基础软件管理海量的基础硬
件、软资源之上的云平台综合管理系统。)
简答题
二、
1. 简述嵌入式系统的主要应用领域?
嵌入式系统有五大应用领域:国防电子、汽车电子、医疗电子、机床电子、消费电子。
比如在无线传感网络、火炮控制、精确制导、电子侦察以及电视机、冰箱、微波炉等领域和
产品中都大量的使用嵌入式系统。(嵌入式系统的主要应用领域包括工业、军事、通信、运
输、金融、医疗、气象、农业等。)
2. 简述云端计算的特征?
1)基于虚拟化技术快速部署资源或获得服务;2)实现动态的、可伸缩的扩展;3)按
需求提供资源、按使用量付费;4)通过互联网提供、面向海量信息处理;5)用户可以方便
地参与;6)形态灵活,聚散自如;7)减少用户终端的处理负担;8)降低了用户对于 IT 专
业知识的依赖。
3. 嵌入式系统是纯粹的计算机系统吗?为什么?
嵌入式系统和计算机系统虽然有联系,但是它并不是纯粹的计算机系统。它们的体系结
构、功能特点、知识技术体系要求并没有多少相同之处。从体系结构上说,嵌入式系统体系
结构是控制型的体系结构,不是计算机系统的处理型体系结构。从功能上来说, 嵌入式系
统具有嵌入性、控制性,软硬件可根据对象需要来设置,计算机系统则不是这样。 而且嵌
入式系统功能专一,计算机系统则是多功能处理。嵌入式系统知识体系具有广泛性,不仅仅
以计算机技术为基础,它与微电子学科技术、电子学科技术与对象学科技术都密切相关。再
者,嵌入式系统和计算机系统的发展方向不同。
4. 简述嵌入式系统特征?
嵌入式系统具有跨学科性,它融合了微电子、通信、软件工程等多种技术;
它的非功能性需求要求更高,比如强实时性、稳定性、并发性、移动性等要求;
它的资源受约束,比如有限的 CPU、内存、显示窗口等;
它面向应用,无论是软硬件的设计,还是系统的规模、开发过程都与应用领域密切相关。
5. 怎样理解嵌入式系统“长” “含” “嵌”的三种层次?
嵌入式系统是将计算机系统嵌入到对象体系中,实现对于对象体系的智能化控制。而
“长”、“含”、“嵌”则是嵌入式系统的三个不同的层次,也是其三个发展阶段。“长”是指
对象体系基本上就是由专用计算机系统组成,例如单片机等,这是初级的阶段;“嵌”则是
对象远大于专用计算机系统,是嵌入式系统的最高层。而“含”则是介于“长”与“嵌”之
间的层次,嵌入式系统所占比例也介于“长”与“含”之间,是一个较高的阶段,比如消费
类数码。
6. 如何理解五层结构? 怎样理解控制数学模型?
嵌入式系统的这五层结构从底层到顶层为:硬件层、引导层、内核层、UI 层、应用层。
硬件层是系统的基础,是整体的物理支撑,一切功能与软件都建立在该硬件层基础之上。引
导层类似于 BIOS,是硬件与操作系统之间的过度。内核层即相当于操作系统层。UI 层是使
用者界面层,是使用者与操作系统之间的接口。应用层是面向用户的,普通消费者即可在这
层进行工作。
控制数学模型:包括指令机构、控制器、外部对象、执行装置和传感检测等部分。指令
机构发出的指令信号与检测装置检测的被控量之差,经过控制器的处理、校正来满足一定的
控制品质。由驱动执行机构,使被控对象的被控量跟随指令信号变化。
7. 结合 VxWork 的成长路线图,如何理解嵌入式系统发展历史简介?
最早期的嵌入式系统没有操作系统,仅仅是将算法嵌入,通过 A/D 和 D/A 转换与外界
通信;操作系统引入嵌入式开发后,系统拥有较大的灵活性,但此时嵌入式操作系统仅是内
核,功能较少,移植性较差;后来嵌入式操作系统逐渐发展,可对一些关键设备进行实时监
控;随着技术的提高,对设备的智能化有了更高的要求,实时性仅是对嵌入式系统最基本的
要求,网络化才标志着设备智能度的提高;另外,为了降低成本,占有市场,各个操作系统
厂商都努力提供一种通用的系统。
8. 从 WinCE 的 Roadmap 图上,能够发现哪些嵌入式操作系统的发展规律?
版本不断升级,功能越来越强;
数据化和网络化:兼容性提高,信息和数据的共享和远程控制、强大的网络能力、重视
在系统运行过程中对于数据的搜集、管理和处理;
人性化:人机交互界面良好,操作简单;
多元化:具有良好的开放性、可裁剪性,出现多个版本;
功能复杂化:功能越来越强,系统越来越厚;在提供了复杂功能的基础上加强了稳定性
设计。
9. 怎样理解嵌入式系统的危机?
复杂度提高导致可靠性下降;
系统功能的复杂化与人机界面简单化的矛盾;
网络化导致安全性下降;
产品寿命与能耗的局限下降导致设计风险加大;
市场竞争加剧导致性价比过高。
10. 嵌入式系统物理结构和逻辑架构有什么区别?系统功能与性能的区别?
嵌入式系统的物理结构指的是看得到摸得着的物理上的一种结构,是各种元器件、连线、
接口、程序、数据等实体性的元素按其联系的组合。物理结构是物质的,是整个系统的基础,
是逻辑抽象的依据。
而逻辑架构则是非实体性的,更类似于意识层面上的结构,是人们抽象出来的,用于描
述和抽象物理结构和实体运行过程的一种描述。逻辑结构一般用图形的描述方式体现系统运
行的逻辑关系或者是系统组成间的逻辑关系的模型。
系统功能是指系统具有的完成任务的能力,是一种行为状态,是反映系统与外部环境的
关系,表达出系统的性质和行为。
性能则是对系统的一种或一类功能的量化指标,是表明系统功能好坏强弱的参数。
11. 微处理器指令系统的基本要求是什么?
1. 完备性。完备性是指用汇编语言编写各种程序时,指令系统直接提供的指令足够使
用。
2. 有效性。有效性是指利用该指令系统所编写的程序能够高效率地运行。
3. 规整性。规整性包括指令系统的对称性、指令格式和数据格式的一致性。
4. 兼容性。兼容性要求要能做到“向上兼容”,即在低档机上运行的软件可以在同系列
高档机上运行。
12. ARM 系列嵌入式处理器的特点是什么?
(RISC 的特点:指令条数和寻址方式少;单一机器周期操作;存取操作限制;简单固定
的指令结构;指令流水线;高速度、高可靠性、低成本。ARM 微处理器除具有 RISC 的特点
外还具有:
1.在每条数据处理指令当中,都控制算术逻辑单元(ALU)和移位器,以使 ALU 和移位
器获得最大的利用率;
2.自动递增递减的寻址模式,以优化程序中的循环;
3.同时 Load 和 Store 多条指令,以增加数据吞吐量;
4.所有指令都条件执行,以增大执行吞吐量。)
1、体积小、低功耗、低成本、高性能;
2、支持 Thumb(16 位)/ARM(32 位)双指令集,能很好的兼容 8 位/16 位器件;
3、大量使用寄存器,指令执行速度更快;
4、大多数数据操作都在寄存器中完成;
5、寻址方式灵活简单,执行效率高;
6、指令长度固定;流水线处理方式。
13. 简述 ARM 的七种运行模式和 ARM 和 Thumb 状态?
1.用户模式(usr):ARM 处理器正常的程序执行状态;
2.快速中断模式(fiq):用于高速数据传输或通道管理;
3.外部中断模式(irq):用于通用的中断处理;
4.管理模式(svc):操作系统使用的保护模式;
5.数据访问终止模式(abt):当数据或指令预取终止时进入该模式,用于虚拟存储及存
储保护;
6.系统模式(sys):运行具有特权的操作系统任务;
7.未定义指令中止模式(und):当未定义指令执行时进入该模式,可用于支持硬件协处
理器的软件仿真。
可以通过软件来进行模式切换,或者发生各类中断、异常时 CPU 自动进入相应的模式。
除用户模式外,其余 6 种工作模式都属于特权模式。 特权模式中除了系统模式以外的其余
5 种模式称为异常模式。 大多数程序运行于用户模式。 进入特权模式是为了处理中断、异
常、或者访问被保护的系统资源。
ARM 体系结构在 V4T 及其以上版本定义了称为 Thumb 指令集的 16 位指令集。Thumb
指令集的功能是 32 位 ARM 指令集的功能子集。Thumb 指令集在性能和代码大小之间提供
了出色的折中。
正在执行 Thumb 指令集的处理器是工作在 Thumb 状态下的。同样,正在执行 ARM 指
令集的处理器是工作在 ARM 状态下。ARM 状态下的处理器不能执行 Thumb 指令,在 Thumb
状态下的处理器也不能执行 ARM 指令。必须确保处理器不接受对当前状态来说为错误指令
集的指令。每个指令集都包括切换处理器状态的指令。ARM 处理器总是在 ARM 状态下开始
执行代码。
THUMB 指令是 ARM 指令的子集,可以相互调用,只要遵循一定的调用规则。Thumb
指令与 ARM 指令的时间效率和空间效率关系为:
存储空间约为 ARM 代码的 60%~70%
完成同样的操作,指令数比 ARM 代码多约 30%~40%
存储器为 32 位时 ARM 代码比 Thumb 代码快约 40%
存储器为 16 位时 Thumb 比 ARM 代码快约 40~50%
使用 Thumb 代码,存储器的功耗会降低约 30%
14. 简述 ARM V1-V7 版本特征?
ARM 版本Ⅰ: V1 版架构
该版架构只在原型机 ARM1 出现过,只有 26 位的寻址空间,没有用于商业产品。
ARM 版本Ⅱ: V2 版架构
该版架构对 V1 版进行了扩展,例如 ARM2 和 ARM3(V2a)架构。包含了对 32 位乘法
指令和协处理器指令的支持。 版本 2a 是版本 2 的变种,ARM3 芯片采用了版本 2a,是第一
片采用片上 Cache 的 ARM 处理器。同样为 26 位寻址空间,现在已经废弃不再使用。
ARM 版本Ⅲ : V3 版架构
V3 版架构( 目前已废弃 )对 ARM 体系结构作了较大的改动,比如:寻址空间增至
32 位(4GB);增加了程序状态保存寄存器 SPSR;增加了从异常处理返回的指令功能等。
ARM 版本Ⅳ : V4 版架构
V4 版架构在 V3 版上作了进一步扩充,。V4 不再强制要求与 26 位地址空间兼容,而且
还明确了哪些指令会引起未定义指令异常。
ARM 版本Ⅴ : V5 版架构
V5 版架构是在 V4 版基础上增加了一些新的指令。这些新增命令有:计数前导零 CLZ 指
令,BRK 中断指令,带有链接和交换的转移 BLX 指令等。
ARM 版本Ⅵ : V6 版架构
V6 版在降低耗电量地同时,还强化了图形处理性能。通过追加有效进行多媒体处理的
SIMD(Single Instruction, Multiple Data,单指令多数据 )功能,将语音及图像的处理功能提高
到了原型机的 4 倍。
ARM 版本Ⅵ : V7 版架构
V7 采用了 THUMB-2 技术和 NEON 技术,支持改良了浮点运算,支持动态编译器。
15. 指令系统 CISC 与 RISC 的优缺点?
CISC:
–优点:指令越多功能越强,强调代码效率,容易和高级语言接轨。可以对存储器直接操作,
实现从存储器到存储器的数据转移,可加入 DSP 指令。
–缺点:指令太多不易记忆;CPU 内部结构复杂造成频率不高;指令执行速度慢。
RISC:
–优点:指令少容易记忆,尽量将操作码和操作数用 1 个 16 位数或 32 位数表示,指令整齐。
CPU 时钟频率可以做得很高,指令执行速度快。
–缺点:同样功能的程序,产生的代码量比较大;不能对存储器直接访问,不能实现存储器
到存储器的数据转移。
16. 如何理解公式 P∝CV2F,进而说明嵌入式系统如何进行能耗控制?
P∝CV2F 使用的前提是在数字集成电路中,CMOS 电路静态功耗非常低,与动态功耗相
比可忽略不计,故可以写成该形式。
公式中,P 为 CMOS 芯片的动态功耗,C 为 CMOS 芯片的负载电容,V 为 CMOS 芯片的
工作电压,F 为 CMOS 芯片的工作频率。通过上式可发现,降低 CMOS 电路的工作电压比降
低时钟频率更能降低活动功耗。因为功耗与电压时指数幂的关系,而与时钟频率只是线性关
系。因此,选定满足电子系统中所有电驴模块的最低要求电压,对降低能耗至关重要。
17. 怎样看待复位和看门狗的关系?
手动复位是在有需要时直接给 CPU 一个信号,使其直接从头开始执行程序,而看门狗
是在每次开机或关机时由电容放电使 CPU 复位,使程序下次运行处于最佳状态,它实质上
是一个由 MCU 进行复位的定时器,提高了系统的抗干扰能力。一般情况下,嵌入式系统同
时应用这两种技术。
(看门狗即监控定时器,在嵌入式系统内部使用看门狗技术是一种防止尖峰脉冲干扰
的有效方法。当侵入的尖峰脉冲干扰使程序编码的一位(或数位)发生改变时,程序所呈现
的外在表现可能为“飞掉”,此时,利用看门狗技术可帮助系统自动恢复正常运行。)
18. 为什么嵌入式系统中也加入 BIOS 环节?
BIOS 在嵌入式系统中具有极其重要的作用,主要表现在一下三方面:
1. 自检及初始化。这部分工作是负责启动计算机,主要完成三件事:对硬件进行检测;
创建中断向量、设置寄存器、对一些外部设备进行初始化和检测、设置 BIOS 的参数;引导
操作系统。
2. 程序服务处理,这些工作主要是为应用程序和操作系统服务的。服务内容主要与 I/O
设备有关,例如读磁盘,文件输出到打印机等。
3. 中断处理,在开机时,BIOS 会传送所有硬件设备的中断向量号给 CPU。当用户发出
使用某个设备的指令后,CPU 就会根据中断向量号使用相应的硬件来完成工作。
19. PC BIOS 和 ISA 总线在 PC 产业的发展过程中起到了哪些作用?
PC 结构中的 BIOS 的出现产生了具有重大意义的变革,它促使了硬件与软件就得以分离,
使得 PC 软件得以独立发展,而且由于有了 BIOS,增加了 I/O 扩展槽,才有了外部总线,促
使 I/O 设备得以应用。
ISA 总线使寻址范围、数据总线宽度、中断处理能力有了很大的提高,具备了良好的兼
容性,为以后更先进总线的诞生打好了基础。
20. 怎样描述嵌入式 Linux 的启动过程? P150
移交控制权给 Linux 内核——内核自解压后,跳转到 CPU 相关的初始化汇编代码——初
始化 CPU,设定 MMU,初始化页表,进入虚存模式——跳转到 CPU 无关的 C 语言函数
start_kernel(),初始化中断向量、虚存管理、cache 等——init()函数初始化外设及驱动程序—
—用 execve()加载 init 进程,启动相关的服务程序——打开终端,提示输入用户名
21. 评述层次和微内核嵌入式操作系统的优缺点?
微内核结构:
优点:结构规范,易于裁剪、编程和调试;扩展和移植性强;降低内存固定使用量;实
时性强。
缺点:整体效率低;资源管理复杂。
层次内核体系结构:
优点:各模块之间的组织结构和依赖关系清晰明确,适合进行系统功能的划分;分层思
想有利于组织操作系统的开发、调试和诊断,也使得系统的修改和扩展相对容易。
缺点:对某一层功能的修改往往影响到相关层次,使得指定和裁剪系统功能相对困难;
底层代码和硬件直接相关,功能越强,关系越紧;与微内核结构相比比较庞大,移植较复杂。
22. 嵌入式实时系统分类?
按照系统错过时限的严重性,可将系统分为硬实时系统和软实时系统。
硬实时系统指必须能及时对外部事件作出反应,绝对不能允许任务错过时限。硬实时
系统一旦错过时限就意味着巨大的损失和灾难。
软实时系统是指在系统负荷较重时,任务错过时限会引起系统性能下降,但是不会造
成严重的后果。
23. 改造非实时操作系统为实时操作系统,将从哪几个方面下手?
1. 增加实时控制模块,进行任务转换和执行用户定义的程序。
2. 多任务管理:允许对用于多种外部事件的多线程执行。
3. 进程调度和抢占调度:使用适用于实时应用的按优先级抢占 CPU 的调度方法,允许
就绪的低优先级任务抢占高优先级的任务执行。
24. 按照本课程的分类 WinCE、Vxwork、ucos、Linux 和 QNX 从结构分类和对象分类
分别从属于哪些类?
嵌入式系统从结构分类上分类有:整体式、层次式和插件式。
VxWorks, uCOS 和 QNX 属于插件式,WinCE 和 Linux 属于整体式。
嵌入式系统按对象分类有:可崩溃/不可崩溃系统,实时/非实时系统,可交换/不可交
换系统,可信/非可信系统。
WinCE 是可崩溃可交换的非实时操作系统(为整体内核结构),VxWorks 是不可崩溃可
交换可信的实时操作系统(属于微内核结构),uCOS 是不可崩溃可交换的实时操作系统(属
于微内核结构),Linux 是可崩溃可交换的非实时操作系统(采用具有微内核思想的整体内核
结构),QNX 是可崩溃可交换的非实时操作系统(微内核结构)。
25. 怎样评测嵌入式操作系统的实时性?
实时性能指标包括任务切换时间、中断延迟时间和系统响应时间。
任务切换时间:该指标主要受微处理器控制,在进行任务切换时,保存和恢复 CPU 所
花费的时间与 CPU 的寄存器个数有关。
中断延迟时间:由最大中断屏蔽时间,得到只想 ISR(中断服务例程)向量的时间、存
储所有寄存器的时间和执行中断处理的时间。
系统响应时间:该时间是系统在发出处理要求到系统给出应答信号的时间,从整体上
评价操作系统。
实时性测量方法:Rhealston 方法、进程调度间隙时间法、三维表示法、Real/Stong
Benchmark 方法。
方法说明:
Rhealstone 方法(六元素测量法):对 EOS 的六个关键操作的时间量进行评测,即任务
切换时间,抢占时间,中断延迟时间,信号量混洗时间,死锁解除时间、数据包吞吐率。
进程调度间隙时间法:从中断产生到由中断激活的实时任务开始执行之间的时间间隔。
三维表示法:测试 EOS 的计算能力、中断处理能力、I/O 吞吐率。然后可用一个三维图
形来表达三个特性之间的依赖关系。
Real/Stong Benchmark 方法:为一个纯软件的基准程序,属于合成工作负载,包含了系
统响应能力、系统抢占能力和系统 I/O 吞吐能力三个测试。
26. 程序与数据共同的评价是什么?
嵌入式系统中所关注的信息主要有两类:程序和数据。信息评价分为开放性和兼容性。
信息的开放性主要是针对程序而言的。具体定义就是要求系统可以通过第三方机构定
制、增加和扩展功能。包括开放 API,开放源代码,开放标准。
信息的兼容性:
从程序的角度来说,兼容性指的是程序可以不经修改或很少量的修改就可以移植到其它
平台上去;
从数据的角度来说,兼容性是指数据可以直接被多种异构的应用系统读取、识别、处理。
可从两个角度分析程序和数据的兼容性:一是时间上,存在向上兼容和向下兼容;类别