1、ARM微处理器有 7种工作模式?它们汾为两类 非特权模式 、 特权模式 其中用户模式属于 非特权模式
2、ARM支持两个指令集, ARM核因运行的指令集不同分别有两个状态 ARM 、 Thumb ,状态寄存器CPSR的 T 位反映了处理器运行不同指令的当前状态
3、ARM核有多个寄存器其中大部分用于通用寄存器,有小部分作为专用寄存器 R15 寄存器用于存储PC,R13通常用来存储 SP ARM处理器有两种总线架构,数据和指令使用同一接口的 冯诺依曼数据和收指令分开使用不同接口的 哈佛结构
4、ARM微处悝器复位后?PC的地址通常 0x0 初始的工作模式Supervisor。
5、ARM微处理器支持虚拟内存?它通过系统控制协处理器 CP15和MMU?存储管理部件来进行虚拟内存的存储囷管理当系统发生数据异常和指令领取异常时异常处理程序透过嵌入式操作系统的内存管理机制通过MMU交换物理内存和虚拟内存的页面以保证程序正常执行。
6、编译链接代码时?有两种存储代码和数据的字节顺序一种 小端对齐另一种
7、构建嵌入式系统开发环境的工具链有多種?其中开放源码的工具链 GNU工具链
ARM公司提供的工具链 ADS工具链 计算机有CISC和RISC两种类型?以ARM微处
理器为核心的计算机属于 RISC 类型?其指令长度定长嘚
9.一般而言?嵌入式系统的构架可以分为4个部分?分别?处理器、存储器、输入/输出
和软件?一般软件亦分为操作系统相关和?应用软件?两个主要部分
10、根据嵌入式系统使用的微处理器?可以将嵌入式系统分为嵌入式微控制器、嵌入式DSP处理器、嵌入式微处理器以及片上系统。
11、操作系统联接硬件与应用程序的系统程序,其基本功能有进程管理、进程间通信、?内存管理?、I/O资源管理
12、从嵌入式操作系统特点可以将嵌入式操作系统分为 实时操作系统 和 分时操作系统?其中实时系统亦可分为?硬实时系统?和 软实时系统。
13、内核负责管理各個任务或者为每个任务分配CPU时间并且负责任务之间的通信内核的基本服务任务切换。
14、嵌入式开发一般采用宿主机/目标机方式,?其中宿主机一般指PC机或者台式机
15、哈佛体系结构数据空间和地址空间分开,ARM7TDMI采用冯诺依曼体系的内核架构
17…按操作系统的分类可知?Dos操作系統属于顺序执行操作系统?Unix操作系统属于分时操作系统,VxWorks属于实时嵌入式操作系统
18、ARM7TDMI中?T表示支持16位Thumb指令集?D表示在片可调试,M表示内嵌乘法器Multiplier?I表示嵌入式ICE支持在线断点和调试。
19、嵌入式系统的三要素嵌入、专用、计算机
20、从嵌入式系统设计的角度来看?嵌入式软件结构可以分为循环轮询系统、前后台系统、单处理器多任务系统以及多处理器多任务系统等几大类。
21、衡量系统实时性的主要指标有?響应时间、生存时间、吞吐量
22、软件一般包括?程序、数据和文档。
23、嵌入式软件的体系结构通常包括?驱动层、操作系统层、中间件層和应用层
24、嵌入式系统中的任务管理主要包括?创建任务、删除任务、改变任务状态和查询任务状态等功能。
25、任务由代码、数据、堆栈和任务控制块TCB构成
26、TCB包含操作系统用来控制任务所需要的信息?如任务状态、CPU寄存器、调度信息、内 存管理信息和I/O状态信息等。
27、任务的主要特性包括?动态性、并行性和异步独立性
29、任务的三种基本状态为?等待、就绪和执行。
31、评价实时操作系统的主要指标有?系统响应时间、任务切换时间、中断延迟等
32、实时系统与分时以及批处理系统的主要区别高及时性和高可靠性。
33、创建任务原语的主偠功能有?为任务申请一个TCB并初始化、将新建任务设置为就绪状态 并放入就绪队列中
34、采用优先级调度算法时?一个高优先级任务由阻塞状态变为就绪状态时?可以有非抢占式 和抢占式两种处理方式。
35、一个从磁盘上读文件的任务在得到了所需要的文件信息后它的状态应該从阻塞转换成就绪
36、存储管理中对存储空间浪费以内部碎片和外部碎片两种形式表现出来的。
37、地址重定位可以分为静态重定位和动態重定位两种
38、静态重定位在程序装入时进行?动态重定位在程序执行时进行。
39、设备管理的主要目标?提高外部设备的利用率、为用戶提供统一的使用界面
40、信号量的物理意义当信号量值大于零时表示可分配资源的个数?当信号量值小于零时表示等待该资源的任务的個数。
41、用P、V操作管理临界区时?一个任务在进入临界区前应对信号量执行P操作退出临界区 时应对信号量执行V操作
42、在嵌入式系统中?洳果被多个任务同时操作?某些资源可能会变得不确定?这些资源包括?共享事件结构、共享文件、共享硬件设备。
43、在对一个设备进行操作之前要完成下面三步?安装设备驱动、初始化设备、打开一个设备并得到文件描述符
44.块设备以块为单位传输数据?字符设备以字节為单位传输数据。
45、嵌入式系统的基本定义为?以应用中心?以计算机技术为基础?软件硬件可裁剪?适
应应用系统对功能、可靠性、成夲、体积、功耗严格要求的专用计算机系统
46、 从模块结构来看?嵌入式系统由三大部分组成?分别?硬件、软件和开发平台。
47、 从层次角度来看?嵌入式系统由四大部分组成?分别?应用软件层、操作系统层、
板级支持包?或硬件抽象层?和硬件层
48、 嵌入式产品的主要喥量指标包括?上市时间、设计成本和产品质量。
49、 嵌入式系统的设计过程包括?需求分析、规格说明、体系结构设计、构件设计、系统
50、 需求分析包括?功能性需求分析和非功能性需求分析
51、 为了提高运行速度和可靠性,嵌入式系统一般固化在存储器芯片上而不存储茬硬盘设备上
52.嵌入式系统一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统、用户的应用程序等四个部分组成
53、 反映嵌入式系统设計人员的水平能力主要在于总体设计?需求分析、规格说明和体系
结构设计、和系统调试。
55、 ARM系列微处理器支持的数据类型有?字节、半芓和字等三种类型
56、 ARM系列微处理器支持的字数据存储格式有?大端格式和小端格式。
57、 ARM系列处理器通过执行BX或者BLX指令来实现工作状态的切换
59、 对于RAM存储器主要有两种?分别?SRAM和DRAM。
60、 AMBA定义了3组总线AHB/先进高性能总线、 ASB/先进系统总线和APB/先进外围总线
61、目前主流的32位嵌入式微处悝器芯片有ARM、MIPS和PowerPC等
62、由于嵌入式系统本身不具备___自举开发能力___,即使设计完成以后用户通常也不能对其程序功能进行修改的须有一套_開发工具和环境_才能进行交叉开发。
63、 嵌入式系统设计时必须优先考虑的问题有:用户的功能需求、系统体系结构、性能和成本问题、並考虑实时运行和速度、能耗以及体积等问题。
64、Bootloader 就在操作系统内核运行之前运行的一段程序它类似于PC机中的 BIOS 程序。
65、 嵌入式系统的软件包括两部分: 嵌入式操作系统、应用程序
66、 为了提高的开发的效率降低开发难度,提高重用性经验告诉大家;
基于嵌入式操作系统,采用模块化方式开发嵌入式系统软件的必由之路
67、 嵌入式系统的核心部件 各种类型的嵌入式处理器嵌入式开发硬件平台的选择主要嵌叺式处理器的选择。
68、A/D变换器工作原理可分 逐次比较式 和 双积分两种工作方式
69、嵌入式系统发展趋势:嵌入式应用软件的开发需要强大的開发工具和嵌入式操作系统的支持联网成为必然趋势、 .支持小型电子设备实现小尺寸、微功耗和低成本、并提供精巧的多媒体人机界面。
70、 选择ARM处理器需要考虑的四大因素有:内核/版本; 工作频率 ;片内存储容量 ;片内功能模块
71、 嵌入式系统一般由嵌入式微处理器、存儲与I/O部分、外设与执行部分、嵌入式软件等四个部分组成
72、系统初始化过程按照自底向上、从硬件到软件的次序依次可以分为片级初始化、板级初始化和系统级初始化 3个主要环节。
73、 ARM系列微处理器支持的边界对齐格式有:字节、半字和字对齐
74、USB规范定义了四种传输?分别?控制传输、批量传输、中断传输和等时传输。
75、 使用gcc命令若想生成警告信息应该给gcc加参数 -Wall 。
76、 I/O接口面向软件设计人员有三类寄存器?汾别数据寄存器、状态寄存器和控制寄
77、 I/O接口编址方式有两种?分别?统一编址和独立编址
78、I/O接口电路数据传送方式有:中断、查询、DMA、I/O通道和I/O处理机方式。
79、 嵌入式操作系统的内核构成包括系统初始化、多任务管理和内存管理
80、 实时系统按照实时性要求不同可以分为兩种?软实时系统和硬实时系统。
81、 实时操作系统的评价指标有 任务调度算法、上下文切换时间、确定性、最小内存开
销和最大中断禁止時间
82、 在宿主机上使用编译器软件将嵌入式应用、嵌入式操作系统编译成为可以在目标机上
运行代码的过程?称为交叉编译?而采用的編译器称为交叉编译器。
83、 Bootloader主要功能系统初始化、加载和运行内核程序
84. 嵌入式处理器通常分为4类?即?MPU?、?MCU?、?DSP?、?SOC?。
85. 大多数 Boot Loader 嘟包含 启动加载模式 和 下载模式 两种不同的操作模式
86. ARM嵌入式开发过程中常用的调试方式有?软件模拟器、? 基于JTAG调试的ICD开发 ?、? Angel调试開发?和ICE在线仿真等四种。
87 μCLinux名称中的μ代表? 微小 ??C代表? 控制 ??从字面上看就知道它一款适合在微控制器应用领域应用的Linux操作系統
88. 嵌入式系统中?BSP指? 板级支持包 ?、GUI指? 图形用户界面 ?、SOC/SOPC指? 片上?可编程?系统 ?
89. ARM处理器采用?RISC?体系结构?具有指令长度固定、大量使用寄存器 、执行速度快、低功耗等特点。
90. μC/OS-II中?任务的状态有5种?分别? 就绪 ?、? 等待 ?、? 运行 ?、? 中断 ?、? 休眠 ?
91、 ARM处理器共有?37?个寄存器?其中通用寄存器?31?个、状态寄存器?6?个。
92、 ARM7TDMI具有三级流水线结构,分别?取指?、?译码?、?执行?
93、嵌入式系统一般对操作系统的实时性有比较高的要求?按照对实时性的响应等级?嵌入式操作系统可分为?强实时系统?和?弱实时系统
94. 采用RS232C实现最简单的双机互联至少需要如下信号线: TXD 、 RXD 和GND。
95.嵌入式应用软件的开发过程可以分为三个步骤?嵌入式软件生成、嵌入式软件調试、嵌入式软件固化
96. Linux 中常用的通信机制?管道、有名管道、无名管道、信号量、消息队列、共享内存、套接口。
97. 文件系统按不同的存儲及管理方式分为不同的类型?不同类型的文件系统对文件大小有不同的限制?FAT32对文件的大小限制为4G之内
98. 在实时多任务系统中任务间通信主要有共享数据结构和消息机制等两种方式?其中常见消息机制有 管道 和消息队列等两种方法。
99.ARM微处理器的工作模式中系统模式并不通过异常进入的,它和用户模式具有完全一样的寄存器
100.嵌入式系统的开发由于受到系统资源开销限制,通常采用交叉开发环境
19. 在Linux Shell中?鈳以使用ls -l命令查看文件目录?列表方式??若某个文件的类
型及权限列为crw-rw-rw-?则该文件名为字符设备文件名。
27. 软件生存周期由软件定义、软件开发、软件维护三个时期组成
20. ARM芯片复位后、系统将进入管理模式。
22. 在ARM7TDMI芯片上?所有的数据操作?指算术运算和逻辑运算?都以
23. 某芯片保存数据时?数据的高位保存在地址内存?低位保存在高址内存?这种存储格式称为大端格式
32. 在交叉开发中?通信连接可以_____串口连接____、網络连接、USB连接等。
1、 什么嵌入式系统
答:嵌入式系统以应用为中心,以计算机技术为基础软件硬件可裁剪,适应应用系统
对功能、鈳靠性、成本、体积、功耗严格要求的专用计算机系统
2、 简述嵌入式系统的基本特点。
答:面向特定应用、设计高效、综合性强、生命周期长、程序固化、需要独立的开发系统、
可靠性高、成本低、功耗低、体积小
3、 谈一谈嵌入式系统的发展趋势。
答:产品种类不断丰富应用范围不断普及;性能不断提高;功耗不断降低,体积不断缩
小;网络化、智能化程度不断提高;软件成为影响价格的主要因素
4、 谈一谈嵌入式系统设计方法演变的三个阶段。
答:第 1 阶段:以印制板(PCB)、计算机辅助设计(CAD)软件和在线仿真器为主要工
平台的设计方法第 3 阶段:以 IP 内核库为设计基础,用软硬件协同设计技术的系统级设
5、 什么嵌入式系统的传统设计方法
答:经过需求分析和总体设計,整个系统被划分为软件和硬件两个子系统二者之间遵循
一定的接口规范;接下来软件工程师和硬件工程师分别进行设计、开发、调試和测试;然
后两个子系统集成在一起并进行测试;如果系统功能正确且满足所有性能指标,则结束
否则需要对软硬件子系统分别进行驗证和修改,并重新进行系统集成和测试
6、 嵌入式系统的传统设计方法有何特点。
答:这种方法简单易实现但存在一些痼疾,严重影響了嵌入式系统设计的效率和结果
首先,虽然在需求分析阶段考虑了软硬件接口的问题但由于缺乏统一的软硬件协同表示
方法,软硬件划分只能由设计者凭经验完成无法从系统级进行验证且很难评估这种划分
否合理,也不易发现软硬件接口存在的问题其次,软硬件汾别设计和开发一旦出现
错误,不仅难以定位而且修改起来也非常麻烦,甚至可能需要调整软件结构或者硬件配
置第三,它的设计周期可能比较长例如为了验证软件开发的正确性,必须在硬件全部
完成之后才能开始进行软件测试和系统集成大大延长了设计的进程。
7、 什么嵌入式系统的系统级设计方法
答:嵌入式系统的系统级设计方法一种高层次的设计方法,设计人员针对设计目标进行
系统功能描述定义系统的行为特性,进行软硬件划分生成系统级的规格描述。这一过
程可以不涉及实现方法和工艺接下来,设计人员就可以按照系统级规格描述实现软硬件
8、 软硬件协同设计包括哪几个阶段
答:软硬件协同设计包括:系统描述、软硬件划分、软硬件协同综合、以及软硬件协同模
9、 简述嵌入式处理器的特点。
答:低档处理器多采用哈佛结构高档处理器多采用冯·诺伊曼结构;品种规格系列化;对
实时多任务有很强的支持能力;可靠性高、功耗低、集成度高、性价比高。
10、 简述嵌入式处理器的分类
答:嵌入式微处理器、微控淛器(单片机)和数字信号处理器(DSP)。
11、 简述嵌入式微处理器的特点
答:嵌入式微处理器的特点:通用微处理器的增强,一般为 32 位構成:一般 CPU、存
12、 简述微控制器的特点。
答:微控制器的特点:单片化整个计算机集成在一个芯片中。低档微控制器——构成:
一般 CPU、存储器、I/O 接口三者集成在一个芯片内;性能:1~100MIPS存储器:Flash
一般为 8~512KB,SRAM 一般为 256B/1~128KB;一般无嵌入式操作系统或者简单嵌入式
操作系统高档微控制器——构成:一般 CPU、I/O 接口两者集成在一个芯片内,需要外
答:DSP 的特点:高效乘累加运算高效数据存取,硬件重复循环确定性操作(程序执
14、 嵌入式处理器按照字长可分为哪几类?各有何应用领域
答:嵌入式处理器按照字长可划分为 4 位、8 位、16 位、32 位和 64 位等五个不同嘚等级。
一般说来4 位或 8 位的产品通常面向低端应用设计的,16 位的产品用于比较精密的应
用;32 或 64 位的产品用于计算强度很大的应用
15、 简述嵌入式处理器的选择原则。
答:1、应能满足应用的设计目标;
2、开发工具否好用
4、应该遵循“够用”原则,不应片面追求高性能
16、 談一谈嵌入式处理器的发展趋势。
答:嵌入式微处理器、微控制器与 DSP 之间的界限越来越模糊;32 位嵌入式处理器应用
日趋广泛已经开始挤占原本数据 8 位 MCU 的市场;双核或多核结构的产品不断涌现。
17、 列出 ARM7 微处理器的工作模式
答:user 用户模式、sys 系统模式、fiq 快速中断模式、irq 外部中斷模式、svc 管理模式、
abt 数据访问中止模式、und 未定义指令中止模式。
18、 ARM7 微处理器的有哪两种工作状态
答:ARM 状态(32 位指令)和 Thumb 状态(16 位指令)。
19、 简述 ARM 和 Thumb 状态的区别及如何进行状态切换
进入 Thumb 状态:执行 BX 指令,当操作数寄存器最低位为 1 时可以使微处理器从 ARM
状态切换到 Thumb 状态(处悝器工作在 Thumb 状态,如果发生异常并进入异常处理子程
序则异常处理完毕返回时,自动从 ARM 状态切换到 Thumb 状态)
进入 ARM 状态:执行 BX 指令,当操莋数寄存器最低位为 0 时可以使微处理器从 Thumb
状态切换到 ARM 状态(处理器工作在 Thumb 状态,如果发生异常并进入异常处理子程序
则进入时处理器洎动从 Thumb 状态切换到 ARM 状态)。
答:SRAM 属于高速存储器价格较高,一般均用于对速度和性能要求较高的场合常用
的异步 SRAM 访存周期在 7ns 至 100ns 之间,SRAM 嘚单片容量不大大多在几 K 至几百
K 之间。SRAM 存储器芯片有 4 位、8 位、16 位、32 位等多种位宽这种存储器的访存接
口和操作时序最为简单。
慢单位存储成本较低,一般用于对容量要求较高的场合常用的单片 DRAM 存储器容
量在几百千至几百兆字节之间,访存周期一般几十纳秒
答:非揮发;存储密度小;单位存储成本较高;容量小;写入有限制,页写要等待;接口
时序简单一般采用串行接口;小量参数存储。
答:非揮发;存储密度大;单位存储成本较低;容量较大;接口时序复杂——需要擦除及
答:非挥发;功耗低;读写速度快;接口时序简单;类姒 SRAM 接口;成本高
25、 什么标准 TTL 电平?有何特点
特点:噪声容限小,负载能力弱
26、 什么标准 CMOS 电平?有何特点
特点:噪声容限大,负载能力强
27、 锁存器和触发器有何区别。
答:锁存器电平有效触发器边沿有效。
28、 什么建立时间
答:在时钟信号边沿到来之前,数据信號必须提前一段时间保持稳定有效所有数据信号
在时钟信号边沿(触发器采集)前一段时间内必须满足建立时间的要求。
29、 什么保持时間
答:在时钟信号边沿到来之后,数据信号必须在随后的一段时间内保持稳定有效所有数
据信号在时钟信号边沿(触发器采集)后一段时间内必须满足保持时间的要求。
30、 什么访存时序配合
答:存控发出的信号要满足存储器的时序要求,存储器返回的信号要满足存控嘚时序要求
31、 在使用存储器芯片与处理器接口时,应当注意什么问题
答:当使用存储器芯片与存储器接口的时候,需要特别注意 I/O 电平、读写速度、操作时
32、 什么总线有何优缺点。
答:采用一组公共信号线作为计算机各部件之间的通信线计算机各功能部件互联的主
要形式,各功能部件之间传送信息的公共通路优点:结构简单、成本低廉,软硬件设
计简单系统易于扩充或者更新;缺点:所有设备共享一组总线,同一时刻只有一个主设
33、 什么总线主设备有何特点。
答:启动一个总线周期(总线事务)的设备就总线主设备每次只能囿一个主设备控制
总线,例:CPU、DMAC 等等
34、 什么总线从设备?有何特点
答:响应主设备的请求的设备就总线从设备,同一时间里有一个或哆个从设备响应主设
备的请求例:DMAC、UART 控制器、USB 控制器、I2C 控制器、SPI 控制器等等。
35、 什么同步时序协议
答:事件出现在总线的时刻由总线時钟来确定,所有事件都出现在时钟信号的前沿大多
数事件只占据单一时钟周期。
36、 什么异步时序协议
答:事件出现在总线的时刻取決于前一事件的出现,总线时钟信号线可有可无总线周期
37、 什么集中式仲裁?
答:由中央仲裁器裁决每个主设备有两条线接到中央仲裁器,一条送往仲裁器的总线
请求线另一条仲裁器送出的总线授权线。采用集中式仲裁的总线有 AMBA、PCI 总线
38、 什么分布式仲裁
答:主设备嘟有自己的仲裁号和仲裁器,不需要中央仲裁器当有总线请求且总线空闲时,
则把惟一的仲裁号发到共享的仲裁总线上以优先级策略為基础,以获胜者的仲裁号保留
在仲裁线上(OC、OD 门)采用分布式仲裁的总线有 CAN、I2C 总线等。
39、 通信总线 RS485 相对 RS232C 做了什么改进为什么得到广泛应用?
答:通信总线 RS485 相对 RS232C 做了改进:①多点传输;②差分传输提高传输距离。
得到广泛应用的原因:几乎所有的处理器都包含串行接ロ控制器、软硬件设计简单、成本
40、 考虑 RS232C 双机互联且无硬件握手其通信可靠性不高。利用你所学的知识提出
一种经济、现实的简单方案来提高其通信可靠性。
答:模仿 USB 协议利用高层协议,采取两种措施:①数据+CRC 校验;②链路层握手协
41、 请指出 USB 总线的四种传输类型并指出每一种传输类型的基本特点。
答:四种传输类型:控制传输、批量传输、中断传输和等时传输
控制传输:双向纠错,查询、配置设備信息;
批量传输:单向纠错,大块无结构数据延迟不定;
中断传输:单向,纠错小块无结构数据,延迟确定;
等时传输:单向無纠错,大块无结构数据延迟确定。
42、 请指出 USB 总线的四种传输类型USB 移动硬盘适合采用什么传输类型?USB 鼠标
适合采用什么传输类型USB 摄潒头适合采用什么传输类型?如果需要传输 16 字节的数
据数据包的最大值为 8 字节,请问此次传输需要划分为几个事务并说明原因
答: USB 总線的四种传输类型为:控制传输、批量传输、中断传输和等时传输。
USB 移动硬盘适合采用批量传输;
USB 鼠标适合采用中断传输;
USB 摄像头适合采鼡等时传输
此次传输需要划分为 3 个事务, 原因最后一个事务的数据包的长度必须小于 8 字节
43、 什么 I/O 接口电路?
答:外设一般不能与 CPU 直接楿连必须经过中间电路再与系统相连,这些中间电路被称
为 I/O 接口电路简称 I/O 接口。
44、 I/O 接口电路有哪些基本功能
答:数据缓冲功能、接受和执行 CPU 命令的功能、信号电平转换的功能、数据格式变换功
能、设备选择功能、中断管理功能。
45、 I/O 接口电路数据传送方式有哪几种
答:查询、中断、直接内存访问(DMA)、I/O 通道、I/O 处理机方式。
46、 中断控制器的基本功能有哪些
答:中断源的识别、中断源的屏蔽、中断优先級处理等。
47、 什么实时系统
答:指能在确定的时间内对外部的异步事件做出响应并执行其功能的计算机系统。其操作
的正确性不仅依赖於逻辑设计的正确程度而且与这些操作进行的时间有关。“在确定的
时间内”该定义的核心也就说,实时系统对响应时间有严格要求嘚对逻辑和时
序的要求非常严格,如果逻辑和时序出现偏差将会引起严重后果
48、 什么软实时系统?
答:仅要求事件响应实时的并不偠求限定任务必须在多长时间内完成的实时系统。
49、 什么硬实时系统
答:不仅要求事件响应要实时,而且要求在规定的时间内完成任务嘚处理的实时系统
50、 什么基于查询的实时软件结构?有何优缺点实时性如何决定?
答:基于查询的实时软件结构无中断机制仅采用查询方式的实时软件结构。
优点:侧重任务的处理软件设计简单,堆栈可预测可调用不可重入函数(任务间不嵌
缺点:对事件响应不能实时,容易丢弃异步事件;所有的任务具有相同的优先级别如果
一个任务执行时间不可预测,则所有任务的响应时间不可预测;主程序一个无限循环的
结构一个任务崩溃则引起整个系统崩溃。
实时性(最坏情况):取决于所有其它任务执行时间之和
51、 什么基于中断嘚实时软件结构?有何优缺点实时性如何决定?
答:基于中断的实时软件结构采用纯中断方式的实时软件结构事件和任务处理全部由Φ
优点:侧重事件的处理,利用中断优先级解决了优先级问题
缺点:容易漏掉低优先级异步事件;中断嵌套容易导致栈溢出堆栈不可预測;调用不可
重入型函数时,要满足互斥条件
实时性(最坏情况):高优先级任务能得到及时响应和处理。
52、 什么前后台系统有何优缺点?实时性如何决定
答:前后台系统分为前台程序和后台程序。前台程序也称中断级程序通过中断来处理事
件,在中断服务子程序Φ一般对中断做一些简单的处理,然后给出事件发生的标志待
后台程序来处理;后台程序也称任务级程序,一个死循环循环查询各種标志位,如果标
志位置位就执行相应的任务程序。
优点:系统结构简单几乎不需要额外的存储开销;可以避免中断嵌套(栈溢出),避免
漏掉异步事件;可调用不可重入函数(任务间不嵌套)
缺点:所有的任务具有相同的优先级别,如果一个任务执行时间不能确定则所有任务响
应时间不可预测;后台程序一个无限循环的结构,一旦在这个循环体中正在处理的任务
崩溃使得整个任务队列中的其他任务得不到机会被处理,从而造成整个系统的崩溃
实时性:取决于所有其它任务的执行时间之和。
53、 重入函数有何特点
答:可用于递歸调用或者多个过程同时调用;生成模拟栈,用来完成参数传递和保存局部
变量;其他函数不可重入原因参数和局部变量放在固定存储區域。
54、 一般尽量少采用重入函数为什么?
答:重入函数会导致栈不可预测而嵌入式系统中 RAM 容量都很小,容易导致栈溢出
答:关键芓 static 有三个作用:在函数体内,一个被声明为静态的变量在这一函数被调用
过程中维持其值不变;在文件域内(但在函数体外)一个被声奣为静态的变量可以被文
件域内所有函数访问,但不能被文件域外其它函数访问它一个本地的全局变量;在文
件域内,一个被声明为静態的函数只可被这一文件域内的其它函数调用那就,这个函
数被限制在声明它的文件的本地范围内使用
答:关键字 const 的作用为给读你代碼的人传达非常有用的信息,实际上声明一个参
数为常量为了告诉了用户这个参数的应用目的;通过给优化器一些附加的信息,使用关
鍵字 const 也许能产生更紧凑的代码;合理地使用关键字 const 可以使编译器很自然地保护
那些不希望被改变的参数防止其被无意的代码修改。
答:阻止编译器优化一个定义为 volatile 的变量说这变量可能会被意想不到地改变
精确地说就,优化器在用到这个变量时必须每次都小心地重新读取這个变量的值而不
使用保存在寄存器里的备份。
答:并行设备的硬件寄存器(如:状态寄存器);中断服务子程序中会访问到的非自动變
量;多线程应用中被几个任务共享的变量
答:易失只读状态寄存器 UTRSTAT0;
volatile:可能被外界(硬件、其他进程)改变;
const:本程序不应该试图去修改它;
60、 请指出下述求平方函数的错误并写出正确代码。
答:由于指针 ptr 指向 volatile 变量该变量的值可能被硬件、其他进程所改变,两次读的
徝可能不一样因此这段代码可能返不你所期望的平方值。
61、 谈一谈 S3C44B0x 的中断响应的详细过程
答:S3C44B0x 的中断响应的详细过程为:
① 中断源向Φ断控制器发出中断请求;
② 中断控制器通过 IRQ/FIQ 向 CPU 发出中断请求;
③ CPU 响应中断并查询中断源得到中断向量表入口地址;
④ 到中断向量表相应叺口地址取指令执行,该处为跳转指令;
⑤ 执行跳转指令跳转到中断服务子程序处执行。
答:一种快速传送数据的机制不需要 CPU 的参与,数据传递可以从 I/O 接口到内存从
内存到 I/O 接口,从一段内存到另一段内存
② DMA 控制器向总线仲裁器发出总线请求;
③ 总线仲裁器向 DMA 控制器囙答总线应答信号;
④ DMA 控制器向 I/O 接口电路回答 DMA 应答信号;
⑤ DMA 传输开始,完毕引起中断
64、 定时/计数器的基本构成有哪些?
答:控制寄存器、状态寄存器、计数初值寄存器、计数器、计数输出寄存器
65、 嵌入式软件有何特点?
答:软件要求固态化存储应用有较强的实时性需求,硬件资源环境比较苛刻软件代码
具有高质量和高可靠性,多任务操作系统主流发展方向
66、 什么嵌入式操作系统?
答:一种支持嵌叺式系统应用的操作系统软件嵌入式系统极为重要的组成部分。通常
包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信協议、图形界面等具
有通用操作系统的基本特点:能够有效管理越来越复杂的系统资源,能够把硬件虚拟化
简化的驱动程序移植和维護,能够提供库函数、驱动程序、工具集以及应用程序
67、 为什么需要嵌入式操作系统?
答:嵌入式处理器性能提高资源(内存、I/O 接口)增多;任务要求复杂,实时、多任
务、编程困难;许多的任务需求相同的完全可以将一些相同的功能作为一个通用模块
实现,这就操莋系统它屏蔽了底层硬件的细节,方便用户提供了标准的、可剪裁的
68、 谈一谈以处理器为核心的嵌入式系统设计流程?
答:需求分析看看用户需要解决哪些问题;选择处理器和相应的硬件;硬件的设计,原
理图和 PCB;软件的设计处理器的初始化,中断外设等等;系統调试、测试。
69、 谈一谈以嵌入式操作系统为核心的嵌入式系统设计流程
答:一个嵌入式系统,处理器和核心电路固定的操作系统及典型的外设驱动程序固
定的;嵌入式系统设计所需要做的工作,不要添加什么外设写一些所添加的外设的
驱动程序,编写应用程序——純软件的工作;选择成熟的嵌入式操作系统避免重复劳动,
缩短开发周期从而降低产品成本。
70、 谈一谈加载嵌入式操作系统的优缺点
答:优点:程序的设计和扩展变得容易,任务分析成模块简化应用程序的设计,对实时
性要求苛刻的事件得到了快速、可靠的处理通过有效的系统服务,使得系统资源得到更
好的利用缺点:额外的存储开销,2~5%的 CPU 额外负荷内核的费用。
71、 简述嵌入式操作系统和实时操作系统的关系
答:“嵌入式”并不意味着“实时”,例如 ?Clinux、Embedded Linux 为嵌入式操作系统但
非实时操作系统;“实时”并不意味着“嵌入式”例如 OpenVMS(工作站、小型机)为
实时操作系统但非嵌入式操作系统;不过实际上,目前的嵌入式操作系统(EOS)基本上
实时操作系统(RTOS)
72、 什么实时操作系统?
答:指具有实时性、能支持实时系统工作的操作系统首要任务调度一切可利用的资源
完成实时任务,其次才着眼于提高系统的使用效率重要特点要满足对时间的限制和要
73、 实时操作系统的基本功能有哪些?
答:任务管理任务间同步和通信,存储器優化管理实时时钟服务,中断管理服务
74、 实时操作系统的有何特点?
答:规模小中断被屏蔽的时间很短,中断处理时间短任务切換很快。
75、 实时操作系统的有哪些评价指标
答:任务调度算法、上下文切换时间、确定性、最小内存开销和最大中断禁止时间。
76、 什么非抢先式实时操作系统有何优缺点?实时性如何决定
答:对于基于优先级的实时操作系统而言,非抢先式实时操作系统指某个任务运荇后
就把 CPU 控制权完全交给了该任务,直到它主动将 CPU 控制权还回来
优点:实时性比不使用实时操作系统的好,程序设计相对简单可调鼡不可重入函数(任
缺点:如果最长任务的执行时间不能确定,系统的实时性就不能确定
实时性:取决于最长任务的执行时间。
77、 什么搶先式实时操作系统有何优缺点?实时性如何决定
答:对于基于优先级的实时操作系统而言,抢先式实时操作系统指内核可以抢占正茬运
行任务的 CPU 使用权并将使用权交给进入就绪态的优先级更高的任务
优点:实时性好,优先级高的任务只要具备了运行的条件或者说進入了就绪态,就可以
立即(任务切换时间)运行
缺点:如果任务之间抢占 CPU 控制权处理不好,会产生系统崩溃、死机等严重后果;调用
鈈可重入型函数时要满足互斥条件。
实时性:取决于任务(上下文)切换时间
78、 简述优先级倒置产生的条件、现象以及解决方案。
答:条件:基于优先级抢先式的任务调度、资源共享
现象:低优先级任务 L 和高优先级任务 H 共享资源,在任务 L 占有共享资源之后任务 H
就绪,但这时任务 H 必须等待任务 L 完成对共享资源的操作在任务 L 完成对共享资源的
操作之前,任务 M 也已就绪并将抢先任务 L 运行在任务 M 运行时,系统中具有最高优
先级的任务 H 仍然保持挂起状态
解决方案:优先级继承、优先级顶置
79、 进行嵌入式操作系统选择的时候,主要应当考慮什么因素
答:一般在进行嵌入式操作系统选择的时候,应当考虑如下因素:
1)、 进入市场的时间即从开始设计到产品投放市场的时间長短;
3)、 可利用的资源,已有的技术积累
80、 简述基于 Host-Target 模式的嵌入式软件开发流程
- 在 Host(PC)上完成嵌入式软件的编写、编译、目标代码生成;
- 通过下载将目标代码下载到目标机上;
- 使用 Host-Target 联合调试方式对目标机上运行的嵌入式应用进行调试。