华为liteos了解(一)
现在物联网的大势还未定,大家都在争一亩三分地,最后的结果估计也是百花争鸣,作为用户,当然不希望一家独大。
BTW: uIP (micro IP)的作者Adam Dunkels也在搞IoT OS,写了很多轻量级的东西
作者:知乎用户
链接:https://www.zhihu.com/question/30552283/answer/48872923
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
对于物联网是下一个、而且也是更大的风口,几乎没有人会持反对意见,而除了苹果、谷歌和微软这些当下的领导者之外,包括三星、华为、阿里巴巴等错过了智能手机的头班车的企业,也都努力赶在物联网大局既定前发力抢占地盘。
其中,离我们最近的是华为。5月20号,华为在北京召开的华为网络大会上公开了“敏捷网络3.0”方案,该方案被称为“为物联网而生的网络解决方案”。具体内容则由物联网操作系统Liteos、敏捷物联网关、敏捷控制器三部分组成。
华为方面表示,借助于该方案,能够使企业快速构建一张拥有“无尽可能”的物联网基础架构,实现生产、制造、物流等领域的智能化。除以上的方案,华为还另外发布了自家的物联网“1+2+1”战略:其中第一个“1”是指物联网平台,用来集中收集、管理、处理数据后向合作伙伴、行业开放,基于该平台行业伙伴可以开发应用;“2”是指华为的传统优势,即网络接入,包括有线接入和无线接入;最后一个“1”是指华为此次新推出的轻量级物联网操作系统Liteos。
Liteos的系统体积只有10KB,是目前世界上最轻量级的物联网操作系统,同时它是开源的,华为希望能够有更多的第三方伙伴采用该系统,在华为的数据基础上开发行业应用。
华为做Liteos,是为了打造一个物联网版的Android 物联网不是趋势,而是现实。据Gartner预测,到2020年物联网带来的经济附加值将达到1.9万亿美元。因此,各国目前都针对物联网制定了不同的发展战略,如“中国制造2025”、德国的“工业4.0”、和美国的“工业互联网”等。
而就和三星放弃让Tizen在手机上取代Android,反将其放在了一些Android还未涉及、未成气候的领域一样,华为做Liteos,也是汲取了之前在手机上“一步晚、步步晚”的教训,这种希望能够在未来领域中占据先机的行为——也意味着,华为在这块领域中,是以研发者的身份立足的。
具体来看,物联网之所以迟迟发展缓慢,主要就是因为行业标准长期处于竞争当中,无法得到统一,而目前所谓的物联网行业标准,其实是由各种联盟制定的,如AllSeenAlliance技术联盟、开放互联联盟、工业互联网联盟、IEEE学会P2413项目等等,而很多认证标准的冲突与重复,其实都是因为同一联盟内部的企业成员,往往同时参与多个项目和标准之中所导致的。
整个行业犹如一盘散沙,但也充满机遇,这是华为的第一个初衷。 另一方面,物联网的发展也受限于现有网络的低下,如果按华为预计,到2020年,物联网设备数量连接将会接近1000亿(现阶段仅为70亿),新部署的传感器速度将达到每小时200万,到了那个时候,目前的网络不仅难以承担负载,就连现有的网络速率和延时情况,也远不能够确保远程精确控制类工业级产品的安全和可靠——这就需要对现有网络进行升级,而华为本身,就是5G标准制式的研发者之一,顺势去涉足物联网,当然也是情理之中。
再者,物联网的到来,能够很好的串联起华为当下的一些业务——移动终端、运营商网络、芯片、应用等等,这些能够为华为提供探索发展新平台、新产业和新的商业模式的机会,进而抓住更多的消费者和企业市场。
这些,也正是华为抢先推出Liteos的原因。但是,它究竟能不能成呢?
LiteOS并不完美,市场之所以有乱象,是因为纷争正酣。除了各种组织之外,家电厂商、互联网厂商、运营商,也都有着自己的诉求。
这其中,不仅有苹果的HomeKit、谷歌的AndroidHome(暂定名)和收购得来的NestLabs,以及微软的WindowsIoT,包括IBM的智慧城市、英特尔的智能网关、三星的Tizen和SmartThings、华为的Liteos,以及亚马逊、阿里巴巴的云解决方案,都是希望从底层去实现物联网市场领先地位的产品——这些产品在推动物联网标准化的正式完成之前,没人能预言谁可以留到最后。
抽空看了下liteos的wiki.
http://wiki.oiotc.cc/index.php?title=LiteOS
根据这个wiki的信息来看,liteos的整体看上去还是很薄弱的,主要就kernel,WPA2.2,uip.
每个部分凭API描述感觉没什么特别的地方,没有发现针对物联网的专用协议说明,当然没看到源码前也没法确信。
百度上还可以搜到一个liteos架构师的PPT,感兴趣可以了解下,另github上有个liteos的repo,但是无代码。
具体还得看代码~
10.12更新:
华为开放了LiteOS的Kernel: HuaweiLiteOS-物联网
看整个LiteOS的架构和其他物联网平台大同小异,但是其他的组件代码并没释放出来,不过LiteOS和NB-IoT肯定是一对好基友那是跑不离的,华为会在未来在物联网连接上主推NB-IoT
作者:知乎用户
链接:https://www.zhihu.com/question/30552283/answer/48582274
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
至于云端的操作,LiteOS并未给出解决方案。联网这部分只是底层的问题,更大的问题是联网之后干什么的问题——提供这方面的服务才是更大的痛点。
而实际上可以无需系统。AbleCloud方面就是在双密钥认证加密的情况下实现联网,甚至于直接在芯片上“裸奔”协议。除了LiteOS,还有如AbleCloud、机智云、阿里、京东、庆科也都在做这方面的事。操作系统层面,庆科的micro就是。
作者:一笑泯恩仇
链接:https://www.zhihu.com/question/30552283/answer/118782966
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
华为liteos了解(一)的更多相关文章
- 华为Liteos移植到stm32F03ZE
华为Liteos和物联网设备侧sdk移植到stm32F03ZE霸道板子上 推荐官方教程:https://liteos.github.io/ 啥是LIteos "开源免费"的实时操作 ...
- 华为LiteOS系统使用-任务调度函数-第一篇
1.最近项目遇到华为的LiteOS小型操作系统,使用学习 2. 先打开一个工程LiteOS_Kernel-master\projects\LPC824_LITE_KEIL 3. main.c里面2个关 ...
- 【LiteOS】STM32F103-LiteOS移植教程(详细篇)【华为云技术分享】
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...
- liteos学习文档liteos.github.io
https://liteos.github.io该主页是华为liteos物联网操作系统的文档,里面有一章是“内核指南”,讲的是rtos的最主要的功能.可以当作liteos的入门了解,如果用rtos的使 ...
- 【我的物联网成长记8】超速入门AT指令集【华为云技术分享】
[摘要] 在物联网中,AT命令集可用于控制&调测设备.通信模块入网等.本文为您介绍NB-IoT常用的AT命令集及其调测工具. 什么是AT指令集 AT命令,用来控制TE(Terminal Equ ...
- 【LiteOS】STM32F103-LiteOS移植教程(详细篇)
总览 本文基于STM32F103C8T6,详细讲述华为LiteOS的移植过程.开发工具是MDK5.LiteOS官方已经适配过cortex M系列内核的单片机,因此移植过程非常简单. LiteOS有两种 ...
- 【LiteOS】LiteOS消息队列-实战
目录 前言 链接 参考 笔录草稿 创建测试任务 部分源码 前言 链接 LiteOS源码链接 常见问题 华为开发者社区 华为LiteOS官方教程 我的gitee-LiteOS-mcu 参考 上面链接 笔 ...
- 【LiteOS】LiteOS消息队列
目录 前言 链接 参考 笔录草稿 基本概念 队列运作机制 队列运作原理 消息队列传输方式 消息队列的阻塞机制 出队阻塞 入队阻塞 任务相关函数 任务开发流程 注意事项 * 实战 前言 链接 LiteO ...
- 【LiteOS】LiteOS任务篇-源码分析-创建任务函数
目录 前言 链接 参考 笔录草稿 部分源码分析 源码分析 LOS_TaskCreate函数 LOS_TaskCreateOnly函数 宏 OS_TCB_FROM_PENDLIST 和 宏 LOS_DL ...
随机推荐
- Oracle视图,索引,序列
什么是视图[View] (1)视图是一种虚表 (2)视图建立在已有表的基础上, 视图赖以建立的这些表称为基表(3)向视图提供数据内容的语句为 SELECT 语句,可以将视图理解为存储起来的 SELEC ...
- 项目开发bug记录
项目开发中遇到了一个问题,类中出现未知属性 ‘ $jacocoData ’,准确的来说,实际上在集成测试阶段,系统自动运行测试用例时,抛出来的异常提示信息,但是在开发阶段是不存在的.这个问题是以前没有 ...
- js addEventListener调用传参函数
先看这段代码 function abc(key){ console.log(key); } for(let i=0;i<oInput.length;i++){ oInput[i].addEven ...
- Mysql数据库操作语句总结(一)
下面的内容来源于链接 https://www.cnblogs.com/bchjazh/p/5997728.html, 个人在此基础上进一步添加了一点东西. 个人操作数据库: mysql 5.5.2 ...
- Reduce侧连接
1.reduce side join 在reduce端进行表的连接,该方法的特点就是操作简单,缺点是map端shffule后传递给reduce端的数据量过大,极大的降低了性能 连接方法: (1)map ...
- svn项目权限控制
[groups] g_manager = zhangsan g_php = lisi g_test = wangwu [/] @g_manager = rw [project:/] @g_manage ...
- win10 U盘重装
之前用一键重装软件装系统后,D盘留下了一个PE系统,后来我装双系统装好Ubuntu后,打开Ubuntu结果出现了那个PE系统,最后没办法只好重装win10. 重装系统主要有三种方法,参见:链接 因为电 ...
- Javascript 向量
向量 既有大小又有方向的量叫做向量(亦称矢量),与标量相对,用JS实现代码如下,直接搬miloyip的了 Vector2 = function(x, y) { this.x = x; this.y = ...
- 【mydigitallife.info】如何禁用Aero窗口自动最大化
Go to Control Panel. Click on Ease of Access link or Ease of Access Center icon. Select Change how y ...
- IOS Window窗口使用
// 程序启动完毕之后就会调用一次 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NS ...