• [技术干货] Huawei LiteOS 基础内核【任务入口函数】
    每个新任务得到调度后将执行的函数。该函数由用户实现,在任务创建时,通过任务创建结构体指定。
  • [技术干货] Huawei LiteOS 基础内核【任务优先级】
    优先级表示任务执行的优先顺序。任务的优先级决定了在发生任务切换时即将要执行的任务。在就绪列表中的最高优先级的任务将得到执行。
  • [技术干货] Huawei LiteOS 基础内核【任务ID】
    任务ID,在任务创建时通过参数返回给用户,作为任务的一个非常重要的标识。用户可以通过任务ID对指定任务进行任务挂起、任务恢复、查询任务名等操作。
  • [技术干货] Huawei LiteOS 基础内核【任务】基本概念
    从系统的角度看,任务是竞争系统资源的最小运行单元。任务可以使用或等待CPU、使用内存空间等系统资源,并独立于其它任务运行。Huawei LiteOS的任务模块可以给用户提供多个任务,实现了任务之间的切换和通信,帮助用户管理业务程序流程。这样用户可以将更多的精力投入到业务功能的实现中。Huawei LiteOS是一个支持多任务的操作系统。在Huawei LiteOS中,一个任务表示一个线程。Huawei LiteOS中的任务是抢占式调度机制,同时支持时间片轮转调度方式。高优先级的任务可打断低优先级任务,低优先级任务必须在高优先级任务阻塞或结束后才能得到调度。Huawei LiteOS的任务一共有32个优先级(0-31),最高优先级为0,最低优先级为31。任务状态Huawei LiteOS系统中的每一任务都有多种运行状态。系统初始化完成后,创建的任务就可以在系统中竞争一定的资源,由内核进行调度。任务状态通常分为以下四种:就绪(Ready):该任务在就绪列表中,只等待CPU。运行(Running):该任务正在执行。阻塞(Blocked):该任务不在就绪列表中。包含任务被挂起、任务被延时、任务正在等待信号量、读写队列或者等待读写事件等。退出态(Dead):该任务运行结束,等待系统回收资源。图 1 任务状态示意图任务状态迁移说明:就绪态→运行态:任务创建后进入就绪态,发生任务切换时,就绪列表中最高优先级的任务被执行,从而进入运行态,但此刻该任务依旧在就绪列表中。运行态→阻塞态:正在运行的任务发生阻塞(挂起、延时、获取互斥锁、读消息、读信号量等待等)时,该任务会从就绪列表中删除,任务状态由运行态变成阻塞态,然后发生任务切换,运行就绪列表中剩余最高优先级任务。阻塞态→就绪态(阻塞态→运行态):阻塞的任务被恢复后(任务恢复、延时时间超时、读信号量超时或读到信号量等),此时被恢复的任务会被加入就绪列表,从而由阻塞态变成就绪态;此时如果被恢复任务的优先级高于正在运行任务的优先级,则会发生任务切换,将该任务由就绪态变成运行态。就绪态→阻塞态:任务也有可能在就绪态时被阻塞(挂起),此时任务状态会由就绪态转变为阻塞态,该任务从就绪列表中删除,不会参与任务调度,直到该任务被恢复。运行态→就绪态:有更高优先级任务创建或者恢复后,会发生任务调度,此刻就绪列表中最高优先级任务变为运行态,那么原先运行的任务由运行态变为就绪态,依然在就绪列表中。运行态→退出态运行中的任务运行结束,任务状态由运行态变为退出态。退出态包含任务运行结束的正常退出以及Invalid状态。例如,未设置分离属性(LOS_TASK_STATUS_DETACHED)的任务,运行结束后对外呈现的是Invalid状态,即退出态。阻塞态→退出态阻塞的任务调用删除接口,任务状态由阻塞态变为退出态。
  • [技术干货] Huawei LiteOS概述
    Huawei LiteOS 是华为面向物联网领域开发的一个基于实时内核的轻量级操作系统。基础内核支持任务管理、内存管理、时间管理、通信机制、中断管理、队列管理、事件管理、定时器等操作系统基础组件,更好地支持低功耗场景,支持 Tickless 机制,支持定时器对齐。Huawei LiteOS 自开源社区发布以来,围绕 NB-IoT 物联网市场从技术、生态、解决方案、商用支持等多维度使能合作伙伴,构建开源的物联网生态,目前已经聚合了 50+ MCU 和解决方案合作伙伴,共同推出一批开源开发套件和行业解决方案,帮助众多行业客户快速的推出物联网终端和服务,客户涵盖抄表、停车、路灯、环保、共享单车、物流等众多行业,为开发者提供 “一站式” 完整软件平台,有效降低开发门槛、缩短开发周期。背景介绍Huawei LiteOS是轻量级的实时操作系统,是华为IoT OS。图 1 Huawei LiteOS Kernel的基本框架图Huawei LiteOS基础内核是最精简的Huawei LiteOS操作系统代码,包括任务管理、内存管理、时间管理、通信机制、中断管理、队列管理、事件管理、定时器等操作系统基础组件,可以单独运行。Huawei LiteOS Kernel的优势高实时性,高稳定性。超小内核,基础内核体积可以裁剪至不到10K。低功耗。支持功能静态裁剪。
  • [问题求助] LiteOS系统任务栈被撑爆是什么原因
    LiteOS系统任务栈被撑爆是什么原因
  • [问题求助] LiteOS关于HC32F4A0休眠唤醒问题
    ↵【背景】:HC32F4A0可设置为休眠模式,休眠时代码执行停止在休眠的位置,唤醒后继续从停止的位置开始执行【问题现象】:芯片唤醒后休眠芯片的task必须一直占用CPU,不能通过LOS_TaskDelay、LOS_QueueRead等方式让task放权也不能使用LOS_TaskDelete删除该task,否则都会导致系统卡死,这个该怎么解决?
  • [问题求助] 能不能提供个Keil版本的
    keil版本的版本太老了,不知道是什么原因现在不支持。如果其它原因靠虑不支持的话,麻烦把 LiteOS Studio搞简单一点嘛,我偿试装机多次都没能成功,组件也复杂。这会给我们提高很高的门坎。用着用着都不想再用了,花时间和精力在开始的配置上挺费事的。
  • [问题求助] Cloud_STM32F429IGTx_FIRE集成Lwip结构体、声明、宏、枚举冲突。
    Cloud_STM32F429IGTx_FIRE集成Lwip,与libc库结构体、函数声明、宏定义、枚举产生冲突,LWIP_LITEOS_COMPAT本意是用来防止冲突的,结果尽是造成冲突的。为什么要libc与lwip混用,源文件包含既包含libc头文件又包含lwip头文件,模块耦合度太强,跟架构图中展示出来的层次分明根本就不一样啊。而且,新的补丁没人review过的吗,尽然出现语法错误?还是,#defeine是什么新语法吗,?恕我才疏学浅。
  • [问题求助] 关于STM32L431移植liteos低功耗
    目前项目进行低功耗测试,裸机测试低功耗几个ua。加上liteos框架之后变成100多ua。相同的代码,唯一的区别就是低功耗代码在任务中执行。滴答定时器也给暂停了。请问多出来的100框架怎么修改?
  • [问题求助] LiteOS移植到HC32F4A0开发板上发现不支持64位的除法运算,该咋解决?哪里没配置好?
    LiteOS移植到HC32F4A0开发板上发现不支持64位的除法运算,该咋解决?哪里没配置好?
  • [问题求助] Liteos动态加载
    现在又动态加载模块的代码吗?看到在文档里面和程序里面是有相关的开关的,但是没有源码。
  • [问题求助] LiteOS能够进行Fuzzing模糊测试吗?
    LiteOS能否使用fuzz编译器进行插桩然后使用qemu等虚拟机进行模糊测试,检测crash
  • [公告] 华为云IoT产品体验活动2022
    点击查看 华为云IoT产品体验活动2022一、为什么要参与IoT产品体验?华为云IoT为物联网行业提供设备接入(IoTDA)、物联网边缘(IoTEdge)、物联网数据分析(IoTA)等全栈服务,帮助开发者/伙伴轻松、快速构建万物互联的场景化物联网解决方案。本次体验活动提供最高2000元华为云代金券及丰厚奖品,邀请行业开发者对以下服务开展使用体验,通过全面、深度的产品互动,帮助华为云IoT优化迭代,实现产品共创。二、本次活动针对哪些服务?华为云设备接入IoTDA:提供海量设备连接上云、设备和云端双向消息通信、批量设备管理、远程控制和监控、OTA升级、设备联动规则等能力,并可将设备数据灵活流转到华为云其他服务。华为云数据分析IoTA:基于物联网资产模型,整合物联网数据集成,清洗,存储,分析,可视化,为开发者提供一站式服务,降低开发门槛,缩短开发周期,快速实现物联网数据价值变现。华为云IoT边缘IoTEdge:作为物联网边缘“小脑”,在靠近物或数据源头的边缘侧,融合网络、计算、存储、应用核心能力的开放平台,就近提供计算和智能服务,满足行业在实时业务、应用智能、安全与隐私保护等方面的基本需求。三、如何报名体验活动?您需要先填写申请表,审核通过后小助手会通过微信邀请您进入IoT产品体验群并为您发放华为云代金券。点击填写产品体验官申请表四、如何获得积分?在活动页面领取并按照要求完成任务,即可获得相应的积分。不同的任务要求不同,但总的来说,完成任务的质量越高获得的积分数量也会越多。可前点此往活动页查看详情五、积分有什么用?如何获得奖励?我们会定期对开发者获得的积分进行统计并公示。您可以点击查看积分公示,也可以联系小助手兑换相应积分价值的礼品。六、如何获取任务?在活动页面任务领取版块点击相关任务进入任务说明,并按照任务要求提交反馈任务即可。七、如何才算完成任务?使用调研任务:点击填写调研问卷,即视为完成任务。但本调研仅针对使用过华为云IoT相关服务的用户。若您还未使用过,可按体验活动页面指引,先对相关服务进行开发体验,再来填写问卷,完成问卷即可获得3积分,未使用者填写,将不能获得积分。产品优化建议:针对使用过华为云IoT相关服务的用户,对产品提出功能、体验、缺陷等优化建议,预审通过后,根据建议的可行性、与产品的关联度等评估后可获得1~8积分,请务必在建议单中关联对应的产品(IoTDA/IoTEdge/IoTA其中一个)。​内容共创 - 技术博文:要求在华为云博客或CSDN、公众号等渠道分享华为云IoT相关原创技术博客,要求内容完整,逻辑顺畅,图文结合为佳;在单个媒体平台的阅读数≥200;字数1000以上(代码部分不计字数)。博文发布后,请将链接回复到“内容共创 - 技术博文征集“帖评论区。内容共创 - 视频分享:要求在B站、视频号等平台发布华为云IoT相关原创视频。要求视频内容完整,逻辑顺畅,声音画质清晰,分辨率大于1080P,有字幕为佳;播放人数≥200,视频长度5min以上。视频发布后,请将链接回复到“内容共创 - 技术视频征集“帖评论区。内容共创 - 案例分享:要求使用真实/模拟硬件设备,自定义行业场景完成实践案例开发,并将实践过程整理成文档,建议包括整体场景需求、方案设计、硬件选型、嵌入式开发、平台对接、上层应用(大屏、小程序、App等)文档格式及内容框架要求参考:零代码搭建物联网监控大屏合格的文档将再评估后上线至 IoT开发者Demo案例专区 供更多开发者交流学习。完成文档撰写后,请将文档发送到邮箱(iotcooperation@huawei.com),小助手将定期统计、审核博文内容,并记录积分情况。​​​​​​​任何疑问请咨询小助手小助手微信号:hwc-iot,或扫码添加:八、奖励发放须知每位参加活动的用户理解并同意,为联系获奖用户以及奖品发放的需要,用户须在参与活动之时提供诸如姓名、性别、联系方式、电子邮箱、通讯地址等真实个人信息,活动主办方将仅为前述目的以及适用法律限度内收集和使用用户的个人信息(用户在向华为云提交个人信息之前,应阅读、了解华为云《隐私政策声明》;用户参加本活动视为理解并同意华为云《隐私政策声明》,华为云《隐私政策声明》网页地址如下:cid:link_7)。获奖用户在领奖界面填写获奖信息,活动结束且用户填写完整领奖信息后,将统一发出奖品,所有实物奖品包邮,不额外收取任何费用。由于获奖用户自身原因(包括但不限于提供的联系方式有误、身份不符或者通知领奖后超过30天未领取等)造成奖品无法发送的,视为获奖用户放弃领奖。为保证活动的公平公正,华为云有权对恶意刷活动资源(“恶意”是指为获取资源而异常注册账号等破坏活动公平性的行为),利用资源从事违法违规行为的用户收回抽奖及奖励资格。本活动规则由华为云在法律规定范围内进行解释。华为云保留不时更新、修改或删除本活动规则的权利。所有参加本活动的用户,均视为认可并同意遵守《华为云用户协议》,包括以援引方式纳入《华为云用户协议》的《可接受的使用政策》、《法律声明》、《隐私政策声明》、相关服务等级协议(SLA),以及华为云服务网站规定的其他协议和政策(统称为“云服务协议”)的约束。云服务协议链接的网址:cid:link_8如果您不同意本活动规则和云服务协议的条款,请勿参加本活动。
  • [问题求助] 移植shell时合入trace
    移植shell时合入trace,创建trace任务,用于交互的虚拟串口无法打开