微控制器和处理器
微控制器 - 微控制器英文写法是 Microcontroller Unit,简写为MCU。微控制器是将计算机运行所需要的一些资源(如ROM、RAM、I/O、定时器、ADC、DAC等)集成到了一个芯片上,可称之为单片微型计算机(Single Chip Microcomputer),俗称为单片机。因软件存放在微控制器的存储器中,与硬件紧密配合使用,又称之为嵌入式微控制器(Embedded Microcontroller Unit,EMCU)。
处理器 - 处理器又称为中央处理器(CPU,Central Processing Unit),处理器一般需要依赖外部的硬盘或存储介质进行运行,系统资源丰富、复杂。是计算机、电脑、平板和手机等的核心
根据处理性能的不同,运行的 *** 作系统也有所不同。微控制器多运行实时 *** 作系统(RTOS),对任务时间性要求比较高。处理器多运行Windows、Linux、Android、iOS等 *** 作系统,对任务处理能力要求比较高。
物联网 *** 作系统的特点
一般地,对实时性控制要求比较高的应用MCU用不到RTOS,如电机控制等。而随着物连接到网络的发展,对通信协议有了新的需求,RTOS就可以比较好地对通信进行管理。物联网 *** 作系统没有严格的定义,可以将物联网 *** 作系统特性,简单地概况如下:
连接 - 互联互通、互 *** 作性
安全 - 设备安全、通信安全、数据安全
能效 - 设备能耗管理
通信 - 支持通信协议,如低功耗蓝牙、以太网、Thread、 Wi-Fi、Zigbee、6LoWPAN、LPWAN(LoRa、NB-IoT…)等等
标准 - 开放标准,开放的标准有利于设备的互联互通
微控制器 *** 作系统
ARM mbed OS - ARM公司专为物联网 (IoT) 中的“物体”设计的开源嵌入式 *** 作系统,主要支持ARM Cortex-M微控制器
FreeRTOS - 非常流行的嵌入式 *** 作系统,支持多种微控制器
Contiki OS - Contiki是一个开源的物联网 *** 作系统。 Contiki将小型低成本、低功耗微控制器连接到互联网。Contiki是构建复杂无线系统的强大工具箱。
LiteOS - 类UNIX *** 作系统,多用于无线传感网络
RIOT - 物联网友好的 *** 作系统。RIOT实现了所有物联网相关的开放标准,支持连接、安全、耐用和隐私。
TinyOS - 适用于低功耗无线设备,用于无线传感器网络
Huawei LiteOS - 华为公司的 *** 作系统。Huawei LiteOS是轻量级的开源物联网 *** 作系统、智能硬件使能平台,可广泛应用于智能家居、穿戴式、车联网、制造业等领域,使物联网终端开发更简单、互联更加容易、业务更加智能、体验更加顺畅、数据更加安全。
μTenux - 基于ARM Cortex M0-M4的开源物联网嵌入式 *** 作系统。内核源于T-kernel。
RT-Thread - 中国的开源嵌入式实时 *** 作系统
ChibiOS/RT - 提供了一个嵌入式应用的完整开发环境(RTOS、HAL、外设驱动、支持文件和工具)
Micrium uCOS - 免费商业化应用需授权,2016年为Slicon Labs收购
Unison - Unison RTOS是面向IoT和M2M通信嵌入式应用的实时 *** 作系统
Zephyr - Zephyr项目是一个可扩展的实时 *** 作系统(RTOS),支持多种硬件架构,针对资源有限的设备进行了优化,并以安全性为基础构建。由Linux基金会托管。
eCos - eCos是面向嵌入式应用的免费开源实时 *** 作系统。高度可配置性使得eCos能够根据精确的应用需求进行定制,提供最佳的运行时性能和优化的硬件资源占用。
TI-RTOS Kernel - TI公司的RTOS
NXP MQX - NXP(原Freescale公司)的RTOS
处理器 *** 作系统
Android Things, Google物联网 *** 作系统
Windows 10 IoT,微软物联网 *** 作系统
SylixOS,是一款嵌入式硬实时 *** 作系统
还有更多的 *** 作系统,在此不一一列出。
政策推动我国物联网高速发展
自2013年《物联网发展专项行动计划》印发以来,国家鼓励应用物联网技术来促进生产生活和社会管理方式向智能化、精细化、网络化方向转变,对于提高国民经济和社会生活信息化水平,提升社会管理和公共服务水平,带动相关学科发展和技术创新能力增强,推动产业结构调整和发展方式转变具有重要意义。
以数字化、网络化、智能化为本质特征的第四次工业革命正在兴起。物联网作为新一代信息技术与制造业深度融合的产物,通过对人、机、物的全面互联,构建起全要素、全产业链、全价值链全面连接的新型生产制造和服务体系,是数字化转型的实现途径,是实现新旧动能转换的关键力量。
我国物联网行业呈高速增长状态 未来将有更广阔的空间
自2013年以来我国物联网行业规模保持高速增长,增速一直维持在15%以上,江苏、浙江、广东省行业规模均超千亿元。中国通信工业协会的数据表明,随着物联网信息处理和应用服务等产业的发展,中国物联网行业规模已经从2013年的4896亿元增长至2019年的15万亿元。
虽然我国物联网发展显著,但我国物联网行业仍处于成长期的早中期阶段。目前中国物联网及相关企业超过3万家,其中中小企业占比超过85%,创新活力突出,对产业发展推动作用巨大。
物联网作为中国新一代信息技术自主创新突破的重点方向,蕴含着巨大的创新空间,在芯片、传感器、近距离传输、海量数据处理以及综合集成、应用等领域,创新活动日趋活跃,创新要素不断积聚。
物联网在各行各业的应用不断深化,将催生大量的新技术、新产品、新应用、新模式。未来巨大的市场需求将为物联网带来难得的发展机遇和广阔的发展空间。
在政策、经济、社会、技术等因素的驱动下,2020年GSMA移动经济发展报告预测,2019-2025年复合增长率为9%左右,2020年中国物联网行业规模目标16亿元,按照目前物联网行业的发展态势,十三五规划的目标有望超预期完成;预计到2025年,中国物联网行业规模将超过27万亿元。
未来物联网行业将向着多元方向发展
标准化是物联网发展面临的最大挑战之一,它是希望在早期主导市场的行业领导者之间的一场斗争。目前我国物联网行业百家争鸣,还未有一个统一的标准出现。因此在未来可能通过不断竞争将会出现限数量的供应商主导市场,类似于现在使用的Windows、Mac和Linux *** 作系统。
合规化同样是当下物联网面临的问题之一,特别是数据隐私问题。目前数据隐私已成为网络社会的一个关键词,各种用户数据泄露或被滥用的事件频发,特别是Facebook的丑闻引发了全球担忧。
因此在未来,我国各种立法和监管机构将提出更加严格的用户数据保护规定,,用户的敏感数据可能会随着时间的推移而受到更严格的监管。
安全化是指预防物联网软件遭受网络黑客攻击,在未来,以安全为重点的物联网设施将受到更多的关注,特别是某些特定的基础行业,如医疗健康、安全安防、金融等领域。
多重技术推动物联网技术创新
从技术创新趋势来看,物联网行业发展的内生动力正在不断增强。连接技术不断突破,NB-Iot、eMTC、Lora等低功耗广域网全球商用化进程不断加速;物联网平台迅速增长,服务支撑能力迅速提升;
区块链、边缘计算、人工智能等新技术题材不断注入物联网,为物联网带来新的创新活力。受技术和产业成熟度的综合驱动,物联网呈现“边缘的智能化、连接的泛在化、服务的平台化、数据的延伸化”等特点。
上数据来源于前瞻产业研究院《中国物联网行业应用领域市场需求与投资预测分析报告》。
物联网 *** 作系统由内核、辅助外围模块(文件系统、图形用户界面、通信协议栈、各类常见设备的驱动程序等)、集成开发环境等组成,基于此,可衍生出一系列面向行业的特定应用。物联网 *** 作系统与传统的个人计算机 *** 作系统和智能手机类 *** 作系统不同,它具备物联网应用领域内的一些独特特点,现说明如下。
物联网 *** 作系统内核的特点
1、内核尺寸伸缩性强,能够适应不同配置的硬件平台。比如,一个极端的情况下,内核尺寸必须维持在10K以内,以支撑内存和CPU性能都很受限的传感器,这时候内核具备基本的任务调度和通信功能即可。在另外一个极端的情况下,内核必须具备完善的线程调度、内存管理、本地存储、复杂的网络协议、图形用户界面等功能,以满足高配置的智能物联网终端的要求。这时候的内核尺寸,不可避免的会大大增加,可以达到几百K,甚至M级。这种内核尺寸的伸缩性,可以通过两个层面的措施来实现:重新编译和二进制模块选择加载。重新编译措施很简单,只需要根据不同的应用目标,选择所需的功能模块,然后对内核进行重新编译即可。这个措施应用于内核定制非常深入的情况下,比如要求内核的尺寸达到10K以下的场合。而二进制模块选择加载,则用在对内核定制不是很深入的情况。这时候维持一个 *** 作系统配置文件,文件里列举了 *** 作系统需要加载的所有二进制模块。在内核初始化完成后,会根据配置文件,加载所需的二进制模块。这需要终端设备要有外部存储器(比如硬盘、Flash等),以存储要加载的二进制模块;
2、内核的实时性必须足够强,以满足关键应用的需要。大多数的物联网设备,要求 *** 作系统内核要具备实时性,因为很多的关键性动作,必须在有限的时间内完成,否则将失去意义。内核的实时性包涵很多层面的意思,首先是中断响应的实时性,一旦外部中断发生, *** 作系统必须在足够短的时间内响应中断并做出处理。其次是线程或任务调度的实时性,一旦任务或线程所需的资源或进一步运行的条件准备就绪,必须能够马上得到调度。显然,基于非抢占式调度方式的内核很难满足这些实时性要求;
3、内核架构可扩展性强。物联网 *** 作系统的内核,应该设计成一个框架,这个框架定义了一些接口和规范,只要遵循这些接口和规范,就可以很容易的在 *** 作系统内核上增加新的功能的新的硬件支持。因为物联网的应用环境具备广谱特性,要求 *** 作系统必须能够扩展以适应新的应用环境。内核应该有一个基于总线或树结构的设备管理机制,可以动态加载设备驱动程序或其它核心模块。同时内核应该具备外部二进制模块或应用程序的动态加载功能,这些应用程序存储在外部介质上,这样就无需修改内核,只需要开发新的应用程序,就可满足特定的行业需求;
4、内核应足够安全和可靠。可靠性就不用说了,物联网应用环境具备自动化程度高、人为干预少的特点,这要求内核必须足够可靠,以支撑长时间的独立运行。安全对物联网来说更加关键,甚至关系到国家命脉。比如一个不安全的内核被应用到国家电网控制当中,一旦被外部侵入,造成的影响将无法估量。为了加强安全性,内核应支持内存保护(VMM等机制)、异常管理等机制,以在必要时隔离错误的代码。另外一个安全策略,就是不开放源代码,或者不开放关键部分的内核源代码。不公开源代码只是一种安全策略,并不代表不能免费适用内核;
5、节能省电,以支持足够的电源续航能力。 *** 作系统内核应该在CPU空闲的时候,降低CPU运行频率,或干脆关闭 CPU。对于周边设备,也应该实时判断其运行状态,一旦进入空闲状态,则切换到省电模式。同时, *** 作系统内核应最大程度的降低中断发生频率,比如在不影响实时性的情况下,把系统的时钟频率调到最低,以最大可能的节约电源。
物联网 *** 作系外围模块的特点
外围模块指为了适应物联网的应用特点, *** 作系统应该具备的一些功能特征,比如远程维护和升级等。同时也指为了扩展物联网 *** 作系统内核的功能范围,而开发的一些功能模块,比如文件系统、网络协议栈等。物联网 *** 作系统的外围模块(或外围功能)应该至少具备下列这些:
1、支持 *** 作系统核心、设备驱动程序或应用程序等的远程升级。远程升级是物联网 *** 作系统的最基本特征,这个特性可大大降低维护成本。远程升级完成后,原有的设备配置和数据能够得以继续使用。即使在升级失败的情况下, *** 作系统也应该能够恢复原有的运行状态。远程升级和维护是支持物联网 *** 作系统大规模部署的主要措施之一;
2、支持常用的文件系统和外部存储。比如支持FAT32/NTFS/DCFS等文件系统,支持硬盘、USB stick、Flash、ROM等常用存储设备。在网络连接中断的情况下,外部存储功能会发挥重要作用。比如可以临时存储采集到的数据,再网络恢复后再上传到数据中心。但文件系统和存储驱动的代码,要与 *** 作系统核心代码有效分离,能够做到非常容易的裁剪;
3、支持远程配置、远程诊断、远程管理等维护功能。这里不仅仅包涵常见的远程 *** 作特性,比如远程修改设备参数、远程查看运行信息等。还应该包涵更深层面的远程 *** 作,比如可以远程查看 *** 作系统内核的状态,远程调试线程或任务,异常时的远程dump内核状态等功能。这些功能不仅仅需要外围应用的支持,更需要内核的天然支持;
4、 支持完善的网络功能。物联网 *** 作系统必须支持完善的TCP/IP协议栈,包括对IPv4和IPv6的同时支持。这个协议栈要具备灵活的伸缩性,以适应裁剪需要。比如可以通过裁剪,使得协议栈只支持IP/UDP等协议功能,以降低代码尺寸。同时也支持丰富的IP协议族,比如Telnet/FTP/IPSec/SCTP等协议,以适用智能终端和高安全可靠的应用场合;
5、对物联网常用的无线通信功能要内置支持。比如支持GPRS/3G/HSPA/4G等公共网络的无线通信功能,同时要支持Zigbee/NFC/RFID等近场通信功能,支持WLAN/Ethernet等桌面网络接口功能。这些不同的协议之间,要能够相互转换,能够把从一种协议获取到的数据报文,转换成为另外一种协议的报文发送出去。除此之外,还应支持短信息的接收和发送、语音通信、视频通信等功能;
6、内置支持XML文件解析功能。物联网时代,不同行业之间,甚至相同行业的不同领域之间,会存在严重的信息共享壁垒。而XML格式的数据共享可以打破这个壁垒,因此XML标准在物联网领域会得到更广泛的应用。物联网 *** 作系统要内置对XML解析的支持,所有 *** 作系统的配置数据,统一用XML格式进行存储。同时也可对行业自行定义的XML格式进行解析,以完成行业转换功能;
7、支持完善的GUI功能。图形用户界面一般应用于物联网的智能终端中,完成用户和设备的交互。GUI应该定义一个完整的框架,以方便图形功能的扩展。同时应该实现常用的用户界面元素,比如文本框、按钮、列表等。另外,GUI模块应该与 *** 作系统核心分离,最好支持二进制的动态加载功能,即 *** 作系统核心根据应用程序需要,动态加载或卸载GUI模块。GUI模块的效率要足够高,从用户输入确认,到具体的动作开始执行之间的时间(可以叫做click-launch时间)要足够短,不能出现用户点击了确定、但任务的执行却等待很长时间的情况;
8、支持从外部存储介质中动态加载应用程序。物联网 *** 作系统应提供一组API,供不同应用程序调用,而且这一组 API应该根据 *** 作系统所加载的外围模块实时变化。比如在加载了GUI模块的情况下,需要提供GUI *** 作的系统调用,但是在没有GUI模块的情况下,就不应该提供GUI功能调用。同时 *** 作系统、GUI等外围模块、应用程序模块应该二进制分离, *** 作系统能够动态的从外部存储介质上按需加载应用程序。这样的一种结构,就使得整个 *** 作系统具备强大的扩展能力。 *** 作系统内核和外围模块(GUI、网络等)提供基础支持,而各种各样的行业应用,通过应用程序来实现。最后在软件发布的时候,只发布 *** 作系统内核、所需的外围模块、应用程序模块即可。
物联网 *** 作系统集成开发环境的特点
集成开发环境是构筑行业应用的关键工具,物联网 *** 作系统必须提供方便灵活的开发工具,以开发出适合行业应用的应用程序。开发环境必须足够成熟并得到广泛适用,以降低应用程序的上市时间(GTMT)。集成开发环境必须具备如下特点:
1、 物联网 *** 作系统要提供丰富灵活的API,供程序员调用,这组API应该能够支持多种语言,比如既支持C/C++,也支持Java、Basic等程序设计语言;
2、 最好充分利用已有的集成开发环境。比如可以利用Eclipse、Visual Studio等集成开发环境,这些集成开发工具具备广泛的应用基础,可以在Internet上直接获得良好的技术支持;
3、 除配套的集成开发环境外,还应定义和实现一种紧凑的应用程序格式(类似Windows的PE格式),以适用物联网的特殊需要。通过对集成开发环境进行定制,使得集成开发环境生成的代码,可以遵循这种格式;
4、 要提供一组工具,方便应用程序的开发和调试。比如提供应用程序下载工具、远程调试工具等,支撑整个开发过程。
可以看出,上述物联网 *** 作系统内核、外围模块、应用开发环境等,都是支撑平台,支撑更上一层的行业应用。行业应用才是最终产生生产力的软件,但是物联网 *** 作系统是行业应用得以茁壮生长和长期有效生存的基础,只有具备了强大灵活的物联网 *** 作系统,物联网这棵大树才能结出丰硕的果实。
1、支持功能不同:
Windows 10 IoT 企业版同时支持通用 Windows 应用和经典 Windows 应用,还提供很多创新性功能:针对现代安全威胁的高级保护,充分的部署灵活性、更新选项和支持选项,以及全面的基础结构、设备和应用管理功能。
2、移动支持不同:
Windows 10 IoT 移动企业版为需要自然的用户体验以及企业级安全和可管理性的业务线移动设备提供 Windows 10 移动企业版的功能。它即时的应用访问、对条码扫描和其他外设的固有支持以及安全的设备体验可以在各种移动情形下提升工作效率。
移动企业版还提供很多其他功能,如多个用户配置文件和高级锁定,以支持零售、医疗保健、制造和其他垂直行业中的移动业务线情形。
3、核心不同:
Windows 10 IoT 核心版是针对较小的低成本行业设备进行了优化的 Windows 10 版本。这个版本专为支持 IoT 网关或微型自助服务终端等设备而构建,旨在运行单个业务线应用。
Windows 10 IoT 核心版运行通用 Windows 应用并使用与其他 Windows 10 版本相同的开发、配置和管理工具,这使它可以轻松集成到 IoT 方案并利用现有资源。
扩展资料
用户界面:
Modern20界面
微软在Windows 10中对Modern界面进行了改进,使其与传统桌面交互使用更加自然舒畅,对于改进的Modern界面,可以称其为Modern20界面。
传统桌面:
在Windows 10 *** 作系统中,传统界面环境和之前Windows版本相比变化不是很大,自Windows 8系统移除的开始菜单也回归桌面任务栏。
Windows 10 *** 作系统的传统桌面环境更加简洁、现代。所以用户考到的是一个纯色调的传统桌面环境,虽然少了以往毛玻璃的华丽、但是简洁的环境也不失为另一种优秀的视觉体验。
参考资料:
参考资料:
物联网的 *** 作系统调度“物体”本身,因此它很可能将融合人类 *** 作系统与PC时代 *** 作系统的两种形态,物联网 *** 作系统对“物体”的调度过程通过层层分发、层层下达,通过调度云、边、端,不同层级中不同设备的计算资源而实现。
因此,物联网中的 *** 作系统涉及到芯片层、终端层、边缘层、云端层等多个层面。单一层次的物联网 *** 作系统与安卓在移动互联网领域的地位和作用类似,实现了应用软件与智能终端硬件的解耦。就像在安卓的生态环境中,开发者基本不用考虑智能终端的物理硬件配置,只需根据安卓的编程接口编写应用程序,就可以运行在所有基于安卓的智能终端上一样,物联网 *** 作系统的作用也是如此。
在物联网 *** 作系统开发企业中,由爱投斯开发的物联网 *** 作系统具备得天独厚的优势。
IOTOS®物联网 *** 作系统定位可以类比成Windows *** 作系统。Windows *** 作系统是对单一设备进行硬件集成,比如显卡、声卡、屏幕、网卡等,提供驱动开发、应用开发套件和系统自带应用。
IOTOS®物联中台则是面向项目级的 *** 作系统对智慧项目涉及的传感器、设备以及业务子系统,进行采集、集成、融合打通,向下提供设备接入SDK,向上提供应用开发API,同时提供场景通用的内置应用,以此引领智慧项目实现标准化。
因此在物联网的环境下,尤其需要 *** 作系统来屏蔽物联网底层硬件碎片化差异,提供统一的编程接口,降低物联网应用开发的门槛、成本和时间。
为了应对严重的碎片化现状,采用IOTOS®物联网 *** 作系统,该 *** 作系统主要是对设备进行抽象,快速集成、采集,提供统一的设备和数据管理服务,以及统一的上层应用接口,对应用层屏蔽接入设备或系统的差异,极大降低物联网项目应用成本。物联网 *** 作系统分为低资源MCU设备端和高资源CPU设备端;
低资源MCU设备端,由于硬件资源有限,一般都是用极低内核资源的 *** 作系统,如FreeRTOS,TinyOS,Lite OS,这类os,一般都是以C,C++进行编程,一般由资深的嵌入式工程师进行应用程序设计,难度较高。
还有一类是目前针对物联网应用开发而设计的低门槛的 *** 作系统,一般使用目前最流行的JAVA,JavaScript,LUA等高级语言编程的 *** 作系统; 使用JavaScript编程的目前有多种开源 *** 作系统,运营的比较好的是RUFF,目前有一款nodemcu使用LUA编程,JAVA因为移植难度比较大,目前只有钛极OS(TiJOS)可以实现在低资源MCU上进行编程。在淘宝上可以找到他们的开发套件,例程也比较详细和丰富。
高资源CPU设备端,资源大,可以实现复杂功能,一般都有大公司在拼,如谷歌的Brillo OS,微软的WIN10 IOT版本,uClinux,华为LiteOS等。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)