- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式实时操作系统详解
嵌入式实时操作系统 多任务实时操作系统 前后台系统 前后台系统的组成:前台和后台程序 后台:是一个无限循环的应用程序,循环中调用相应的任务函数完成相应的操作,各个任务依次运行,没有调度,运行的次序不能改变。 前台:是中断服务程序,处理异步事件。 适用情形 一般不复杂或实时性要求不高的小系统很适合采用前后台系统,例如微波炉、电话机、玩具等。 在另外一些基于省电的应用中,由于平时微处理器处在停机状态,所有的事都靠中断服务来完成,因此也常常采用前后台系统模式。 操作系统 操作系统(Operating System,简称OS)是计算机中最基本的程序。操作系统负责计算机系统中全部软、硬资源的分配以及回收、控制与协调等并发的活动;操作系统提供用户接口,使用户获得良好的工作环境;操作系统为用户扩展新的系统功能提供软件平台。 操作系统的主要包括四大功能: 处理机管理:解决CPU的分时复用。 存储管理:配合CPU调度内存。 设备管理:分配外设的使用,包括独享、共享和虚拟。 软件资源管理:解决程序和信息的存取和管理等问题。 实时操作系统 实时操作系统(RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统作出快速响应,并控制所有实时任务协调一致运行的操作系统。 多任务实时操作系统 用户的应用程序是运行于RTOS之上的各个任务,RTOS根据各个任务的要求,进行资源(包括存储器、外设等)管理、消息管理、任务调度和异常处理等工作。 多任务实时操作系统,以分时方式运行多个任务,看上去好像是多个任务“同时”运行。任务之间的切换应当以优先级为根据,只有具有优先服务方式的RTOS才是真正的实时操作系统,而时间分片方式和协作方式的RTOS并不是真正的“实时”。 相关基本概念 资源与共享资源 程序运行时可使用的软、硬件环境统称为资源。资源可以是输入/输出设备,例如打印机、键盘和显示器;资源也可以是一个变量、一个结构或一个数组等。 共享资源就是指可以被一个以上任务使用的资源。为防止数据被破坏,每个任务在与共享资源打交道时,必须独占该资源,这叫互斥。 任务 任务,也称为线程,是一个程序。一般地,每个任务都是一个无限的循环。 任务有五种状态,任何时刻,一个任务都处于这五种状态之一的状态下。 休眠态相当于该任务驻留在内存中,但并不被多任务内核所调度。 就绪态意味着该任务已经准备好,可以运行了,但由于该任务的优先级比正在运行的任务的优先级低,还暂不能运行 。 运行态的任务是指该任务掌握了CPU的控制权,正在运行。 挂起态指该任务在等待,等待某一事件的发生。 被中断状态是指,发生中断时,CPU提供相应的中断服务,原来正在运行的任务暂不能运行,就进入了被中断状态。 内核与任务切换 内核是操作系统最基本的部分。 负责管理各个任务,为每个任务分配资源,它提供的基本服务是任务切换。 任务切换 当多任务内核决定运行另外的任务时,保存正在运行任务的当前状态,即保存CPU寄存器中的全部内容。这些内容保存在任务的当前状态保存区,也就是任务自己的栈区之中。 入栈工作完成以后,就把下一个将要运行的任务的当前状态从任务的栈中重新装入CPU的寄存器,并开始下一个任务的运行。这个过程就称为任务切换。 中断 中断是最基本的任务切换方式,停止现行程序的运行,转向对这些异常情况或特殊请求的处理,处理结束后再返回到以下部分: 1.在前后台系统中,程序回到后台程序; 2.对非占先式内核而言,程序回到被中断了的任务; 3.对占先式内核而言,让进入就绪态的优先级最高的任务开始运行。 调度 任务的调度方式有基于时间片轮转的调度和基于优先级的调度。多数实时系统是基于优先级调度法的。基于优先级的调度法指CPU总是让处于就绪态的优先级最高的任务先运行。至于何时让高优先级任务掌握CPU的使用权,有两种不同的情况: 占先式调度 任何时候具有最高优先级且已就绪的任务先执行。 非占先式调度 要求每个任务自我放弃CPU的所有权。 临界区 临界资源:任何时候都只允许一个任务访问的资源。 临界区或临界段:用于访问临界资源的代码段。 临界代码段不允许多个并发任务交叉执行,否则会产生严重后果,比如进入中断后的现场保护代码等。 为确保临界区代码的安全执行,在进入临界区之前要关中断,而临界区代码执行完以后要立即开中断 函数的可重入性 可重入(Reentrant)型函数:是指可以被多个任务并发使用,而数据不会遭到破坏的函数。 可重入型函数特征: 只使用局部变量,变量保存在CPU寄存器或堆栈中,可以在任意时刻被中断,再重新恢复运行时,数据不会被破坏; 若使用全局变量,则需满足互斥条件。 可重入型函数实例void func1(i
您可能关注的文档
最近下载
- 湖南省名校联考联合体2025-2026学年高一上学期10月联考语文试卷含答案.pdf VIP
- 部分常用岩土物理力学参数经验数值.doc
- 中南大学网校马克思主义基本原理考试.doc VIP
- 浙江省精诚联盟2025-2026学年高一上学期10月联考生物试卷含答案.docx VIP
- 2025-2026学年广东省广州市第一中学高一上学期10月月考数学试卷含详解.docx VIP
- 抖音爸爸博主“新父职”的数字实践研究_.pdf VIP
- 演示文稿青春期生长发育.ppt VIP
- 2023年中南财经政法大学公共课《马克思主义基本原理概论》期末试卷B(有答案).docx VIP
- 2024-2025学年广东省珠海市文园中学九年级(下)开学物理试卷.docx VIP
- 保健品营销策划.pdf VIP
文档评论(0)