预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共12页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

嵌入式实时操作系统考试复习 1.什么是嵌入式操作系统?嵌入式系统有什么特点? 答:运行在嵌入式硬件平台上,对整个系统及其操作的部件、 装置等资源进行统一协调、指控和控制的系统软件就叫嵌入式操 作系统。特点:微型化、可剪裁性、实时性、高可靠性、易移植 性 2.实时操作系统需要满足的条件:实时操作系统必须是多任 务系统,任务的切换时间应与系统中的任务数无关,中断延迟的 时间可预知并尽可能短。 3.什么是实时操作系统? 答:什么是实时?实时含有立即、及时之意。如果操作系统 能使计算机系统及时响应外部事件的请求,并能及时控制所有实 时设备与实时任务协调运行,且能在一个规定的事件内完成对事 件的处理,那么这种操作系统就是一个实时操作系统。 4.内核的类型 答:不可剥夺型内核:也叫做合作型多任务内核,在这种内 核中,总是优先级别高的任务最先获得CPU的使用权。为防止 某个任务霸占CPU的使用权,这种内核要求每个任务必须能主 动放弃CPU的使用权。可剥夺型内核:CPU总是运行多任务中 优先级别最高的任务,即使CPU正在某个优先级低的任务,当 有高优先级别的任务准备就绪时,该高级别的任务就会剥夺正在 运行的CPU的使用权,而使自己获得CPU的使用权。 5.嵌入式操作系统的三项功能:内存管理、多任务管理、外 围设备管理 第三章 1.任务有三个部分组成:任务程序代码、任务堆栈、任务控 制块 2.具有自己的私有空间叫“进程”,无叫做“线程”。一个任务不 是对应一个进程。 3.任务的状态:就绪状态:最多有9个、运行状态:只能有 1个、等待状态:最多有9个 4.系统任务:为了与用户任务区别,这种系统自己所需要的 任务就叫做系统任务。两个系统任务:空闲任务和统计任务,空 闲任务是每个应用程序必须使用的,统计任务则是应用程序可以 根据实际需要来选择 5.空闲任务:这个空闲任务几乎不做什么事情,只是对系统 定义的一个空闲任务运行次数计数器进行加1操作。一个用户应 用程序必须使用这个空闲任务,而且这个任务不能通过程序来删 除。 6.统计任务:该任务每秒计算一次CPU在单位时间内被使用 的时间,并把计算结果以百分比的形式存放在变量OSCPUsage 中,以便其他应用程序来了解CPU的利用率。 7.任务的优先级别:可以创建最多64个任务,即0、1、2........63, 数字越小,优先级越高 8.任务堆栈:任务堆栈是任务重要的组成部分。所谓堆栈, 就是在存储器中按数据“后进先出”的原则组织的连续存储空间, 为了满足任务切换和响应中断时保存CPU寄存器中的内容及任 务调用其他函数时的需要,每个任务都应该配有自己的堆栈。任 务堆栈中存放的是:CPU寄存器中的内容及存储任务私有数据。 9.任务控制块的作用:用来记录任务的堆栈指针、任务的当 前状态、任务的优先级别等一些与任务管理有关的属性。任务控 制块是一个结构类型数据,当用户创建一个用户任务时,就会对 任务控制块中的所有成员赋予与该任务相关的数据,并驻留在 RAM中。 10.任务控制块的初始化:当应用程序调用函数 OSTaskcreate()创建一个任务时,这个函数会调用系统函数 OSTCBInit()来为任务控制块进行初始化OSTCBInit()。函数的主要 任务是:为被创建任务从空任务控制块链表获取一个任务控制块, 用任务的属性对任务控制块各个成员进行赋把这值,个任务控制 块链入到任务控制块链表。 11.任务调度的思想:近似的每时每刻让优先级最高的就绪 任务处于运行状态。 12.任务调度器有两个任务:一是在任务就绪表中查找具有 最高优先级别的就绪任务,二是实现任务的切换。两种任务调度 器:一种是任务级的调度器,另一种是中断级的调度器。 13.任务是通过任务控制块进行管理,创建任务的工作实质 上是创建一个任务控制块,并通过任务控制块把任务代码和任务 堆栈关联起来形成一个完整的任务。 第四章 1.临界段:那些不希望被中断的代码段。从代码上看,处在 关中断和开中断之间的代码段就是临界段。用OS_ENTER_*****L() asm(“DI”)和OS_EXIT_*****L()asm(EI)这两个宏封装了与系统硬 件相关的关中断和开中断指令。 2.时钟:任何操作系统都要提供一个周期性的信号源,以供 系统处理诸如延时、超时等与时间有关的事件,这个周期性信号 源叫做时钟。是任务调度的基准。 3.μC/OS-II系统响应中断的过程为:系统接收到中断请求后, 这时如果CPU处于中断允许状态(即中断是开放的),系统就会 中止正在运行的当前任务,而按照中断向量的指向转而去运行中