ELEXCON深圳国际电子展暨嵌入式系统展是港澳大湾区最大的电子类专业展览会,打通“智能设计-嵌入式系统-SiP系统级封装-供应链升级-AIoT生态圈”产业环节、面向电子工程师和嵌入式开发者的一场嘉年华盛宴。首日就突破2.6万观展人数。
鉴释有幸受邀,CEO兼创始人梁宇宁在同期举行的中国嵌入式技术大会上,作为演讲嘉宾分享和讨论了基于WebAssembly (WASM) 技术在嵌入式领域的开发方法,包括WASM的优势、背景和工作原理;WASM面临的各项挑战及未来的发展趋势。
从2015年开始,WASM要解决Web浏览器上无法运行C语言程序的问题,并提供沙箱化的执行环境。然而,我们发现WASM也可以慢慢的运用在嵌入式开发中去,提供了很多便利。例如软件开发和硬件的解耦,大大提高了投放市场的效率;而且业务软件可以预先在WASM的API HOST平台上开发调试,以提高软件质量;同时您的业务软件还可以在不同硬件平台上运行。
嵌入式开发因为性能问题一直都是以C语言为主的开发,随着时代的变迁,开发方法也要有新的变化去适应发展的趋势,解决C语言带来的问题。近年来,从事C语言开发的人员越来越少,但同时C语言的依赖库又非常多,改善兼容性变得非常重要。急需提高稳定性和安全性,特别在AIOT的产品上显得尤为突出。会上,梁宇宁谈及AIOT产品的嵌入式开发中潜在的风险,其主要在内存管理设计和实现中数据结构的线性安排和读写保护不够,而导致栈溢出;核心平台API的调用保护不够导致提权DDOS攻击。
谈及上述问题的解决方法时,梁宇宁说:“内存管理加读写范围保护,并用我们的基于open64编译器全程序的优化来减少带来的overhead。要借用WASM静态特性,在函数的调用做范围保护,防止调用动态生成代码和核心API。”
演讲结束,梁宇宁与台下观众讨论了如何结合静态分析、动态分析、编译器、形式化验证和RISCV芯片设计一起联合开发高质量且安全的产品。
以下节选自部分观众提问:
问:功能安全这一块的话,鉴释有没有在考虑我们工业的可靠性公共安全?
答:这方面我们有跟seL4基金会合作展开来做的。seL4基金会是通过形式化验证把设计跟实现联合去做验证。跟26262对于开发流程保证安全标的准验证不同,seL4它验证保证了很多内存管理实现,没有不确定性,保障不被黑客攻击。这个理论上非常强的形式化验证配合上设计和实现一起去做,否则,不是为验证而设计和实现的操作系统,是没办法去验证的。
问:你们产品对客户的程序代码会有一些改动对不对?比如检查会不会影响code size?
答:其实code size主要跟编译器有关系,跟原代码是没关系的。我们做工具链,是把运行环境也都做了,包括编译环境,可以保证它又高效,又便宜。
鉴释最近宣布与seL4基金会展开合作,共同在嵌入式系统中实践形式化验证。