3.2.3 物联网操作系统内核的特点
物联网操作系统内核与传统的个人计算机操作系统和智能手机类操作系统内核不同,具有以下特点。
(1) 内核尺寸伸缩性强,能够适应不同配置的硬件平台。例如,在某种极端的情况下,内核尺寸必须维持在10KB以内,以支撑内存和CPU性能都很受限的传感器,此时只要内核具备基本的任务调度和通信功能即可。再比如在另一种极端情况下,内核必须具备完善的线程调度、内存管理、本地存储、复杂的网络协议、图形用户界面等功能,才可以满足高配置的智能物联网终端的要求。这时的内核尺寸,不可避免地会大大增加,可以达到上百KB,甚至MB级。
(2) 内核实时性强,可满足关键应用的需要。大多数的物联网设备,要求操作系统内核要具备实时性,因为很多关键性动作必须在有限的时间内完成,否则将失去意义。
内核的实时性包含很多层面的意思,首先是中断响应的实时性,一旦外部中断发生,操作系统可以在足够短的时间内响应中断并做出处理。其次是线程或任务调度的实时性,一旦任务或线程所需的资源或进一步运行的条件准备就绪,就能够马上得到调度。
(3) 内核架构可扩展性强。物联网操作系统的内核,可以设计成一个框架,这个框架能够事先定义一些接口和规范,然后只要遵循这些接口和规范,就能很容易地在操作系统内核上增加新的硬件。
此外,内核还有一个基于总线或树结构的设备管理机制,可以动态加载设备驱动程序或其他核心模块。同时内核还具备外部二进制模块或应用程序的动态加载功能,这些应用程序存储在外部介质上,这样就无须修改内核,只需要开发新的应用程序,就可满足特定的行业需求。
(4) 内核具备安全性和可靠性。物联网应用环境具备自动化程度高、人为干预少的特点,这就要求内核必须足够可靠,以支撑长时间的独立运行。
安全性对物联网来说更加关键,甚至关系到国家命脉。为了加强安全性,物联网内核具有支持内存保护、异常管理等机制,以便在必要时隔离错误的代码。
(5) 节能省电,以支持足够的电源续航能力。操作系统内核在CPU空闲的时候会降低CPU运行频率,或干脆关闭CPU,对于周边设备,也会实时判断其运行状态,一旦进入空闲状态,则切换到省电模式。
同时,操作系统内核会最大程度地降低中断发生频率,比如在不影响实时性的情况下,把系统的时钟频率调到最低,以最大可能地节约电源。