

IoT时代的嵌入式开发平台
从完整开发平台的角度,看看几十年来涌现的数以百千计的RTOS,能不能算合格的IoT开发平台呢?答案恐怕是否定的,即使有些非常知名的RTOS,也是如此,有许多RTOS,充其量是一个调度器。有意思的是,从开发平台完整性来看,目前流传的绝大多数嵌入式操作系统,甚至比不上Industrial Programming Inc(IPI)公司在上世纪70年代的MTOS。
那么,IoT时代完整的C开发平台,至少需要具备哪些特征呢?
只有调度器内核是不够的,按今天的标准,它甚至不能称作RTOS,这种系统,权且叫它“裸核”吧,并不比裸机C开发高明多少。用户使用操作系统,目的是为了省事,并没有在操作系统下能干成而裸机C干不成的事情。然而在“裸核”下开发,没有标准驱动框架,没有Shell,没有IO系统,没有C Runtime支持,真的没省多少事。
在“裸核”的基础上,起码,要提供C Runtime,提供C库,使之成为完整的C开发平台,让标准的c程序能编译运行。所谓的标准C程序,不仅仅指符合C语法的程序,C库函数也是标准的一部分,调用标准C库的程序都不能运行,不能算完整的C支持平台吧。要支持完整的C Runtime,你就必须有文件系统,有IO驱动架构,有协议栈等。有了C Runtime,才能支持C++,才能实现Python、Lua、JavaScript等更高级的开发语言,实现IoT设备的快速开发。
即使有了完整的C支持平台,在IoT时代,还是不够的。我要访问一个云服务器,还要自己写Socket通信,从最底层的http编解码开始;我要在设备间交换点数据,或者配置一下设备功能,起码JSON之类的解析器要提供吧。还有,诸如WiFi、蓝牙、ZigBee等,是IoT中最常用的无线协议,也是必须支持的。进一步地,较为复杂的设备,还需要有图形系统支持,一个完善的GUI也是非常受欢迎的了。
总之,IoT时代,需要的是能快速开发IoT设备的平台,而不仅仅是提供一个符合C语法规范的开发平台。
作者:罗侍田,都江堰操作系统(DJYOS)创始人,长期从事嵌入式系统开发。个人博客: http://blog.csdn.net/djyos 。
责编:周建丁(IoT投稿请联系zhoujd@csdn.net)
传真:0755 - 2799 6625
投诉:133-2299-1235
邮箱:sale@inmiga.com