资源描述
2020-2021万物互联时代的操作系统研究报告,目录,万物互联时代的战略制高点物联网操作系统的时代背景与使命挑战物联网操作系统的市场空间操作系统历史经验回顾物联网操作系统代表类型及案例嵌入式操作系统通用OS裁剪后的操作系统轻量级物联网操作系统下一代操作系统物联网操作系统发展展望,一、万物互联时代的战略制高点,信息化发展已从计算机时代、互联网时代发展到物联网时代,联网要求由“人人相连” 变为“人物交互”,物联网产业处于快速成长期,20世纪60年代,美国四所大学的超级计算机开始采用TCP/IP协议联机,正式拉开了互联网时代的序幕。经过60余年的发展,设备网络互连已 从大型计算机时代发展到个人计算机时代,我们现在正处于移动计算时代和万物互联时代的过渡阶段,软件及硬件设备发生了翻天覆地的变化, 联网的要求由之前的“人与人”相连转变为“人与人”及“人与物”相连。近十年来,全球PC和智能手机的出货量为百万级别,而物联网的 设备连接量达到了百亿级别,物联网因其应用广泛性、用户友好性、生态完整性而具有巨大的发展潜力。,机器联网,人人相连,人物交互,代表公司设备连接量,大型计算机时代时代有线互联,算力强大特点用于科研、企事业单位,个人计算机时代 有线/无线互联 互联网开始普及,移动计算机时代 无线互联,实时连接 终端设备平民化,边缘计算机时代 万物互联,AI赋能 全场景式智能应用,IBM Apple 联想惠普 戴尔 宏碁2010年全球出货量峰值3.5亿台,华为 AppleSamsung 小米2016年全球出货量峰值14.7亿台,华为 阿里巴巴 小米Microsoft Apple Amazon2019年全球设备连接量120亿台,IBM雷明顿-兰德数量级别为千万台,通讯技术实现了由1G向5G的跨越,物联网的海量终端上,硬件成本问题永远是重大考验之一。微控制器(MCU)、MEMS传感器和无线通讯模组成本的逐年下降从成本端推动行业发展。MCU在性能提升和价格下降的道路上不断前进,寄存器位数从4位、8位、16位到今天主流的32位MCU,主频则从8MHz、16MHz发展到现在的几百MHz。据IC Insights预计,MCU的平均单价在未来3年内会逐渐下降。价格不断下降的高性能MCU将为物联网应用 提供更多可能。传感器和无线通讯模组行业的发展呈现出相似的趋势。NB-IoT模组及Wi-Fi模组的价格在近年发生剧烈下降,分别自5年前的几十元下降到近期的10-20元附近,成为中远距离和近距离场景的最经济选择。全球传感器平均单价持续走低,自2010年以来下降幅度超过100%。,硬件更迭和价格下降推动终端生态的普及,进一步推动物联网产业的发展,0.71,0.65,0.58,0.56,200000.60,400000.70,销售额(百万美元)单价ASP(美元),出货量(百万件)来源:IC Insights,73,36,25 19.3,17151413,1000,700,525,420,120010008006004002000,NB-IoT模组4G模块,Wi-Fi模组5G CPE模组,MCU的平均单价逐年递减2010-2018年传感器价格逐年下降物联网通讯模组价格预期变化500000.75,5,7,8,10,14,15,1720,24,0.63,0.7,0.64,0.6,0.45,0.40.38,0.32,0.3,0,5,10,15,300000.6520,25,30,2010 2011 2012 2013 2014 2015 2016 2017 2018,销售量(10亿)平均单价(美元)来源:中国信通院(CAICT)、IC Insight、公开资料,100000.590.570.53 0.5500.50,从1982年的第一台联网设备开始,物联网已经走过了近40年。在2010年左右,爱立信、IBM、思科、Gartner对物联网产业的发展相当乐观, 普遍预测至2020年全球将有500亿台联网设备。但时间真的来到2020年,我们发现联网设备数量这一最关键指标的达成率低于预期,Gartner给出的2020年预计120亿连接数量,远低于10年前的预期水平。我们发现物联网发展不及预期重要原因之一是上层软件应用开发和底层硬件紧密耦合,很难由第三方开发者为硬件开发应用。这导致物联网 软件应用迭代慢、成本高,生态闭塞。,物联网十年发展不及预期,软硬件紧密耦合带来生态壁垒,物联网 操作系统是破局关键,数据来源:预测数据来自Gartner、IBM、思科等预期综合;实际数据来自Gartner2019。,144,229,348,40,64,91,110,0,100,200,300,400,2014-2020年物联网接入设备的预期和实际差距600501500,201420162010年前后的预测水平(亿台),20182020实际发展水平(亿台),实际CAGR在20%左右,预期CAGR在35%左右,物联网终端 发展的10年 预期相差5倍,终端数量多,系统不适配,研发周期长,研发成本高,操作系统是制约物联网发展的重要因素,物联网设备连接量已达百亿级别,软硬件耦合严重 行业标准滞后操作系统的研发周期为4-5年,单个SKU的软件开发、 系统集成研发成本30万美金,产品间无法联动智能操控使用感差,物联网巨头形成垄 断,市场竞争不足,品牌林立 互不兼容,物联网的终端设备数量呈现指数型上涨,物联网终端软件复杂度的提升势在必行。物联网开发平台也需要具备一套对软件开发者更友好 的、相对统一的操作系统,使软件开发过程从硬件开发中解耦出来。只需要基于操作系统,即可快速开发上层应用。,区别于传统操作系统,物联网在操作系统领域需要易拓展、跨平台、 低成本、强安全、稳连接的新要求,多终端应具备弹性部署的能力,可应用于不同的终端设备,低成本应具备在微小设备运行的能力,资源耗用小,功耗小,降低硬件成本,强安全在零碎终端上,同样拥有足够强的安全机制,保障用户设备和数据的安全,云端能力在底层架构设计上应该具有丰富的云端接入功能,并且保持稳定连接,操作系统,物联网发展对操作系统提出的新需求跨平台应具备消弭硬件平台差异,使软硬件开发解耦的能力物联网,物联网产业如果按照功能进行分层,可以划分为感知层、网络层、平台层和应用层。感知层相当于物联网系统的五官和四肢,负责前端数据 的收集;网络层相当于神经纤维,用于高速传递数据和信息;平台层相当于小脑和大脑,连接管理平台确保物联网系统自主运行,而操作系 统则确保智能应用有运行的基底。广义的操作系统是云端PaaS平台和端侧系统的统一和融合。从市场分额占比来看,平台层占有物联网大约20%市场。综合技术因素和市场规模,操作系统是物联网发展的重要一环。,感知层,网络层,接入网、核心网、业务网,平台层,应用层,蜂窝网络,非蜂窝网络,ZigBee、LoRa、蓝牙,连接管理平台,设备管理平台,应用开发平台,操作系统及软件开发,物联网智能终端,可穿戴设备、智能家居、智能汽车,物联网系统集成,智慧楼宇、智慧城市、智能制造,物联网产业按功能进行分层,广义 操作系统,上承应用落地,系统集成商SI,应用开发商ISV,大量协议的封装和集成 简化了程序开发,API及数据服务赋能集 成商的应用落地,物联网PaaS平台端侧操作系统对不同类型处理器和模组的支持适配 下接海量终端,海量 终端设备,丰富应用形态,广义操作系统起到承上启下的作用,广义物联网操作系统上承落地应用,下接海量终端,传感器 控制器 智能家居 消费电子,操作系统是硬件资源和软件应用之间的桥梁,对于复杂的底层硬件资源而言,软件开发者必须通过操作系统的指令和接口进行调用。 通过操作系统可实现以下几方面的功能。尽量有效、合理地组织和管理计算机的各种软硬件资源;合理地组织计算机的工作进程,控制程序的执行并在程序执行的过程中向程序提供各种各样的服务功能;用各种各样的方式使得用户能够非常灵活、方便地使用计算机,采用各种各样的技术使整个计算机系统能够高效率地运行。,狭义操作系统协同软硬件资源,提高终端效率,操作系统是软硬件资源的分配者,操作系统层,硬件资源:CPU、内存、I/O设备,软件资源:应用软件、磁盘中的信息,物理机层,虚拟机层,配置在计算硬件上的第一层软件, 对硬件系统的第一次扩充,为软件进程分配计算资源,决定了软件及应用存在的形态,设备 管理,作业管理,文件 管理,存储管理,操作系统的五大管理功能对硬件设备的管理,包括 输入输出设备的分配、启,动、完成和回收,对处理器进程的管 进程 理,将计算资源合 管理 理地分配给每个任务,文件的逻辑组织和 物理组织、目录结 构和管理,负责人机交互、 图形界面、语 音控制,对存储空间内数据 的结构和组织方式 进行管理,碎片化是物联网终端发展的最重要特征之一。从本质上来讲,有多少种终端设备就应该有多少种上层应用。万物互联时代不仅仅是物与物之 间的实时通讯,也包含了相当部分的人与物无缝互动。云侧和端侧的功能需要去同时实现物与物实时通讯及人与物的无缝互动。我们判断, 在智慧城市、工业应用等场景中,云端平台的赋能将发挥更大的作用,而在室内智能和消费电子场景,人与物的无缝互动是未来重点关注的 方向。操作系统在人与物的无缝互动中将发挥最重要的作用,发展潜力和市场需求巨大。本报告核心关注于端侧操作系统的现状、发展和未 来。,终端应用碎片化,物联网操作系统市场需求大,智慧公交,产业应用,人与物的无缝互动室内智能,消费电子可穿戴设备,车联网及出行车联网,向右越来越依靠终端操作系统赋予的交互和功能,向左越来越依靠云端平台赋予的设备联网管理及数据分析自动化能力,实体或虚拟的个人助手,自动驾驶及车载系统,智能制造,智慧能源,智慧农业,智慧物流,智能家居,物与物的实时通讯智慧城市智慧停车无感收费,智能电表,公共事业智能燃气,智能路灯,智慧楼宇智慧零售,我们观察到,近年来世界范围内的科技巨头都开始在物联网领域进行重点布局,虽然各家打法各有差异,但总结来看巨头布局互联网主 要关注“云+端”模式,努力构建生态和竞争优势。在云侧,以云平台为支撑的中间件服务、数据服务和信息服务,以及在端侧,以底 层软硬件设备为基础的配套组件,将会是巨头控制物联网海量终端、丰富应用形态的两个最好切入点。国际范围内领先的科技企业在物联网方向的布局,全球科技巨头正在以“云+端”模式布局物联网,物联网操作系统是科技巨头的重要着力点,也是取得物联网时代战略制高点的关键之一,Mbed Linux OS,翼辉信息:微软:,华为:,Linux基金会:,谷歌:,腾讯:,阿里巴巴:,庆科:MiCO OSWind River:,亚马逊:物联网操作系统从服务连接,到服务应用,最终目的应该是服务于智能,物联网操作系统尚处于发展早期阶段,呈现出碎片化状态。目前市场中存在着不同来源的物联网操作系统:有从原有嵌入式操作系统改 进而来的,也有从通用系统裁剪而来的,还有面向物联网需要完全从零发展而来的。不同行业背景的厂商(操作系统大厂、硬件厂商、 云计算服务厂商等)从自身业务需求出发进行探索。我们判断尽管目前物联网市场中操作系统的市场占有率较为分散,但未来有可能出 现几个垄断具体业务场景或生态的主导型物联网操作系统。主流的物联网操作系统发展历史,Adam Dunkels(个人):Contiki,Operating system historical experience review,二、操作系统历史经验回顾,操作系统的出现和迭代是时代需求和技术制约下的平衡,操作系统管理硬件资源,控制程序运行,改善人机界面,和为应用程序提供支持的系统软件。是为满足用户使用计算机过程中提高资源利用 效率、增强计算机系统性能的产物。在不同时代的需求和技术发展与制约下,操作系统呈现出不同形态,可以确认的是,其会一直发在时代 需求和技术制约间寻找平衡。操作系统从简单到复杂,出现面向特定场景的复杂系统,穿孔卡片-手工操作,手工操作的慢速度和计算机的 高速度之间形成了尖锐矛盾, 计算资源的利用率太低,批处理系统,减少了作业建立时间和手工操作时间;新的问题:单次只能处理 一个任务;,多道程序系统,同时把多个程序放入内存,并允许它们交替在CPU中运行, 解决了单次处理多任务的问题,分时操作系统,处理机的运行时间分成很短的时间片, 按时间片轮流把处理机分配给各联机 作业使用,允许多个用户同时联机使 用计算资源,实时操作系统,为满足实时控制与实时信息处理, 系统能够及时响应随机发生的外部 事件,并在严格的时间范围内完成 对该事件的处理,通用操作系统,具有多种类型操作特征的操作系统。可 以同时兼有多道批处理、分时、实时处 理的功能,或其中两种以上的功能,个人计算机操作系统,可联机交互的单用户操作系统,提供用户接口和丰 富的文件系统,网络操作系统,在原来各自计算机操作系统上,按照网络体系 结构的各个协议标准增加网络管理模块,其中 包括:通信、资源共享、系统安全和各种网络 应用服务,分布式操作系统管理分布式系统中的所有资源,它负责全 系统的资源分配和调度、任务划分、信息 传输和控制协调工作,并为用户提供一个 统一的界面,操作系统不仅带来技术上的进步,同时也带动商业模式的创新,操作系统发展带来的技术上进步复用代码,减少软件开发者的重复劳动;功能模块化,便于专业分工,利于协同开发;屏蔽掉无关细节,降低软件开发难度;标准化接口,高内聚,低耦合。 操作系统发展带来的商业模式上的创新产业上下游之间进行业务区分,便于业务分离和专业化;不断激发产品形态和业务模式的创新;成功的操作系统一直在帮助伟大企业构建竞争壁垒。,操作系统OS自诞生之初,就是硬件设备向更复杂阶段发展必然产物。早期硬件资源少,产品功能简单,一体裸机也可以实现用户需求。而 随着硬件复杂度的提升,和对硬件资源利用效率的提升,操作系统逐渐成为硬件和使用者之间的必需品。实时操作系统RTOS的出现是为了 更容易实现实时多任务编程,标准化通用操作系统的出现则是为了多用户动态装载应用。历史经验告诉我们,操作系统不仅仅带来技术上的 进步,同时也是产业分工和商业模式的演化,不单单是技术问题。操作系统的发展史上出现过不少成功案例,也出现过更多失败的案例,,即使是行业巨头也难免曾经折戟。我们相信未来成功案例和失败案例集 上的名单会不断增加。历史上以失败告终的操作系统案例1964年由贝尔实验室、麻省理工大学和通用电气共同研发的大型主 机操作系统Multics,受限于当时的技术条件,研发设计目标难度太 大,项目进展缓慢,于1969年被撤项;1991年,IBM投入20亿美元打造WorkSpace操作系统,由于目标设 置过于宏大复杂,在历时4年开发后以失败告终;1994年,苹果为追赶微软windows操作系统而设立的代号为Copland的项目,最终因为该PC系统无法稳定运行而以失败告终;2007年,微软推出的Windows Vista版因为无法对当时的硬件发展 水平有很好的兼容而遇冷。2015年,微软持续经营10余年的移动端操作系统Windows Phone在 与安卓的竞争中宣告失败。,操作系统发展带来技术和商业模式上的进步,PC桌面时代的垄断者:Wintel联盟,Windows操作系统与Intel CPU组成的个人计算机架构,称霸了桌面端20余年。英特尔沿着摩尔定律不断发展以提升硬件水平,微软Windows系统升级将升级的硬件水平消耗掉,这又被总结为安迪-比尔定律。软件和硬件之间的协同进步关系使得Wintel双方在各自领域 都获得了竞争优势,如下图所示,微软在软件市场中形成对应用软件开发商的绝对优势,Intel则成为整个半导体产业中技术实力最强的企业。Wintel联盟为个人电脑的推广和使用做出了重大贡献,但也存在不同程度的排他性。,通用型工具方面击败一 系列竞争对手浏览器:击败网景公司多媒体工具:击败RealNetworks公司 办公套件:击败LotusSoftware办公通讯:Teams正在 狙击Slack,捆绑销售Windows(90%以上份额)+Intel(85%以上份额),PC时代Wintel联盟生态体系专业级应用软件及游戏:AdobeSAPOracleSAS,出于市场占有率考虑, 优先基于Windows平台 开发,形成庞大软件生态,推出不同层次的竞品:Dynamic、SQL Server、Skype等,摩尔定律的掌控者X86架构在计算芯片领域的长期领先,芯片设计晶圆制造IC制造切割、封装测试Intel包揽了芯片生产的全流程,和无晶圆厂模式相比 话语权更高,企业规模更大,巨大的底层软件研发投入底层软硬件性能的优化,尤其是针对大型计 算需求和游戏性需求的优化适配,PC整机ODM厂商:Dell、联想、HP、宏碁、华硕等各自领域的单一垄断厂商构成安迪-比尔定律,牢牢把握住对产业链下游生产商的控制权,破除商业公司对操作系统的垄断:Linux的开源发展模式,Linux操作系统起源于1991年,从创始之初就采用内核开源的模式吸引个人和开发团体参与到开源社区的代码贡献中。到目前为止,Linux已 经形成成熟的开源社区,汇聚了一大批开发者,核心代码量达到2500万行以上,社区版本和商业发行版本广泛应用于服务器、嵌入式和开发 者的桌面端。Linux模式很好地印证了以开源基金会、开源社区和开源贡献方为主要参与方的模式也可以为全社会贡献高性能的底层软件。,GNU是“GNUs Not Unix”的缩写,为Linux发行版本开发提供了大量 的自由软件。 所以Linux 内核+GNU 项目构成了完整的GNU/Linux 发 行版 。 Linux发行版本通过通用公共许可证 (GPL) 发布。软件在GPL协议下, 自由软件都遵循非版权原则,允许用户自由拷贝、修改和销售,但源 代码的修改必须向所有用户公开。,开源软件的组织模式,GNU+Linux内核构成Linux发行版,开源贡献方(企业/组织),开源基金会,资金支持 影响决策,开源社区 开源软件开发,开发者,管理资源分配、 规则制定、商 务合作等,管理资金雇佣员工参与 开源社区,开 源 主 体,软件 使用者,提供 开源 软件,提 供 开 源 软 件,开源项目托管网站(例如Github),基础设施,Linux的开放性使其在开发者场景(服务器+嵌入式)广泛应用,Linux主要由内核、shell、文件系统和应用程序四部分组成。内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运 行程序、管理文件并使用系统。正是受益于Linux内核的开放性和自定义程度高,相比 Windows 等闭源系统,开发者使用计算机资源时具有 更高自由度,因此在服务器及嵌入式等开发者使用居多的场景下拥有很高的市场占有率。而根据IDC于2017年公布的数据,全球服务器操作 系统(免费+付费)中有约68%采用的是Linux服务器操作系统。而根据2016年的市场调研结果,嵌入式Linux和基于Linux的Android占有嵌 入式系统市场的74%。,Linux的内核、shell和文件系统,Linux 内核最基本功能,它负责管理系统的进程、 内存、设备驱动程序、文件和网络系统, 决定着系统的性能和稳定性,Linux Shell,系统的用户界面,提供了用户与内核进行 交互操作的一种接口。它接收用户输入的 命令并把它送入内核去执行,linux 文件系统,文件存放在磁盘等存储设备上的组织方法,55.00%,19.00%,9.00%,4.00% 3.00% 1.00%8.00%,1.00%,嵌入式Linux Android,c/os-Windows CEVxworks Symbian Ios其他,嵌入式场景(含手机),服务器场景,68.00%,31.70%,0.30%,LinuxWindows,Unix,来源:IDC,2017,Linux的服务器及嵌入式市场占有率,来源:21ic,2016,Windows Phone:发展延续长达20年的移动端设备操作系统 终失败Windows Phone的历史最早可追溯到1996年研发的PDA系统WinCE,桌面操作系统赢家微软早已开始布局移动端能够随身携带的袖珍型 个人计算机。经过10余年的发展,由微软开发的移动端操作系统Windows Mobile 6还是取得了不错的成绩,在2007年的手机市场中占有30% 份额,主要和Palm、黑莓、Symbian这三者展开竞争。在iOS和Android出现之前, Windows Phone是市场中最早支持触屏的系统。而当iOS 和Android开始迅速取代传统手机的市场时,微软却开始逐渐败退。,SymbianWindows MobileAndroidios2008-2011年间,移动端OS的交替阶段,Windows Mobile明显落后于Android和iOS,2008Q4季度-2011Q3季度智能手机操作系统市场份额相比于Android,Windows Phone犯的错误60.00%50.00%40.00%30.00%20.00%10.00%0.00%,基于Linux内核,Android+ARM模式在移动端取得成功,ARM,精简指令集架构RISC,提供IP授权,IP,芯片设计厂商:高通、苹果、 三星、华为海思、联发科等,交授权费license fee,搭载于移动等低功耗场景,按终端售卖芯片 数量交版税,1、仅购买ARM的架构/指令集2、购买更深入的处理器优化包芯片设计厂自有或代工:下游芯片生产、封装、测试环节,尽管Linux系统在桌面端远远落后于Windows,但其开源模式却为其他系统生态提供机会。以Linux为内核的安卓系统在移动端大放异彩。由ARM公司主导的硬件开放和由谷歌公司主导的软件开源模式是移动时代Android+ARM联盟建立的成因。相比于联系紧密的Wintel联盟,Android+ARM的结构要松散的多。Android由开源项目AOSP(Android Open-Source Project)和谷歌提供的GMS(Google Mobile Service) 服务组成。ARM作为芯片IP授权方,带动了中下游fabless和foundary厂商的繁荣。移动时代Android+ARM联盟以更开放的形式拓展市场,Android+,+,AOSPAndroid开源项目,手机厂商可免 费使用AOSP和 基于此定制操 作系统版本,GMS谷歌移动服务,GMS服务需由谷歌授权提供:1、GMS Core框架;2、服务API接口;3、Google Play、Gmail、 Google Earth等软件。,基于Apache 开源协议,贡献 代码,移动设备制造厂商移动设备厂商的地位提升,存在差异化空间,移动端操作系统经历过相当长一段时间的争夺,谷歌Android、苹果iOS和微软WinPhone都曾是有力竞争对手。我们认为相比于WinPhone和iOS的封闭性,正是Android系统将核心的软件本体以开源形式提供给手机厂商使用才得到众多厂商的支持,厂家可以在开源系统的基础上进 行自由开发,从而构建起与其他厂商的差异性。而GMS部分使得谷歌对开源部分具有控制权,强化其对软件的监管。AOSP+GMS的开放与 控制互补是谷歌Android能占据移动端80%以上设备的根本原因。,AOSP+GMS:谷歌拿下手机端海量市场的重要组合,AOSP及Android开放手机联盟(Open Handset Alliance),GMS作为谷歌控制整个生态圈的钥匙,来源:网络,手机厂商,软件开发商,终端消费者,兼容性测试,谷歌专项测试,授权后方可搭载GMS,供应商测试,提供软件服务框架GMS Core,调用谷歌原生应用 提供的API,Google Play上架,预装谷歌全家桶,搜索、地图、邮箱、钱 包、云等基础服务,谷歌应用市场,推送服务,GMS+GMS Core,操作系统作为所有软件应用的根本,因其技术含量之高而成为ICT行业金字塔尖的存在。操作系统同时离不开硬件厂商和软件开发者的支持,成功的操作系统一定具有丰富的软件生态支撑。通过对前两次重大操作系统更替的回顾,我们总结了以下要点:1、操作系统永远满足的是时代的需求,计算机系统曾经发生过的更替还会继续发生。在底层技术和市场需求发生变化时,总有厂商可以敏 锐地发现并把握住时代更替的机会,以新技术+新模式替换掉旧有系统。2、在相同类型终端上的追赶几乎不可能实现。据统计,Win10操作系统在2018年已经具有3500万应用,超1.75亿个软件版本。支持1600万 个硬件驱动组合,而截至2017年底, Google Play共有APP 350万个, App Store共有APP 210万个。追赶者很难通过对开发者的激励来形 成一个新的软件生态,这么做的收益和付出处于不对称的状态。 3、从0到1是操作系统弯道超车的最好时机,旧有经验可能成为阻碍。微软和谷歌在推出移动端操作系统的时间节点上相差不多,在2011年前两者的市占率一直处于焦灼状态,而最终Android凭借着更开放的软硬件生态赢得了开发者的青睐,WinPhone系统消失在历史中。 4、更为开放的Android+ARM模式取代了封闭的Wintel模式,更多的企业可以从开放产业链中获得利益,硬件设备和上层应用也更为丰富。 在碎片化的物联网终端上,我们认为开放模式带给整个产业链的机会和促进会更大,尤其是在物联网产业内。当然,在传统PC时代和移动时代,较少出现应用上的异构计算和不同类型操作系统混合作业的形式,因此物联网的系统发展会更加复杂。,桌面和移动时代形成的操作系统联盟启示,三、物联网操作系统代表类型及案例,Representative types and cases of IoT OS,四大类物联网操作系统,起源和发展方向各有不同,物联网操作系统尚处于发展早期阶段。整个物联网操作系统市场呈现出碎片化状态。目前市场中至少存在着四种发展来源的物联网操作 系统:嵌入式实时系统及升级版、原有通用系统裁剪定制后适应部分物联网需求,近几年来出现的专门为物联网设计的轻量级IoT OS, 以及完全从新开发的新型操作系统。不同背景的厂商从自身需求和实际业务能力出发进行探索。我们判断尽管目前物联网市场中操作系 统的市场占有率较为分散,但未来有可能出现几个垄断应用场景的物联网操作系统。基于现有市场的四类物联网操作系统,3、面向物联网的轻量级IoT OS代表系统: RT-Thread、华为 LiteOS、ARM mbedOS、AliOS Things、 Azure RTOS、Amazon FreeRTOS等 优点:专门为物联网开发设计,联网协议 完善,开发包齐全;缺点:仍未解决物联网终端碎片化和割裂的问题。,2、基于Linux、iOS、Windows等成熟操作 系统的裁剪代表系统:uclinux、win10 IOT、WatchOS、Android Things等优点:软件开发工具完善,开发者基数大; 缺点:原版系统冗余严重、历史遗留问题较 多,普遍不适应低功耗场景、可扩展性低, 需要定制化。,4、下一代操作系统代表系统:谷歌Fuchsia、华为鸿蒙OS优点:是对嵌入式系统和个人设备操作 系统的革命性进化,理念为统一型OS, 扩展性及移植性好;缺点:开发面临的不确定性高,缺少开发者基础和生态支持。,1、传统嵌入式系统+通信协议+其 他物联网功能模块代表系统:SylixOS、C/OS-、Vxworks等优点:更偏向硬件层,硬件推广成本低;缺点:软件开发难度高,软硬件 耦合较严重,生态封闭。,各类物联网操作系统的应用场景有所差异,物联网操作系统按照应用场景来看,各类操作系统都有其对应的重点应用场景,而在部分场景中存在有多类操作系统可供选择的情况。现有四类物联网操作系统的应用场景(举例),嵌入式操作系统,Embedded Operating System,早期嵌入式开发中并没有操作系统的概念,而是直接在裸机上写简单的轮询系统或前后台系统。但裸机系统很难保证程序运行的实时性,因 此随着硬件水平的提升,MCU的Flash和RAM越来越满足操作系统的占用,所以由嵌入式系统带来的开发模块化工具和实时响应的优势反而 简化了在中大型项目开发中的难度,因此嵌入式实时系统逐渐取代裸机系统成为趋势。,嵌入式系统逐渐取代裸机系统,物联网操作系统发展开启早期阶段,前后台系统和嵌入式实时操作系统的对比,几种任务处理系统的对比,结构是操作系统的基础,它定义了硬件与软件的界限、内核与操作系统其它组件(文件、网络、GUI等)的组织关系、系统与应用的接口。结构是确保系统可靠性、灵活性、可移植性、可扩展性的关键。目前嵌入式操作系统主要采用分层和模块化相结合的结构以及微内核结构。,嵌入式操作系统分层模块化的结构决定了其可移植、可扩展 的特征,微内核的结构决定了其可靠灵活的特征,嵌入式系统的分层模块化模式,嵌入式系统的微内核结构,硬 件 无 关 层,分层,模 块 化,同步、通信管理(消息队列、信号 量、事件)硬件抽象层 硬件,时钟定时器管理,内存管理中断管理调度管理,差错处理,任务管理,用户扩展处理,I/O管理,应用程序应用编程接口,硬 件 相 关 层,硬 件 抽 象 层,硬 件,进程服务,用户态,核心态,应用程序客户,内存服务,微内核,文件服务,网络服务,显示服务,发送 应答,分层模块化带给嵌入式系统优势在于,移植工作集中于模块化 的硬件相关层,系统的可移植性和可伸缩性都得到保证。,微内核的优势在于,可以向外提供一致接口,以及分布式系统支 持。但是,通过微内核发送信息、接受应答并解码所花费的时间 比进行一次系统调用的时间多。,嵌入式操作系统的实时性提高系统性能、可移植性有效降 低研发成本,为物联网的系统开发提供了良好基础,无操作系统的嵌 入式算法,监控式实时操 作系统,通用嵌入式实时 操作系统,云端连接的操作 系统,4-8位单片机为主,8-16位嵌入式处理 器为主,32位RISC微处理器,32位及以上微处理 器,无操作系统支持的裸 机,以简单监控式操作 系统为主,代表:Vxworks、Windows CE,嵌入式系统和网络 的连接,汇编语言对系统进行 直接控制,处理器种类繁多, 通用性差,可运行在不同的微 处理器上,可运行在不同的微 处理器上,系统结构及功能单一, 针对性强,用户界面不够友好,具有丰富API和嵌 入式应用软件,具有丰富API接口, 以及云端能力,实时 性,内核小,高可 靠性,低功 耗,基于优先级设计内核可抢占,微电量及省电系 统,运行时间长无需人工重启,存储资源小,适用于多种终端可移植多种处理器可配置,嵌入式系统是物联网开发的基础。嵌入式操作系统最初应用于单片机,以可编程控制器的形式出现。从无操作系统支持的裸机,发展到高度 模块化和拓展性的实时操作系统(RTOS)。文件和目录管理、设备管理、多任务、网络、图形用户界面(GUI)等功能,并提供了大量的 应用程序接口(API),使得软件开发的难度不断下降,自由度不断上升。作为软硬件资源的控制中心,以尽量合理有效的方式解决多用户 共享下的资源。大部分的嵌入式系统都具有软实时性,可移植于多种处理器,并且基于优先级设计。总结而言,嵌入式操作系统具有多种优 点,尤其适用于成本较低、计算资源不多、对实时性有要求的场景。嵌入式操作系统发展的四个阶段及其特点嵌入式操作系统相对于其他系统具备的特征,虽然嵌入式软件的代码规模较小,但开发难度大。首先,嵌入式软件的开发需由交叉编译的方式完成,负责开发的宿主机平台和负责运行的 目标机之间需通过物理连接或逻辑连接。其次,难度主要集中于其既涉及底层软件的开发,又要基于操作系统做上层开发,极端条件下甚至 要直接开发一个新的操作系统。并且嵌入式开发调试的工具远没有一般的软件开发工具方便易用,需要具有较多的软硬件开发经验。因此, 辅助软件开发的工具软件也具有重要分量,主要包括交叉开发工具、仿真开发工具、测试工具、配置管理工具和维护工具等。,嵌入式软件开发的特性使得开发工具套件也相当重要,嵌入式软件开发工具的分类,嵌入式软件开发需要在宿主机和目标机之间交叉开发,需求分析工具(Requirement Analyst Tools),软件设计工具,(Software Design Tools),Tools ),测试工具(Test Tools )编码、调试工具(Software Design,嵌入式软件开发各环节的辅助工具 对应于需求分析-软件设计-编码调试- 测试这4个环节,宿主机硬件,宿主机OS,运 行 库,宿主机开发环境,编辑编译链接调试,目标机硬件,调 试 代 理,目标机应用系统,应用软件应用中间件目标机OS,下载烧录,开发平台 Host,运行平台 Target,C/OS-II是一个抢占式实时多任务内核。它是用ANSI标准的C语言编写的,包含一小部分汇编语言代码,使之可以提供给不同架构的微处理 器使用。C/OS应用领域包括:航空业、医疗器械、网络设备以及工业机器人等。 C/OS-II 具有可移植、可固化和可裁剪的优点。C/OS-II内核的主要功能是任务的调度和切换,采用抢占式调度策略,保证任务的实时性,能够管理多达64个任务。,嵌入式操作系统的典型代表C/OS-II,C/OS-II内核对多任务的控制,C/OS-II的核心特征可移植性(Portable)C/OS-II的源码用移植性很强的ANSI C,和微处理器硬件相关的部分用汇编语言。汇编语言写的部分已经压到最低限度,使得C/OS-II便于移植到大多数8位、16位、32位以至64位微处理器、 微控制器 、数字信号处理器(DSP)上。可固化(ROMable)C/OS-II为嵌入式应用设计,可以通过固化手段(C编译、连接、 下载和固化)嵌入到产品中。可裁剪(Scalable)可按需通过裁剪减少产品中C/OS-II所需的存储器空间(RAM和ROM),可剪裁性靠条件编译实现。,任务控制块,保存 任务的信息状态,任务切换,任务调度,就绪表,中断和时钟节拍,告 诉内核检查是否需进 行任务切换,是否有更高优先级,查找就绪表,内核,VxWorks 是美国 Wind River System 公司(简称WRS,风河公司)于1983年推出的嵌入式实时操作系统,凭借其运行在目标机上的稳定 性能、卓越的实时性和商业公司背后专业的支持服务而广泛应用于通信、军事、航空航天等对高精尖技术及对实时性要求极高的领域。在近40年的产品迭代升级中,VxWorks产品已经走过了互联网、多核设备等普及的过程,并正在逐渐向物联网技术转变。,
展开阅读全文