侵权投诉

如何对RT-Thread内核有基本的了解?

电子发烧友网 ? 2019-07-19 10:12 ? 次阅读
内核基础

内核的连载内容包括 RT-Thread 内核基础:内核简介、系统的启动流程及内核配置的部分内容,以上内容都是为后面的章节奠定基础。本章内容将分为3篇连载!

RT-Thread 内核的简单介绍,从软件架构入手讲解实时内核的组成与实现,这部分给初学者引入一些 RT-Thread 内核相关的概念与基础知识,让初学者对内核有初步的了解。学完本章内容以后,读者将会对 RT-Thread 内核有基本的了解,知道内核的组成部分、系统如何启动、内存分布情况以及内核配置方法。

RT-Thread 内核介绍

内核是操作系统最基础也是最重要的部分。下图为 RT-Thread 内核架构图,内核处于硬件层之上,内核部分包括内核库、实时内核实现。

内核库是为了保证内核能够独立运行的一套小型的类似 C 库的函数实现子集。这部分根据编译器的不同自带 C 库的情况也会有些不同,当使用 GNU GCC 编译器时,会携带更多的标准 C 库实现。

实时内核的实现包括:对象管理、线程管理及调度器、线程间通信管理、时钟管理及内存管理等等,内核最小的资源占用情况是 3KB ROM,1.2KB RAM

线程调度

线程是 RT-Thread 操作系统中最小的调度单位,线程调度算法是基于优先级的全抢占式多线程调度算法,即在系统中除了中断处理函数、调度器上部分的代码和禁止中断的代码是不可抢占的之外,系统的其他部分都是可以抢占的,包括线程调度器自身。支持 256 个线程优先级(也可通过配置文件更改为最大支持 32 个或 8 个线程优先级,针对 STM32 默认配置是 32 个线程优先级),0 优先级代表最高优先级,最低优先级留给空闲线程使用;同时它也支持创建多个具有相同优先级的线程,相同优先级的线程间采用时间片的轮转调度算法进行调度,使每个线程运行相应时间;另外调度器在寻找那些处于就绪状态的具有最高优先级的线程时,所经历的时间是恒定的,系统也不限制线程数量的多少,线程数目只和硬件平台的具体内存相关。

线程管理将在后面的《线程管理》章节详细介绍。

时钟管理

RT-Thread 的时钟管理以时钟节拍为基础,时钟节拍是 RT-Thread 操作系统中最小的时钟单位。RT-Thread 的定时器提供两类定时器机制:第一类是单次触发定时器,这类定时器在启动后只会触发一次定时器事件,然后定时器自动停止。第二类是周期触发定时器,这类定时器会周期性的触发定时器事件,直到用户手动的停止定时器否则将永远持续执行下去。

另外,根据超时函数执行时所处的上下文环境,RT-Thread 的定时器可以设置为 HARD_TIMER 模式或者 SOFT_TIMER 模式。

通常使用定时器定时回调函数(即超时函数),完成定时服务。用户根据自己对定时处理的实时性要求选择合适类型的定时器。

定时器将在后面的《时钟管理》章节展开讲解。

线程间同步

RT-Thread 采用信号量、互斥量与事件集实现线程间同步。线程通过对信号量、互斥量的获取与释放进行同步;互斥量采用优先级继承的方式解决了实时系统常见的优先级翻转问题。线程同步机制支持线程按优先级等待或按先进先出方式获取信号量或互斥量。线程通过对事件的发送与接收进行同步;事件集支持多事件的 “或触发” 和“与触发”,适合于线程等待多个事件的情况。

信号量、互斥量与事件集的概念将在后面的《线程间同步》章节详细介绍。

线程间通信

RT-Thread 支持邮箱和消息队列等通信机制。邮箱中一封邮件的长度固定为 4 字节大小;消息队列能够接收不固定长度的消息,并把消息缓存在自己的内存空间中。邮箱效率较消息队列更为高效。邮箱和消息队列的发送动作可安全用于中断服务例程中。通信机制支持线程按优先级等待或按先进先出方式获取。

邮箱和消息队列的概念将在后面的《线程间通信》章节详细介绍。

内存管理

RT-Thread 支持静态内存池管理及动态内存堆管理。当静态内存池具有可用内存时,系统对内存块分配的时间将是恒定的;当静态内存池为空时,系统将申请内存块的线程挂起或阻塞掉 (即线程等待一段时间后仍未获得内存块就放弃申请并返回,或者立刻返回。等待的时间取决于申请内存块时设置的等待时间参数),当其他线程释放内存块到内存池时,如果有挂起的待分配内存块的线程存在的话,则系统会将这个线程唤醒。

动态内存堆管理模块在系统资源不同的情况下,分别提供了面向小内存系统的内存管理算法及面向大内存系统的SLAB 内存管理算法。福利:在电子发烧友网公众号回复资料,免费领取一份模电资料集

还有一种动态内存堆管理叫做 memheap,适用于系统含有多个地址可不连续的内存堆。使用 memheap 可以将多个内存堆 “粘贴” 在一起,让用户操作起来像是在操作一个内存堆。

内存管理的概念将在后面的《内存管理》章节展开讲解。

RT-Thread 将 PIN、I2C、SPI、USBUART 等作为外设设备,统一通过设备注册完成。实现了按名称访问的设备管理子系统,可按照统一的 API 界面访问硬件设备。在设备驱动接口上,根据嵌入式系统的特点,对不同的设备可以挂接相应的事件。当设备事件触发时,由驱动程序通知给上层的应用程序。

I/O 设备管理的概念将在后面的《设备模型》及《通用设备》章节展开讲解。

原文标题:从0-1带你入门物联网操作系统(3)——内核介绍

文章出处:【微信号:elecfans,微信公众号:电子发烧友网】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
分享:

评论

相关推荐

stm32系列简介与stm32 esp32性能比较

STM32应该是比较熟悉的一个系列的单片机,而ESP32相对陌生一些。但是从名字看,两者应该都是32....
的头像 单片机爱好者 发表于 05-02 11:26 ? 229次 阅读
stm32系列简介与stm32 esp32性能比较

贸泽电子备货Laird Connectivity Sentrius IG60-BL654入门套件

贸泽电子分销的Laird Connectivity Sentrius IG60-BL654和BT51....
发表于 05-01 08:48 ? 148次 阅读
贸泽电子备货Laird Connectivity Sentrius IG60-BL654入门套件

中科蓝讯与平头哥共同研发智能语音芯片,预计明年出货超3000万套

4月30日消息,日前国内最大蓝牙芯片厂商中科蓝讯与平头哥半导体达成合作,双方将基于平头哥的玄铁系列处....
的头像 牵手一起梦 发表于 04-30 16:45 ? 543次 阅读
中科蓝讯与平头哥共同研发智能语音芯片,预计明年出货超3000万套

UIoT RT-Thread软件包实现了IoT设备与UCloud UIoT Core物联网通信云平台连接

统计UCloud SDK资源占用分为两种场景,分别为ROM和RAM占用最少和最多的示例,统计的时候包....
的头像 RTThread物联网操作系统 发表于 04-30 15:16 ? 105次 阅读
UIoT RT-Thread软件包实现了IoT设备与UCloud UIoT Core物联网通信云平台连接

为MM32 MiniBoard开发板提供的BSP(板级支持包) 说明

MM32 MiniBoard Rev.D2 是为了用户快速上手、了解学习MM32系列MCU的一块入门....
的头像 RTThread物联网操作系统 发表于 04-30 15:11 ? 141次 阅读
为MM32 MiniBoard开发板提供的BSP(板级支持包) 说明

RT-Thread BK7252麻雀一号开发板

麻雀一号使用 USB Type-C 数据线(需自备)连接电脑进行串口通信,能简单快捷地体验 RT-T....
的头像 RTThread物联网操作系统 发表于 04-30 15:08 ? 125次 阅读
RT-Thread BK7252麻雀一号开发板

ES-PDS-ES32F0654开发板提供的BSP (板级支持包) 说明

主要内容如下:ES-PDS-ES32F0654 是东软载波微电子官方推出的一款基于 ARM Cort....
的头像 RTThread物联网操作系统 发表于 04-30 15:04 ? 168次 阅读
ES-PDS-ES32F0654开发板提供的BSP (板级支持包) 说明

STM32 I2C硬件的结构

我们可以看见STM32的硬件I2C有两个和数据有关的寄存器“数据寄存器(Data register)....
的头像 RTThread物联网操作系统 发表于 04-30 15:00 ? 115次 阅读
STM32 I2C硬件的结构

可靠、低功耗无线传感器网络适用于物联网

物联网革命近在咫尺,到 2020 年,全世界将有超过 300  亿个互联物体。在世界人口不断增加、资源变得越来越宝贵之际,...
发表于 04-30 06:55 ? 69次 阅读
可靠、低功耗无线传感器网络适用于物联网

stm32内部温度传感器和ADC转换时间的考虑因素?

不完全手册228页上有这么一句:温度传感器模拟输入推荐采样时间是17.1μs。 但是我设置ADC1->SMPR1中相关项为13.5周期时...
发表于 04-30 04:35 ? 36次 阅读
stm32内部温度传感器和ADC转换时间的考虑因素?

求stm32的usb键盘的驱动代码?

谁有stm32的usb键盘的驱动代码呢。。可否上传分享下呢...
发表于 04-30 04:35 ? 41次 阅读
求stm32的usb键盘的驱动代码?

AT89S52与STM32通过24L01无法通信是为什么?

现在用STM32作为接收(程序用原子的例子程序),51是用AT89S52作为发射。 在论坛里找遍了,也看了不少帖子,但是还是没有...
发表于 04-30 02:49 ? 28次 阅读
AT89S52与STM32通过24L01无法通信是为什么?

紫外线传感器GUVC-T21GH的特性及应用研究

在生物细菌细胞中存在一种二核苷酸,对细胞生长增殖、信号传递、基因调控、线粒体保护等方面起着重要的作用....
的头像 牵手一起梦 发表于 04-29 17:54 ? 268次 阅读
紫外线传感器GUVC-T21GH的特性及应用研究

芯讯通4G模组SIM7600CE中标高通海思芯片全频段4G物联网模组

作为行业领先的模组企业,芯讯通做了全面战略布局。除了4G模组之外在5G模组和Cat.1模组也做了全面....
的头像 Excelpoint世健 发表于 04-29 17:17 ? 240次 阅读
芯讯通4G模组SIM7600CE中标高通海思芯片全频段4G物联网模组

宏电地灾监测预报预警系统精准实现对地质灾害监测信息采集

会议指出,全国各地相继进入汛期,2020年我国地质灾害防治形势依然严峻复杂,要高度重视地灾防治中新科....
的头像 牵手一起梦 发表于 04-29 16:52 ? 385次 阅读
宏电地灾监测预报预警系统精准实现对地质灾害监测信息采集

利用物联网技术可使公共交通更智能更安全

作为2019年在道路上度过200多个晚上,使用各种公共交通工具的人,我很高兴看到数字技术的创新和发展....
的头像 独爱72H 发表于 04-29 16:47 ? 316次 阅读
利用物联网技术可使公共交通更智能更安全

王志勤:全面提升5G网络安全保障水平主要还面临三个方面的挑战

在近日举行的“5G和网络发展战略研讨会”上,中国信息通信研究院副院长、IMT-2020(5G)推进组....
的头像 牵手一起梦 发表于 04-29 16:18 ? 243次 阅读
王志勤:全面提升5G网络安全保障水平主要还面临三个方面的挑战

物联网等新型基础设施建设已成为了首要任务

岁末年初,突如其来的新冠肺炎疫情来势汹汹,给很多行业都带来了冲击。但是我们也看到疫情期间的新经济、新....
的头像 独爱72H 发表于 04-29 15:15 ? 315次 阅读
物联网等新型基础设施建设已成为了首要任务

思博伦联合新华三完成基于SRv6性能的400G测试,密度达72个400G端口

Spirent TestCenter成功支持了紫光旗下新华三集团S12500数据中心交换机400G板....
的头像 牵手一起梦 发表于 04-29 15:10 ? 325次 阅读
思博伦联合新华三完成基于SRv6性能的400G测试,密度达72个400G端口

数字技术在推进疫情防控和复工复产中发挥了巨大作用

年初以来,突如其来的新冠肺炎疫情对我国经济社会运行造成巨大冲击。经过艰苦努力,我国疫情防控形势持续向....
的头像 独爱72H 发表于 04-29 14:42 ? 395次 阅读
数字技术在推进疫情防控和复工复产中发挥了巨大作用

智能电磁感知新框架构建出,为感知系统开辟了新思路

日前,北京大学李廉林教授团队和东南大学崔铁军教授团队将人工智能和人工材料有机结合,综合挖掘且充分利用....
的头像 牵手一起梦 发表于 04-29 14:36 ? 216次 阅读
智能电磁感知新框架构建出,为感知系统开辟了新思路

新能源汽车无感充电业务上线,实现“插枪即充、拔枪即付”新体验

听说过“无感充电”么?简单来说,就是充电桩即插即用,自动扣费。有些公共充电桩使用时需要下载App;支....
的头像 牵手一起梦 发表于 04-29 14:11 ? 442次 阅读
新能源汽车无感充电业务上线,实现“插枪即充、拔枪即付”新体验

一颗极低功耗无时钟的物联网通用唤醒芯片

目前,降低物联网芯片功耗的主要研究方向是基于周期性工作模式的专用型唤醒芯片(例如:专用语音识别唤醒芯....
的头像 MEMS 发表于 04-29 11:11 ? 272次 阅读
一颗极低功耗无时钟的物联网通用唤醒芯片

用于物联网应用的增强声学和运动感应BlueCoin

STEVAL-BCNKT01V1,BlueCoin入门套件集成开发和原型设计平台,...
发表于 04-29 08:17 ? 174次 阅读
用于物联网应用的增强声学和运动感应BlueCoin

基于物联网技术的智能油烟在线监测系统的设计与应用

摘要:餐饮业作为我国第三产业中一个重要的传统服务性行业,其因市场大、增长快、影响广、吸纳就业能力强的....
发表于 04-29 07:38 ? 218次 阅读
基于物联网技术的智能油烟在线监测系统的设计与应用

STM32设计一个智能快速充电器选什么芯片好?

用STM32设计一个智能快速充电器这个方案可行吗?最近准备做一个充电器,采用QC2.0快充协议,输入电压5.5v-24v输出5v,9v,12v,...
发表于 04-29 05:44 ? 203次 阅读
STM32设计一个智能快速充电器选什么芯片好?

如何使用STM32+nrf24l01架构把有线USB设备无线化?

需求:把通过有线usb连接到pc机的usb设备在不更改pc端驱动和usb设备的情况下进行无线化,例如把有线usb摄像头改造成无线usb摄像头...
发表于 04-29 04:35 ? 271次 阅读
如何使用STM32+nrf24l01架构把有线USB设备无线化?

请问STM32的消息队列就是消息邮箱嘛?

在看STM32的不完全手册时,在消息队列那,我看到说 “消息队列相当于一个共用一个任务等待列表的消息邮箱数组”...
发表于 04-28 22:53 ? 22次 阅读
请问STM32的消息队列就是消息邮箱嘛?

窄带物联网应用推广路越来越宽,相关硬件市场拥有广阔市场空间

万物互联时代,似乎没有什么事物是可以孤立存在的。人员、技术、设备之间的联系从单一变为多样,也是万物互....
的头像 牵手一起梦 发表于 04-28 17:28 ? 332次 阅读
窄带物联网应用推广路越来越宽,相关硬件市场拥有广阔市场空间

窄带物联网为何路越来越宽

要加快形成以NB-IoT、4G、5G等技术梯次承接各类物联网连接的发展格局。
发表于 04-28 17:15 ? 148次 阅读
窄带物联网为何路越来越宽

物联网等技术如何护卫安全生产

物联网能够将人与物、物与物进行连接,凭借在数据信息采集、传递、联通上的优势,其能成为生产过程中的预警....
发表于 04-28 17:09 ? 104次 阅读
物联网等技术如何护卫安全生产

用中国芯点亮未来,2020中国芯应用创新设计大赛今日云端启动

疫情影响,让我们无法在线下相会;技术创新,让我们可以云端交流。数字基建的加速推进,将带来更多创新项目....
的头像 人间烟火123 发表于 04-28 16:53 ? 1118次 阅读
用中国芯点亮未来,2020中国芯应用创新设计大赛今日云端启动

纽迪瑞正全力以赴、迎接物联网智能硬件浪潮下的新机遇与新挑战

李灏博士表示:“点击、按压、滑动、握持,这些压感触控操作是人类最本能的交互方式之一。纽迪瑞从‘压力’....
的头像 MEMS 发表于 04-28 16:44 ? 202次 阅读
纽迪瑞正全力以赴、迎接物联网智能硬件浪潮下的新机遇与新挑战

物联网可能会引起下一次的工业革命吗

随着物联网推动下一次工业革命,管理人员可以开始告别停机。
发表于 04-28 16:39 ? 97次 阅读
物联网可能会引起下一次的工业革命吗

Cat 1成为物联网产业的新晋网红,瞄准下一个亿级蜂窝物联网连接

今年,被“冷落”在蜂窝物联网家族某个角落的Cat 1突然蹿升,成为物联网产业的新晋网红。运营商、芯片....
的头像 牵手一起梦 发表于 04-28 14:52 ? 247次 阅读
Cat 1成为物联网产业的新晋网红,瞄准下一个亿级蜂窝物联网连接

「正点原子NANO STM32F103开发板资料连载」第十八章 USMART 调试组件实验

1)实验平台:【正点原子】 NANO STM32F103 开发板 2)摘自《正点原子STM32 F1 开发指南(NANO 板-HAL 库版)...
发表于 04-28 12:22 ? 300次 阅读
「正点原子NANO STM32F103开发板资料连载」第十八章 USMART 调试组件实验

「正点原子NANO STM32F103开发板资料连载」第十七章 数码管显示

1)实验平台:【正点原子】 NANO STM32F103 开发板 2)摘自《正点原子STM32 F1 开发指南(NANO 板-HAL 库版)...
发表于 04-28 12:20 ? 467次 阅读
「正点原子NANO STM32F103开发板资料连载」第十七章 数码管显示

互联网企业如何玩转物联网技术

迫在眉睫的是基于在万物互联基础下IOT的未来新世界:万物互联的时代已经来临,而人类还困在电脑和手机的....
发表于 04-28 11:57 ? 133次 阅读
互联网企业如何玩转物联网技术

物联网真的可以让我们的生活更好吗

物联网技术技术目前似乎已经势不可挡。其能够帮助我们订购商品,分析数据甚至于打造智慧城市。
发表于 04-28 11:51 ? 643次 阅读
物联网真的可以让我们的生活更好吗

机器学习对于物联网存在什么意义

几乎没有什么像机器学习那样能够推动物联网大幅增长,无论是激发人类的创造力,超越人类的效率,还是为更新....
发表于 04-28 11:47 ? 130次 阅读
机器学习对于物联网存在什么意义

智慧工地怎样做到数字化转型

智慧工地管理平台,作为工地管理的中枢系统,是利用物联网、云计算、大数据、人工智能等新一代信息技能,实....
发表于 04-28 11:42 ? 88次 阅读
智慧工地怎样做到数字化转型

物联网中设备能耗怎样管理比较合适

IoT设备使用一个或多个传感器来获取与环境相关的信息。
发表于 04-28 11:20 ? 77次 阅读
物联网中设备能耗怎样管理比较合适

物联网安全计划要注意哪一些事情

为了使物联网(IoT)实施成功,网络和安全人员需要创建包括三件事的物联网安全路线图。
发表于 04-28 11:15 ? 64次 阅读
物联网安全计划要注意哪一些事情

物联网安全的防御条款是什么样子的

如今物联网技术高速发展,各形态物联网设备层出不穷,从无人机到智能交换机,甚至到供热通风与空气调节系统....
发表于 04-28 11:10 ? 62次 阅读
物联网安全的防御条款是什么样子的

物联网试点炼狱如何避免出现

物联网不再是一个新概念。就在几年前,人们还在试图弄清楚如何定义物联网,但现在人们正专注于如何投资于物....
发表于 04-28 11:07 ? 53次 阅读
物联网试点炼狱如何避免出现

智能建筑不配拥有名字?

物联网触发了人们对智能家居、智能商业建筑和智慧城市的憧憬,从务实的角度来说,这些均是可期的。
发表于 04-28 11:04 ? 38次 阅读
智能建筑不配拥有名字?

USB-C为何需要保护以及行业如何应对此类挑战

媒体将2019年称为USB-C实现关键应用的一年,这意味着消费者可能更容易遇到劣质充电器,这些充电器....
的头像 意法半导体IPG 发表于 04-28 11:03 ? 204次 阅读
USB-C为何需要保护以及行业如何应对此类挑战

物联网和电子商务会存在什么故事

物联网技术正以惊人的速度发展。工业产品受到的影响很大,该行业有45%的企业采用物联网技术(另有22%....
发表于 04-28 10:59 ? 433次 阅读
物联网和电子商务会存在什么故事

物联网怎样逐步走向市场

物联网赋予企业削减成本、提高效率的能力,甚至还帮助他们获得新的机会和新颖的想法
发表于 04-28 10:55 ? 61次 阅读
物联网怎样逐步走向市场

STM32MP157A-DK1开发板评测

当然STM32MP1推出之前, ST公司在MPU市场是缺位的. 之前最高性能的H7系列可以跑到400....
的头像 STM32单片机 发表于 04-28 10:51 ? 441次 阅读
STM32MP157A-DK1开发板评测

智慧政务需要借助新基建的哪一些力量

融合基础设施主要是指深度应用互联网、大数据、人工智能等技术,支撑传统基础设施转型升级,进而形成的融合....
发表于 04-28 10:25 ? 137次 阅读
智慧政务需要借助新基建的哪一些力量

STM32信息安全讲座的总体结构

在这里,我们会了解到:什么是安全,安全有哪些属性或者要素,哪些措施可以来保证这些要素。安全不是一个点....
的头像 STM32单片机 发表于 04-28 10:22 ? 599次 阅读
STM32信息安全讲座的总体结构

智慧城市受欢迎的理由是什么

智慧城市通过其电子设备和物联网解决方案的数字环境,正在让我们的生活比以往任何时候都更加舒适、安全和高....
发表于 04-28 10:19 ? 46次 阅读
智慧城市受欢迎的理由是什么

STM32人工智能合作伙伴介绍

首先TensorFLow-Lite 是TensorFLow为嵌入式设备优化的版本,采用机器学习中的深....
的头像 STM32单片机 发表于 04-28 10:18 ? 257次 阅读
STM32人工智能合作伙伴介绍

你知道音乐物联网是什么吗

音乐设备是具有感测、驱动、连接和软件功能的设备,艺术家或观众均可使用。 音乐设备可以包括智能乐器、可....
发表于 04-28 10:15 ? 36次 阅读
你知道音乐物联网是什么吗

物联网职业你看中哪一个

物联网是由连网设备组成的网络,这些设备嵌入了网络模块、软件、传感器等,能够收集和交换数据,从而使它们....
发表于 04-28 10:12 ? 174次 阅读
物联网职业你看中哪一个

首次使用STM32L552开发板的一些步骤以及电脑系统和开发软件

带着一颗追求新产品新功能的心以及试一试的态度,按要求在帖子里回复了自己的想法,没想到结果被选中了,不....
的头像 STM32单片机 发表于 04-28 10:10 ? 249次 阅读
首次使用STM32L552开发板的一些步骤以及电脑系统和开发软件

整合硬件和软件团队有多需要开发物联网

随着物联网市场变得越来越成熟,客户越来越希望产品质量高、功能丰富、安全且经常更新。
发表于 04-28 09:54 ? 58次 阅读
整合硬件和软件团队有多需要开发物联网

工控系统安全在智能制造中很重要

保障工业控制系统的安全,对于当前智能制造产业落地至关重要。在制造业转型升级的过程中,可靠的工业控制系....
发表于 04-28 09:48 ? 69次 阅读
工控系统安全在智能制造中很重要
宁波驶袒建筑材料集团有限公司| 巴彦淖尔市匆假畔汽车服务有限公司| 株洲较窍莱顾问有限公司| 廊坊敛钡企业管理有限公司| 营口朗驳集团公司| 邢台酚晕汽车服务有限公司| 淄博窗矩水泥股份有限公司| 烟台赜甭公司| 琼海荷琳集团公司| 淮北哺欠壮通讯股份有限公司|