草庐IT

LiteOs-a

全部标签

LiteOS内核开发(二)

本章将介绍LiteOS内核中的任务管理模块1.基本概念从系统上来说,任务是资源竞争的最小单元,可以使用或等待CPU的系统资源,独立运行。HUWEILITEOS可以给用户提供多个任务,实现任务通信和切换。任务管理是LiteOS不可裁剪极小内核的一部分功能,主要支持任务的创建,删除,延迟,挂起,恢复等功能,同时支持锁定和解锁任务调度。支持抢占式调度和时间片轮转。2.相关属性任务状态:一般来说,一个任务可以具有为几种不同的状态,即就绪态,阻塞态,运行态和结束态,这四种状态之间的转换关系如图所示。               状态之间的转换一般是在以下条件下进行就绪态→运行态任务创建后进入就绪态,发生

鸿蒙硬件开发:HarmonyOS下的LiteOS-M

前言先来看看HarmonyOS的技术架构:HarmonyOS当前分为以下几种系统类型:轻量系统、小型系统、标准系统。针对不同量级的系统,分别使用了不同形态的内核,在轻量系统上,可以选择LiteOS-M;在小型系统和标准系统上,可以选用LiteOS-A;在标准系统上,可以选用Linux。总的来说,在轻小型系统中,HarmonyOS所使用的内核为LiteOS,在标准系统中使用Linux。而目前HuaweiLiteOS支持多种芯片架构,如Cortex-Mseries、Cortex-Rseries、Cortex-Aseries等。LiteOS有两个应用方向,分别是LiteOS-M和LiteOS-A。L

HI3861学习笔记(8)——LiteOS(CMSIS-RTOS2)事件管理

一、简介1.1事件基本概念事件是一种实现任务间通信的机制,可用于实现任务间的同步,但事件通信只能是事件类型的通信,无数据传输,一个任务可以等等多个事件的发生:可以是任意一个事件发生时唤醒任务进行事件处理;也可以是几个事件都发生后才唤醒任务进行事件处理。事件集合用32位无符号整型变量来表示,每一位代表一个事件。多任务环境下,任务之间往往需要同步操作。事件可以提供一对多、多对多的同步操作。一对多同步模型:一个任务等待多个事件的触发;多对多同步模型:多个任务等待多个事件的触发。任务可以通过创建事件控制块来实现对事件的触发和等待操作。LiteOS的事件仅用于任务间的同步。1.2事件运作机制读事件时,可

LiteOS互斥锁

一、基本概念互斥锁又称互斥信号量,是一种特殊的二值信号量,常用于实现对临界资源的独占式处理。任务使用时,互斥锁处于闭锁状态,使用完毕,处于开锁状态。可以用于两个任务同时向串口发送等情况。二、互斥锁的优先级继承机制任务的优先级,在创建时已经指定,高优先级的任务可以打断低优先级的任务。低优先级的任务在使用互斥锁时,可能被高优先级的任务打断,那么暂时提高低优先级的任务的优先级,让它和高优先级的一样,避免了被抢占,使用完后,任务优先级恢复。三、互斥锁的运行机制(1)互斥锁保护的资源被占用时,无论何种优先级任务想要使用都会被阻塞(2)正在使用互斥锁的任务1比阻塞中的任务2优先级低,暂时把1的优先级提升到

OpenHarmonyOs / LiteOs-a 应用开发

相关文章上一篇:OpenHarmonyOs/LiteOs-a驱动开发文章目录相关文章前言一、应用21.编译应用2.安装应用3.运行应用4.修改一下代码5.其他命令二、应用31.DevEco安装2.新建应用项目3.瞎逼写点字,以后再填坑总结相关文章前言本文瞎逼介绍一下在Ubuntu20.04系统进行OpenHarmonyOs/LiteOs-a应用开发。开发板用的是润和的ipcamera_hispark_taurus,芯片是HI3516DV300。前一篇文章文末写了个测试的应用程序是没有界面的。这篇文章准备整两个有界面的应用。先挖个坑,以后慢慢填,也可能不写了。OpenHarmonyOs应用开发的

LiteOS-M动态内存管理

LiteOS-M动态内存管理LiteOS-M动态内存管理内存池初始化流程内存管理信息内存池管理信息结构和解析内存块信息结构和解析动态内存管理原理内存申请分配内存的算法内存释放内存使用接口LiteOS-M动态内存管理LiteOS-M的动态内存管理将大块的预分配内存,通过最佳适应算法,动态分配给申请者。动态内存分配算法都无法避免内存碎片化,但通过最佳适应算法能够最大限度的减少内存碎片化。代码实现文件:kernel/liteos_m/kernel/mm/los_memory.ckernel/liteos_m/kernel/include/los_memory.h内存池初始化流程LiteOS-M的内存

LiteOS学习---开发环境初识

背景介绍记得电影《一代宗师中》,有这样一句话也是时势使然,某为厂成了面子,欺负它就等于打了国人的脸,至于它担不担得起,另说。早在2015年,华为就推出了这个LiteOS。如果问它和鸿蒙系统有什么关系华为LiteOS是华为2012年提出的适用于物联网嵌入式设备的操作系统,最早提出的目的应该是对标世界上已有的RTOS(实时操作系统,包括FreeRTOS,UCOSII等这些现在都还在广泛应用,耳熟能详的实时操作系统)开发一款国产的RTOS系统。HarmonyOS(鸿蒙操作系统)是华为在2019年8月9日正式发布的操作系统,对标安卓、IOS(未来将发布的欧拉系统才是对标windows,ubantu等面

LiteOS内核开发(四)

本章将介绍LiteOS内核的中断功能1.基本概念与简介中断主要指的是,CPU暂停执行手头的任务,转向执行新任务的过程。在实际的场景中往往是外设的一些任务完成需要CPU的参与,外设就会向CPU发射中断信号以中断CPU当前任务响应外设的需求。与中断相对立的方式是轮询,即CPU主动去查询外设的状态,以做出反应。与轮询这种方式相比,中断可以使得CPU避免花费大量时间查询,等待外设状态,可以提高系统的实时性和执行效率。中断的运作与三种硬件相关:设备、中断控制器、CPU本身设备本身是中断源,负责产生中断并将中断信号传递给中断控制器中断控制器起到一个中转站的作用,在接受外设引脚中断信号的同时,将这些信号传递

linux编译环境下,华为LiteOS初体验(STM32F407)

linux编译环境下,华为LiteOS初体验(STM32F407)1、概述系统:Ubuntu22.04,linux版本号如下Linuxlinux5.15.0-40-generic#43-UbuntuSMPWedJun1512:54:21UTC2022x86_64x86_64x86_64GNU/Linux华为做的这套产品,很像linux,可以进行内核选择,模块选择裁剪等,菜单也做的很像。这样对新手比较友好。当然你也可以按照传统方式将源代码增加到你现在的代码中,进行编译。2、LiteOS编译调试2.1编译错误处理初次make编译系统报错python:没有那个文件或目录make[1]:进入目录“/h

LiteOS + PahoMQTT 连接华为云

文章目录LiteOS+PahoMQTT连接华为云一、前言二、平台端配置2.1创建IOTDA云产品2.2定义产品模型2.3创建属性和命令2.4添加设备三、设备端配置3.1设备端配置3.2连接华为云3.3上传数据3.4接受命令四、代码链接LiteOS+PahoMQTT连接华为云一、前言使用小熊派连接华为云平台,实现数据的上传与下放,软件层使用LiteOS做系统支撑,移植PahoMQTT做通讯二、平台端配置2.1创建IOTDA云产品进入华为云控制台,进入IOTDA中,创建一个产品:2.2定义产品模型进入到产品,创建产品模型2.3创建属性和命令创建模型的温度接受属性创建模型的LED控制命令2.4添加设