版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实时操作系统应用开发技术第1章RTOS的基本概念与线程基础知识主讲人:王宜怀时间:2025.061.1实时操作系统的基本含义1.2RTOS中的基本概念1.3线程的三要素、四种状态及三种基本形式目录-CONTENTS1.4本章小结实时操作系统的基本含义1.1PART-实时操作系统应用开发技术1.1.1无操作系统与实时操作系统无操作系统下程序运行流程01.无操作系统运行机制无操作系统(NOS)的嵌入式系统在复位后初始化硬件模块,进入无限循环,由全局变量决定执行功能程序。发生中断时,执行中断服务例程(ISR),完成后返回中断处继续执行。NOS中主程序类似实时操作系统内核,负责调度其他“线程”。这种运行方式简单直接,但缺乏灵活性和复杂任务处理能力。RTOS下程序运行流程02.RTOS程序运行机制实时操作系统(RTOS)是面向实时性要求高的工业控制领域智能化产品的系统软件,属于单进程多线程系统。RTOS内核负责线程调度,程序运行分为线程线和中断线。线程是RTOS下程序运行的基本单元,调度者(RTOS内核)决定线程何时运行;中断线与无操作系统情况一致。这种机制使RTOS能够高效处理多任务和中断。RTOS的基本功能03.RTOS核心功能RTOS的基本功能包括线程管理与调度、线程间的同步与通信、存储管理、时间管理和中断管理。RTOS为每个线程建立可执行环境,管理线程间的消息传递,区分线程优先级,协调多个线程对同一个I/O设备的调用,这些功能使RTOS能够满足复杂系统的实时性需求。RTOS的应用场合04.RTOS使用场景是否使用RTOS需根据系统复杂性、硬件资源、线程交互需求和软件可移植性综合考虑。RTOS适用于对实时性要求高的嵌入式系统,如工业控制设备、军事设备和航空航天设备。以轻量级鸿蒙LiteOS为例,它是一款面向工业智能化及物联网领域的国产开源免费RTOS,这些应用场合对实时性和可靠性要求极高。4/19操作系统(OS)是管理计算机硬件与软件资源的程序,是计算机的系统软件。桌面操作系统如Windows、MacOS、Linux等,提供硬件设备驱动管理及用户软件进程管理等功能。嵌入式操作系统工作在嵌入式微型计算机上,负责软硬件资源分配、线程调度等功能。操作系统概述资源较丰富的应用处理器使用的嵌入式操作系统对实时性要求不高,如Android、iOS、Linux等;以微控制器为核心的嵌入式系统对实时性要求较高,如轻量级鸿蒙LiteOS、RT-Thread、FreeRTOS等。与通用操作系统相比,RTOS注重每个实时线程在最坏情况下满足实时性要求。实时与非实时操作系统1.1.2实时操作系统与非实时操作系统5/19RTOS中的基本概念1.2PART-实时操作系统应用开发技术1、线程的基本含义线程是RTOS中最重要的概念之一,是RTOS调度的基本单元。从不同视角理解线程:从线程调度视角看,它是RTOS调度的基本单元;从软件设计视角看,它是独立的、相互作用的程序集合;从CPU运行视角看,它是占用CPU的主体。2、调度的基本含义调度是RTOS内核的重要职责,负责为每个线程分配CPU时间。线程根据重要程度被赋予优先级,RTOS大多采用基于优先级的调度算法,让处于就绪态的优先级最高的线程先运行。1.2.1线程与调度的基本含义7/19时钟节拍是特定的周期性中断,通过定时器产生,以便内核判断是否有更高优先级的线程进入就绪状态。代码临界段不可抢占型内核与可抢占型内核实时性及RTOS实时性指标实时性是系统在规定时间内的反应能力,RTOS包括硬实时和软实时。评价RTOS可从线程调度时间指标(调度延时、线程切换时间)、中断禁止时间与中断延迟时间、最小内存开销等方面衡量。01时钟节拍不可抢占型内核要求每个线程主动放弃CPU使用权,异步事件由中断服务处理,但使用权仍回到原线程,直到其主动放弃。可抢占型内核中,运行的线程可被打断,让优先级高的线程运行。代码临界段是运行时不可分割的代码,执行时不允许中断打扰。为确保临界段代码执行,进入临界段前要关中断,执行完后开中断。0203041.2.2内核类其他基本概念8/191、线程的上下文及线程切换线程的上下文是某一时间点CPU内部寄存器的内容。线程切换是内核保存当前线程上下文,从堆栈中恢复下一个线程上下文,开始运行新线程的过程。2、线程优先级多线程系统中,每个线程有优先级,RTOS根据优先级调度,优先级高的线程先运行。优先级反转是高优先级线程等待低优先级线程释放资源的现象,优先级继承可解决此问题。RTOS中的资源是被线程占用的实体,包括输入/输出设备、变量、结构体等。涉及共享资源、互斥与死锁等概念。4、资源线程间通信是线程间信息交换,实现线程间同步及数据传输,方式有事件、消息队列、信号量、互斥量等。3、线程间通信1.2.3线程类其他基本概念9/19线程的三要素、四种状态及三种基本形式1.3PART-实时操作系统应用开发技术01线程函数是线程要完成具体功能的程序,存储在Flash区。线程函数需“登记”,设定优先级、堆栈大小、编号等,才能被RTOS内核调度运行。线程函数02线程堆栈是独立于线程函数的RAM,按“先进后出”策略组织,用于保存线程运行过程中的局部变量、返回地址、上下文等。线程堆栈03线程描述符是关联线程属性的程序控制块,记录线程的各个属性。多个线程的线程描述符组成链表,存储于RAM中,RTOS通过线程描述符管理线程。线程描述符1.3.1线程的三要素11/19(1)终止态(Terminated,Inactive):线程已经完成或被删除,不再需要使用CPU。(2)阻塞态(Blocked):又可称为“挂起态”。线程未准备好,不能被激活,因为该线程需要等待一段时间或某些情况发生;当等待时间到或等待的情况发生时,该线程才变为就绪态,处于阻塞态的线程描述符存放于等待列表或延时列表中。(3)就绪态(Ready):线程已经准备好可以被激活,但未进入激活态,因为其优先级等于或低于当前的激活线程,一旦获取CPU的使用权就可以进入激活态,处于就绪态的线程描述符存放于就绪列表中。(4)激活态(Active,Running):又称“运行态”,该线程在运行中,线程拥有CPU使用权。1、线程状态的基本含义1.3.2线程的四种状态12/19RTOS线程的四种状态是动态转换的,有的情况是系统调度自动完成,有的情况是用户调用某个系统函数完成,有的情况是等待某个条件满足后完成。。2、线程状态之间的转换1.3.2线程的四种状态13/191.3.3线程的三种基本形式1.单次执行线程单次执行线程是创建后仅执行一次、完成后即被销毁或阻塞的线程,其函数结构包含初始化、执行和销毁或阻塞三部分。初始化部分负责变量定义与赋值、打开所需设备等;执行部分实现线程的基本功能;销毁或阻塞部分则通过调用相应函数将线程从列表中移除,其中销毁会停止线程运行并回收堆栈空间等所有资源,阻塞仅设置线程描述符状态为阻塞。voidthread_a(uint32_tinitial_data){ //初始化部分 //线程体部分
//线程函数销毁或阻塞}线程函数结构如下:14/191.3.3线程的三种基本形式2.周期执行线程周期执行线程是需按一定周期重复执行的线程,其函数结构的初始化部分与单次执行线程相同,包括变量定义赋值、打开设备等操作;不同之处在于,周期执行线程的函数体包含永久循环,且线程内通常通过延时函数、等待事件或消息等代码主动进入阻塞状态,待条件满足后重新进入就绪态,以此实现周期性的执行逻辑。voidthread_a(uint32_tinitial_data){ //初始化部分 …… //线程体部分
while(1) { //循环体部分 }}线程函数结构如下:15/191.3.3线程的三种基本形式3.资源驱动线程资源驱动线程是操作系统特有的一种线程形式,其资源指信号量、事件等线程通信与同步方法。该线程的执行时间不确定,只有等待的资源可用时才转入就绪态,否则加入等待列表。其函数结构的初始化和线程体部分与单次、周期执行线程类似,主要区别在于在线程体执行前会调用等待资源函数,以等待资源实现线程体功能。这种线程因操作系统下的资源共享使用问题而产生,也引出了线程同步与通信问题。voidthread_a(uint32_tinitial_data){ //初始化部分
…… while(1) { //调用等待资源函数
//线程体部分}线程函数结构如下:16/19本章小结1.4PART-实时操作系统应用开发技术01RTOS下编程与NOS下编程相比,有调度者指
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年健康管理师(健康管理服务社会效益)自测试题及答案
- 2026年健康管理师(健康管理服务绩效考核)自测试题及答案
- 职业成长规范承诺书3篇
- 网络化组织协同机制
- 城市口袋公园春季植物景观色彩配置视觉偏好实验方法
- 采购订单款项支付催办函(7篇)
- 西点工程就业前景分析
- 航运安全生产条例讲解
- 券商运营岗规划
- 程序错误检测与修复机制研究
- 2026江西省江盐集团盐品事业部招聘24人笔试参考题库及答案解析
- 2026年危险废物经营许可证管理办法题库及答案
- 安全管理人员考勤制度
- 运维技术人员考核制度
- 起重安全生产管理制度
- (完整版)泵站工程监理实施细则
- 模具钳工技能培训
- 2025年会同县招教考试备考题库及答案解析(夺冠)
- 丽思卡尔顿介绍
- 2026年高考地理二轮复习备考策略讲座
- 2026宝洁(中国)秋招面试题及答案
评论
0/150
提交评论