嵌入式实时系统复习.docx
- 文档编号:9642183
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:10
- 大小:296.04KB
嵌入式实时系统复习.docx
《嵌入式实时系统复习.docx》由会员分享,可在线阅读,更多相关《嵌入式实时系统复习.docx(10页珍藏版)》请在冰豆网上搜索。
嵌入式实时系统复习
填空25判断15简答8*5=40分析10综合10
1.国内对嵌入式系统的定义P2
嵌入式系统是以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
2、与通用计算机对比,嵌入式系统特点P7
嵌入式系统通常是形式多样、面向特定应用的
嵌入式系统得到多种类型的处理器和处理器体系结构的支持
嵌入式系统通常极其关注成本
嵌入式系统有实时性和可靠性的要求
嵌入式系统使用的操作系统的特性
嵌入式系统开发需要专门工具和特殊方法
3、什么是前后台系统,优缺点?
P10
前后台系统是中断驱动系统的一种
a)后台是一个循环轮询系统一直在运行。
b)前台是由一些中断处理过程组成的。
c)当有一前台事件(外部事件)发生时,引起中断,进行前台处理,处理完成后又回到后台(通常又称主程序)。
优点:
可并发处理不同的异步事件,设计简单;中断处理程序有多个,主程序一个;无须学习OS相关的知识
缺点:
对于复杂的系统而言,其主程序设计复杂,系统复杂度提高,可靠性降低;实时性只能通过中断来保证,如果采用中断加主程序的方式来处理事件,其实时性难以保证。
中断处理程序与主程序间的共享互斥问题应用自身解决
4、单处理器多任务系统优缺点P11
优点
a)将复杂的系统分解为相对独立的多个任务,达到“分而治之”的目的,从而降低系统的复杂性。
b)保证系统的实时性。
c)系统的模块化好,提高系统的可维护性。
缺点
d)需要采用一些新的软件设计方法。
e)需要对每一个共享资源互斥。
f)导致任务间的竞争。
g)需要使用嵌入式操作系统,要增加系统的开销。
5、嵌入式系统的分类
按嵌入式处理器的位数、应用、实时性和软件结构等原则分类
按嵌入式软件结构分类,嵌入式系统可分为哪几类?
循环轮询系统、前后台系统、单处理器多任务系统、多处理器多任务系统
6、嵌入式软件的特点P61
1)、规模小,开发难度大
2)、快速启动,直接运行
3)、实时性和可靠性要求高
4)、程序一体化
5)、两个平台
7、嵌入式软件系统的分类P62
按通常的软件分类,嵌入式软件可以分为系统软件、支撑软件、应用软件
按运行平台来分,嵌入式软件可以分为:
运行在开发平台上的软件、运行在目标平台即嵌入式系统上的软件
按按嵌入式软件结构来分,嵌入式软件可以分为:
循环轮询系统、前后台系统、单处理器多任务系统、多处理器多任务系统
8、嵌入式软件系统的体系结构,包括驱动层、操作系统层、中间件层和应用层P63
9、嵌入式软件运行流程分为5个阶段:
上电复位、板级初始化阶段;系统引导/升级阶段;系统初始化阶段;应用初始化阶段;多任务应用阶段P65
10、嵌入式操作系统的体系结构可分为:
单块结构、层次结构和客户/服务器(微内核)结构。
P66
11、交叉开发环境的工具包括:
文本编辑器、交叉编译器、交叉调试器、仿真器和下载器等工具。
从开发方式来看,交叉开发环境有宿主机和目标机组成。
宿主机和目标机之间物理连接和逻辑连接P75
断点分类:
硬件断点和软件断点
12、什么是交叉调试P77
交叉调试器是指调试程序和被调试程序运行在不同的机器上的调试器;调试器通过某种方式能控制目标机上被调试程序的运行方式,并且通过调试器能查看和修改目标机上的内存、寄存器以及被调试程序中的变量等
13、交叉调试的特点P77
1)调试器和被调试程序运行在不同的计算机上。
调试器主要运行在宿主机上,而被调试程序运行在目标机上
2)调试器通过某种通信方式与目标及建立联系。
通信方式可以是串口、并口、网络JTAG或者专用的通信方式
3)一般在目标机上有调试器的某种代理,这种代理能配合调试器一起完成对目标机上运行的程序的调试
4)目标机也可以是一种虚拟机。
调试通过虚拟机代理的方式完成。
14、交叉调试方式
Crash&Burn方式RomMonitor方式RomEmulator方式ICE方式OCD方式
常用的方式RomMonitor方式和OCD方式
15、嵌入式实时内核的设计考虑的问题P93
实时性;可移植性;可裁剪、可配置性;可靠性;应用编程接口
16、嵌入式实时内核的时间性能指标P120
中断延迟时间、中断响应时间、中断恢复时间、内核最大关中断时间、任务上下文
切换时间、任务响应时间、系统调用的执行时间
17、任务响应时间?
最坏情况包括哪些时间P130
任务响应时间是指从任务对应的中断产生到该任务真正开始运行这一过程所花费的时间。
最坏情况下包括的时间:
中断延迟、中断服务程序、中断嵌套、抢占被禁止、调度、上下文切换
18、为了便于移植,内核设计为三层结构:
硬件无关层、硬件抽象层、硬件相关层。
19、抢占式调度和非抢占式调度的运行图P96
非抢占式调度抢占式调度
20、任务的内容?
任务的3种基本状态
任务主要包括以下内容:
代码,即一段可执行的程序;数据,即程序所需要的相关数据;堆栈;程序执行的上下文环境
任务的三种基本的状态:
等待(waiting):
任务在等待某个事件的发生;
就绪(ready):
任务等待获得处理器资源;
执行(running):
任务获得处理器资源,所包含的代码内容正在被执行。
21、任务与程序的区别:
P139
–任务能真实地描述工作内容的并发性,而程序不能;
–程序是任务的组成部分,除程序外,任务还包括数据、堆栈及其上下文环境等内容;
–程序是静态的,任务是动态的;
–任务有生命周期,有诞生、有消亡,是短暂的;而程序是相对长久的;
–一个程序可对应多个任务,反之亦然;
–任务具有创建其他任务的功能,而程序没有
22、任务切换基本步骤P144
1)保存处理器上下文环境
2)更新当前处于运行状态下任务的控制块内容,将其状态改为就绪或等待状态
3)将任务的任务控制块移到相应队列(就绪队列或等待队列)
4)选择另一个任务进行执行
5)改变需投入运行任务的控制块内容,将其状态变为运行状态
6)根据任务控制块恢复需投入运行任务的上下文环境
23、什么是优先级反转P162
优先级反转是指高优先级任务需要等待低优先级任务释放资源,而低优先级任务又正在等待中等优先级任务的现象
24、优先级继承协议的基本思想是:
P163
当一个任务阻塞了一个或多个高优先级任务时,该任务将不使用其原来的优先级,而使用被该任务所阻塞的所有任务的最高优先级作为其执行临界区的优先级。
当该任务退出临界区时,又恢复到其最初的优先级。
25、优先级天花板协议的内容P165
在优先级天花板协议中,主要包含如下处理内容:
1)对于控制临界区的信号量,设置信号量的优先级天花板为可能申请该信号量的所有任务中具有最高优先级任务的优先级;
2)如果任务成功获得信号量,任务的优先级将被抬升为信号量的优先级天花板;任务执行完临界区,释放信号量后,其优先级恢复到其最初的优先级;
3)如果任务不能获得所申请的信号量,任务将被阻塞。
26、优先级继承协议和优先级天花板协议的比较
优先级继承协议和优先级天花板协议都能解决优先级反转问题,但在处理效率和对程序运行流程的影响程度上有所不同
1)执行效率的比较:
优先级继承协议可能多次改变占有某临界资源的任务的优先级,而优先级天花板协议只需改变一次。
从这个角度看,优先级天花板协议的效率高,因为若干次改变占有资源的任务的优先级会引入更多的额外开销,导致任务执行临界区的时间增加。
2)对程序运行过程影响程度的比较:
优先级天花板协议的特点是一旦任务获得某临界资源,其优先级就被抬升到可能的最高程度,不管此后在它使用该资源的时间内是否真的有高优先级任务申请该资源,这样就有可能影响某些中间优先级任务的完成时间。
但在优先级继承协议中,只有当高优先级任务申请已被低优先级任务占有的临界资源这一事实发生时,才抬升低优先级任务的优先级,因此优先级继承协议对任务执行流程的影响相对要较小。
27、优先级位图算法P146
28、任务能以以下方式与中断处理程序或其他任务进行同步或通信:
单向同步或通信:
一个任务与另一个任务或一个ISR同步或通信。
双向同步或通信:
两个任务相互同步或通信。
双向同步不能在任务与ISR之间进行,因为ISR不能等待。
29、信号量一般分为三种:
用于解决资源共享互斥访问的互斥信号量;用于解决互斥访问同步问题的二值信号量;用于解决资源计数问题的计数信号量;
30、P182
生产者任务
do
{
…
产生一个数据项
…
申请empty
申请mutex
…
将新生成的数据项添加到缓冲中
…
释放mutex
释放full
}while
(1);
消费者任务
do
{
申请full
申请mutex
…
从缓冲中移出一个数据项的内容
…
释放mutex
释放empty
…
消费新获得的数据项内容
…
}while
(1);
计数信号量full:
已被填充的数据项数目,取值范围0-n,初始值为0
计数信号量empty:
空闲数据项数目,取值范围为0-n,初始值为n;
互斥信号量mutex:
控制生产者任务和消费者任务对有界缓冲的访问,初始值为1。
31、什么是事件,特点?
P195
在嵌入式实时内核中,事件是指一种表明预先定义的系统事件已经发生的机制。
事件及事件集有以下特点:
事件间相互独立
事件仅用于同步,不提供数据传输功能
事件无队列,即多次发送同一事件,在未经过任何处理的情况下,其效果等同于只发送一次。
32、异步信号机制与中断机制的比较P202
相同点:
1)具有中断性。
对中断的处理和对异步信号的处理都要先暂时地中断当前任务的运行。
2)有相应的服务程序
根据中断向量,有一段与中断信号对应的服务程序,称为ISR(InterruptServiceRoutine)
根据异步信号的编号,有一段与之对应的服务程序,称为ASR(AsynchroniousServiceRoutine)
3)可以屏蔽其响应
外部硬件中断可以通过相应的寄存器操作被屏蔽
任务也可屏蔽对异步信号的响应
不同点:
1)实质不同
中断由硬件或者特定的指令产生,不受任务调度的控制
异步信号由系统调用(使用发送异步信号功能)产生,受到任务调度的控制
ASR在相关任务的上下文中运行,所以ASR也是任务的一个组成部分
2)处理时机(或响应时间)不同
中断触发后,硬件根据中断向量找到相应的服务程序执行。
在退出中断服务程序之前会进行重调度,所以中断结束后运行的任务不一定是先前被中断的任务。
异步信号通过发送异步信号的系统调用触发,但是系统不一定马上开始对它的处理:
3)执行的环境不同
一般地,ISR在独立的上下文中运行,操作系统为之提供专门的堆栈空间。
ASR在相关任务的上下文中运行,所以ASR也是任务的一个组成部分。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 实时 系统 复习