嵌入式实时操作系统

嵌入式实时操作系统

从系统对规定时间的敏感性要求来看,实时系统可以分为硬实时系统和软实时系统。

非实时系统:超过规定时间,效用缓慢下降

软实时系统:超过规定时间,效用迅速下降

硬实时系统:超过规定时间,效用立即归零

前后台系统&任务优先级

快速入门RT-Thread

Real Time-Thread

任务是通过线程实现的,任务调度器➡️线程调度器

C语言编写,面向对象

2017.7极简内核NANO版本:3KB Flash、1.2KB RAM

非常适用于成本、功耗受限的场合

RT-Thread软件架构图

RT-Thread精简内核文件夹目录

RT-Thread精简内核工程目录

内核基础

RT-Thread内核及底层结构

内核库是为了保证内核能够独立运行的一套小型类似C库的函数实现子集。

线程调度:

是RT-Thread中最小的调度单位,算法为优先级的全抢占式多线程调度算法(除了中断处理函数、调度器上锁部分的代码和禁止中断的代码不可抢占之外,系统的其他部分都是可以抢占的,包括线程调度器自身。)

支持256个线程优先级,STM32默认32个线程优先级,可通过配置文件更改

0 优先级代表最高优先级

支持多个线程优先级相同:采用算法➡️时间片的轮转调度算法(每个线程运行时间相同)

线程数目只和硬件平台的具体内存相关

时钟管理:

以时钟节拍为基础

两类定时器事件:单次触发定时器,周期触发定时器

线程间同步

采用信号量、互斥量与事件集实现线程间同步

线程间通信

支持邮箱和消息队列等通信机制

内存管理

支持静态内存池管理及动态内存堆管理

I/O设备管理

将I2C等作为外设设备,统一通过设备注册完成

RT-Thread启动流程

startup_stm32f103xe.s➡️C代码,RT-Thread系统功能初始化➡️main()

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 姓名:屈彦维 学号:16020610026 引自:http://www.congwen.net/ArtShow.a...
    怀光_ee48阅读 1,455评论 0 0
  • 文/tangsl(简书作者) 原文链接:http://www.jianshu.com/p/2b993a4b913e...
    西葫芦炒胖子阅读 3,959评论 0 5
  • 又来到了一个老生常谈的问题,应用层软件开发的程序员要不要了解和深入学习操作系统呢? 今天就这个问题开始,来谈谈操...
    tangsl阅读 4,336评论 0 23
  • 往后余生,也许我们不在相遇; 往后余生,也许我们不在交集; 往后余生,也许我们不在了解; 往后余生,我想和你牵手,...
    170218阅读 267评论 0 1
  • 1、你只是觉得自身微小无法评价(伟人,枭雄)能人罢了。但是,普通人的评价也是社会评价的一部分。不光评价的对象要结合...
    加油冲哇阅读 196评论 0 0

友情链接更多精彩内容