- 1、本文档共74页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1.5 嵌入式操作系统 基本概念 多任务系统中,内核负责管理各个任务,或者说为每个任务分配CPU时间,并且负责任务之间的通信。内核提供的基本服务是任务切换。使用实时内核可以大大简化应用系统的设计,是因为实时内核允许将应用分成若干个任务,由实时内核来管理它们。内核需要消耗一定的系统资源,比如2%~5%的CPU运行时间、RAM和ROM等。 内核提供必不可少的系统服务,如信号量、消息队列、延时等。 ——内核 * 1.5 嵌入式操作系统 基本概念 调度是内核的主要职责之一。调度就是决定该轮到哪个任务运行了。多数实时内核是基于优先级调度法的。每个任务根据其重要程序的不同被赋予一定的优先级。基于优先级的调度法指CPU总是让处在就绪态的优先级最高的任务先运行。然而究竟何时让高优先级任务掌握CPU的使用权,有两种不同的情况,这要看用的是什么类型的内核,是非占先式的还是占先式的内核。 ——调度 * 1.5 嵌入式操作系统 基本概念 非占先式内核要求每个任务自我放弃CPU 的所有权。非占先式调度法也称作合作型多任务,各个任务彼此合作共享一个CPU。异步事件还是由中断服务来处理。中断服务可以使一个高优先级的任务由挂起状态变为就绪状态。但中断服务以后控制权还是回到原来被中断了的那个任务,直到该任务主动放弃CPU的使用权时,那个高优先级的任务才能获得CPU的使用权。 ——非占先式内核 * 1.5 嵌入式操作系统 基本概念 当系统响应时间很重要时,要使用占先式内核。因此绝大多数商业上销售的实时内核都是占先式内核。最高优先级的任务一旦就绪,总能得到CPU的控制权。当一个运行着的任务使一个比它优先级高的任务进入了就绪状态,当前任务的CPU使用权就被剥夺了,或者说被挂起了,那个高优先级的任务立刻得到了CPU的控制权。如果是中断服务子程序使一个高优先级的任务进入就绪态,中断完成时,中断了的任务被挂起,优先级高的那个任务开始运行。 ——占先式内核 * 1.5 嵌入式操作系统 基本概念 任务的优先级是表示任务被调度的优先程度。每个任务都具有优先级。任务越重要,赋予的优先级应越高,越容易被调度而进入运行态。 ——任务优先级 * 1.5 嵌入式操作系统 基本概念 中断是一种硬件机制,用于通知CPU有个异步事件发生了。中断一旦被识别,CPU保存部分(或全部)上下文即部分或全部寄存器的值,跳转到专门的子程序,称为中断服务子程序(ISR)。中断服务子程序做事件处理,处理完成后,程序回到: 1. 在前后台系统中,程序回到后台程序; 2. 对非占先式内核而言,程序回到被中断了的任务; 3. 对占先式内核而言,让进入就绪态的优先级最高的任务开始运行。 ——中断 * 前后台系统 1.5 嵌入式操作系统 基本概念 ——中断 ISR 任务 ISR 非占先操作系统 任务A 任务B 任务C ISR 占先操作系统 任务A 任务B 任务C * 1.5 嵌入式操作系统 基本概念 时钟节拍是特定的周期性中断。这个中断可以看作是系统心脏的脉动。中断之间的时间间隔取决于不同应用,一般在10ms到200ms之间。时钟的节拍式中断使得内核可以将任务延时若干个整数时钟节拍,以及当任务等待事件发生时,提供等待超时的依据。时钟节拍率越快,系统的额外开销就越大。 ——时钟节拍 * 1.5 嵌入式操作系统 基本概念 所有嵌入式操作系统都是多任务的。目前所说的多任务大都是多线程方式或多进程方式。和一般的操作系统一样,嵌入式操作系统的作用也是决定在特定的某一时刻系统应该运行哪一个进程。现在许多CPU都已提供多组寄存器来辅助执行模式的切换,有比较便捷的指令来纪录每个执行程序的情况,操作系统主要是提供调度机制来控制这些执行程序的起始,执行,暂停和结束。 ——多任务管理 * 1.5 嵌入式操作系统 基本概念 嵌入式操作系统中的进程状态有3种:运行状态,就绪状态,等待状态。3种状态之间的关系如图,其中进程状态转换的条件与一般操作系统中转换条件类似。 ——多任务管理 运行 就绪 等待 新进程 结束 * 1.5 嵌入式操作系统 基本概念 ——存储管理 与一般操作系统的存储管理相比,嵌入式操作系统的存储管理要相对简单一些。由于虚拟存储中经常要对页进行换入/换出操作,所以内存中页命中率和换入/换出所耗费的时间严重破坏了整个系统的确定性,而且虚拟系统中需要地址转换表和其他一些数据结构,这样留给程序的内存空间就减少了。总之,虚拟内存管理占用了相当一部分系统资源,因此在系统资源非常有限的嵌入式系统中,一般不采用虚拟内存管理,而采用动态内存管理方式
文档评论(0)