微操控器(MCU)广泛运用在各行各业,如各式家电、工业自动化,即时操控、材料收集等范畴,为因应工控所需的即时(Realtime)操控、快速回应等需求,因而MCU大多搭载RTOS(即时作业体系)运作。跟着物联网的鼓起,软体业也为RTOS参加物联网的成分,以提前卡位物联网的中心软体商场…
各种处理器专用之OS
在一般功用(General-purpose)的处理器商场分类中,若以功用与履行速度来说,大致分为CPU > MPU > MCU。CPU的功用最强,首要运用在电脑产品;MPU功用次之,其运用多元,首要运用在嵌入式体系与精简型电脑等多种;而MCU则是以单一运用为主,运用在各式家电、电子产品、嵌入式产品、可穿戴设备、物联网(IoT)运用产品等操控运用。
MCU内部整合了KHz~MHz级的CPU、KB~MB级的记忆体单元(RAM与ROM/EEPROM/Flash)、时脉产生器(Oscillator;Clock Generator)、与I/O扩大单元等,可视为一种速度较慢的体系单芯片(SoC)。
因为内部存储容量小,因而大型作业体系如Windows、Linux等是不或许塞入MCU去履行的,且MCU大多被运用在即时操控的环境,因而许多容量小的RTOS(Real-Time Operating System;即时作业体系),便成为开发MCU软体的首要渠道。
主打嵌入式运用的中高阶RTOS
RTOS的品种繁复,首要规划给根据MPU或MCU的嵌入式体系所运用。例如MPU等级专用的有Integrity、QNX、VxWorks等功用强壮之 RTOS;至于体积较细巧,首要援助MCU等级为主的RTOS,则有Nucleus、ThreadX、Unison OS、ucOS II/III等等。
以Green Hills Software推出的Integrity OS为例,便是一种援助MPU (乃至CPU等级)为主的RTOS。其强项在于Integrity-178版本已经过EAL 6+(资讯安全)认证与DO-178B(飞安环境) A级认证,被运用在极度注重安全和可靠性的商场,例如战斗机(如B-2、F-16、F-22、F-35)与民航机(如Airbus A380)等范畴。该RTOS援助ARM、XScale、Blackfin、Freescale (已并入NXP) ColdFire、MIPS、PowerPC、AMD x86(嵌入式APU)等CPU/MPU渠道。
另一个闻名的QNX RTOS,选用微中心架构,是仅有成功打入商用商场的OS,其强项是多媒体的即时处理才能,适用于车(机)上文娱设备与手机等嵌入式商场。QNX于 2010年被BlackBerry购并,并开宣布BB 10作业体系。QNX援助IA32、MIPS、PowerPC、SH-4、ARM、StrongARM、XScale等CPU/MPU渠道。
至于像是IntervalZero的RTX、RTX64,则是规划来与微软Windows共存共容的RTOS,调配EtherCAT协议来做为工厂自动化的运用。其间,Windows首要担任GUI、贮存、运算,RTX则担任即时工控与材料收集,让工控软体开发更简单。以上的RTOS都是MB至GB等级的 MPU等级OS,不适用于MCU的环境。
主打MCU运用的商用RTOS
中低阶RTOS部分,首要是把软体功用极尽精简到MB乃至KB等级,使整个OS与首要运用程式,均能够塞入MCU里的ROM/EEPROM/Flash。因为MCU运用的范畴愈加广泛,其软体有必要力求愈加精简,因而MCU专用的RTOS大多具有十分高度模组化的架构,从中心、驱动程式、档案体系、周边 I/O、网路援助等,都能够量身订作,以利产品快速上市。
商用的RTOS有些会供给原始码给授权客户,而开源的RTOS则更能自在运用,让开发人员能够编译出程式码最小、最佳化的履行环境。
因为各芯片厂所推出的MCU产品/开发板,都会有其对应的OS与IDE(整合软体开发环境),但这些OS与软体开发环境或许只适用于该厂的MCU产品,因而第三方软体厂商,就开宣布跨芯片/跨硬体渠道的OS与IDE,让开发人员不须因为换了硬体渠道,软体就有必要悉数改写。
现在MCU OS/IDE商场占有率最高的,大多是软体公司所推出商用RTOS(调配各厂商的MCU产品),然跟着ARM推出Cortex-M、Cortex-R等指令集架构,进军可穿戴与物联网运用商场,使得ARM架构(采开源码)的RTOS开端有提高的趋势。
Mentor Graphics旗下Accelerated Technology公司所推出的Nucleus,采Microkernel规划,声称有30亿个设备导入,优势是中心长度能够小至2KB,且开发人员不需求编撰嵌入式设备专用BSP(开发板援助套装软体),因而被广泛运用到消费性电子、移动设备、车用电子、智能动力、医疗仪器、工业/工控等范畴。
前期选用联发科MT6217芯片的大陆山寨、白牌、双卡2G手机,便是履行Nucleus RTOS。该RTOS援助ARM、MicroBlaze、MIPS、Nios II、Power、SuperH、XScale等嵌入式MCU架构。
Express Logic推出的ThreadX,则是一套免收权利金的RTOS,其长处是具有超快速的开机时刻、反应时刻,其Picokernel中心长度低于2KB,并经过安全标准,声称有21亿个设备导入运用。例如HP的旗下印表机和业务机便选用该RTOS。可广泛援助各式32位MCU,包括ARM、Atmel、 BlackFin、CoreFire/68K、EFM32、Freescale (NXP)、FM3、H8、XMC、M-Core、MicroBlaze、MIPS、Nios II、Power、STM32、StrongARM、Synopsys ARC、TI、Win32、x86/x386、XScale等等。
Wind River公司所推出的VxWorks,首要针对嵌入式体系规划,采Monolithic (单体式)中心,优势是具有先占式多工处理中心、循环履行、岔断快速反应等特性,原生援助64位处理器架构(x64)、可进行平行(SMP)/非平行 (AMP)处理,累积至今有超越15亿个设备导入。
新版VxWorks 7则瞄准IoT所需求的可扩大性、安全性、衔接性、绘图才能、虚拟化等做强化,而全功用的VxWorks微中心长度只需20KB。VxWorks广受科技业界的选用,登陆火星的Curiosity(猎奇号)便选用VxWorks。该RTOS援助Intel x86(包括Quark SoC与x86-64)、MIPS、PowerPC、SH-4、ARM等CPU/MPU架构。
RoweBots公司的Unison OS,则是一款彻底相容于POSIX(可移植作业体系界面)的RTOS,适用于MCU、DSC、DSP、SoC、FPGA等32位的硬体开发环境,其优点是特别针对物联网的运用,提高其体系安全性,且中心程式码在某些运用架构能够低到仅1KB。援助Microchip PIC32、Renesas R32C/SH2A、ST STM32、TI ARM Cortex-M3等32位MCU。
Micrium的μc/OS-II (microcontroller OS version 2),主打可携、能在ROM履行、弹性、先占式多工的RTOS中心,可办理高达250个运用使命。μc/OS-III则主打无限运用使命、几近于零的岔断,并可供给原始码给客户。
其优势在于该体系原始码敞开、整齐共同、注释翔实,亦经过FAA认证与DO-178B认证,合适各种嵌入式与物联网的体系开发,中心巨细从5或 6KB~24KB。至于μc/OS-III HW-RTOS,则是针对ARM Cortex-M为主的MCU做硬体加快。该RTOS可援助超越100种DSP、MPU、MCU。
ARM MCU促进开源RTOS鼓起
近年来因为ARM架构的处理器横扫全球智能移动设备(手机/平板)商场,除了调配各MCU/MPU硬体渠道所推出的商用RTOS/IDE之外,为进军物联网与可穿戴的MCU级运用,ARM推出Cortex-M与Cortex-R的指令集架构,调配开源的OS/IDE来抢占MCU的运用商场。
例如ARM推出的mbed OS与相关开发环境,便着重于嵌入式设备与IoT的运用,具有衔接性、高效率、安全性、生产力的OS,调配其mbed-rtos函式库,亦可做为RTOS的运用。该mbed开发环境,可开宣布智能家庭、智能城市、可穿戴等运用产品。
此外,坊间针对ARM渠道所推出的开源RTOS/IDE许多,例如FreeRTOS、uKOS-II、Atomthreads、BeRTOS社群版、 ChibiOS/RT、CoActionOS、eCos、Embox、Erika Enterprise/RT-Druid、Keil (ARM) RTX、Lepton、nOS、Nut/OS、NuttX、RIOT、RT-Thread、TI-RTOS-KERNEL(SYS/BIOS)、TNeo 等等,让开发人员有更多的挑选。
其他专用MCU的非即时OS概述
此外,也有许多针对MCU规划的开源OS (非RTOS),但相同具有体积小的特性,有些是针对IoT的WSN(无线传感网路)运用,例如Contiki OS、TinyOS。而有些则具有一般桌上型图形化运用界面(GUI),例如SymbOS、Wheels OS等。
Contiki OS是一套开源的微型OS,可运用在Atmel ARM/AVR、LPC、P%&&&&&%32、TI MSP430/CC2430/2538/2630/2650、STM32W等MCU做IoT运用,也可在博物馆级的8位电脑(Apple II、Atari、Commodore等)做上网连线、乃至在骨灰级游乐器(Atari Jaguar、Game Boy/Advance、GP32、任天堂红白机、PC Engine等)上履行。
至于SymbOS,则是一套能在8位Z80 CPU (如MSX、Amstrad)的古玩电脑上履行之免费多媒体图形作业体系,赋予如Windows 95般的操作画面,让旧电脑回春。