RT-Thread(RTT)的内核框架和线程调度


前言

了解RTT的内核框架和线程调度


一、内核框架

1、内核处于硬件层之上,内核存在的作用是管理硬件,且同时为应用层提供相应的方法(接口函数)

在这里插入图片描述

2、内核包含了两部分,一是内核库,二是实时内核实现

  1. 内核库(Kernel Library):内核库是RT-Thread的基础设施。内核库提供了线程管理、内存管理、设备管理、时钟管理、信号量、消息队列等基本功能,这些功能可以被应用程序调用和使用。内核库提供了一些常用的接口和数据结构。

  2. 实时内核实现(Real-time Kernel Implementation):实时内核实现是RT-Thread的核心部分,它是RT-Thread实现实时调度和多任务管理的关键。实时内核实现包括调度器、任务管理、中断管理、同步机制等,它负责实时任务的调度和管理,保证任务按照优先级和时间片的规则进行执行,并提供了中断处理和同步机制,以满足实时系统对任务响应性和并发性的要求。

总的来说,内核库提供了基本的功能和服务,而实时内核实现则负责实现实时调度和多任务管理的核心功能。在这里插入图片描述

3、内核最小的资源占用情况是 3KB ROM,1.2KB RAM。

  1. ROM(只读存储器):ROM是一种只能读取数据而不能写入或修改数据的存储器。它通常用来存储固定的程序代码和数据,如系统启动代码、固件、固定配置数据等。ROM在制造时被写入数据,并且在正常操作期间不会被改变。常见的ROM类型包括ROM、PROM(可编程ROM)、EPROM(可擦写可编程ROM)和EEPROM(电可擦写可编程ROM)。

  2. RAM(随机访问存储器):RAM是一种可以读取和写入数据的存储器。它用于临时存储程序和数据,以供CPU进行快速访问。与ROM不同,RAM的内容可以被多次写入和修改。当计算机或设备断电时,RAM中的数据将会丢失。常见的RAM类型包括SRAM(静态RAM)和DRAM(动态RAM)。SRAM速度快、稳定,但成本较高;DRAM容量大、成本较低,但速度相对较慢。

二、线程调度

1、线程是 RT-Thread 操作系统中最小的调度单位

2、线程调度算法是基于优先级的全抢占式多线程调度算法,即在系统中除了中断处理函数、调度器上锁部分的代码和禁止中断的代码是不可抢占的之外,系统的其他部分都是可以抢占的,包括线程调度器自身。

3、支持 256 个线程优先级(也可通过配置文件更改为最大支持 32 个或 8 个线程优先级,针对 STM32 默认配置是 32 个线程优先级),0 优先级代表最高优先级,最低优先级留给空闲线程使用;

4、支持创建多个具有相同优先级的线程,相同优先级的线程间采用时间片的轮转调度算法进行调度,使每个线程运行相应时间;

5、调度器在寻找那些处于就绪状态的具有最高优先级的线程时,所经历的时间是恒定的,系统也不限制线程数量的多少,线程数目只和硬件平台的具体内存相关。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

先睡个好觉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值