GMTC 2019 | 我们为什么要在 IoT 上使用 JavaScript?

本文探讨了JavaScript在物联网(IoT)设备上的使用,尤其是针对资源受限的智能音箱。通过ShadowNode实现Node.js在IoT设备上的运行,解决了内存和性能问题。此外,介绍了N-API在跨运行时兼容性和性能优化方面的作用,以及通过Copy-on-Write技术提高设备端应用启动效率。
摘要由CSDN通过智能技术生成
前段时间 Rokid 研发工程师 Yorkie 受 GMTC 未来移动技术出品人的邀请,去北京分享了 JavaScript in IoT,希望大家能从他的分享中有所收获。

第一次参加 GMTC 这种比较大的会议,现场有很多值得听的演讲。在进入正题之前,我先分享一下参加这次活动的体会。

我先去听了 Qigsaw 的分享( https://github.com/iqiyi/Qigsaw),它是 Android App Bundles 在国内的解决方案,通过提供了兼容 Android 的 SDK 和服务,并且支持到 Android 4.0,这对于动态化方案来说,已经是十分方便了。

接着是一家上海游戏公司 CTO 的分享,讲了 Web-IR,其实名字看上去就知道是 IR 了,但是当他分享他们已经使用 WebAssembly 把很多原生游戏都移植到 Web 平台上时,我真的很佩服他们,希望他们继续加油!

好,接下来就开始进入本文的正题,JavaScript in IoT!


首先,什么是 IoT

如字面翻译,即物联网,但真正要解释起来,其实就是两点:

  1. IoT 是面向服务的 UI
  2. IoT 面临资源受限的问题

在物联网时代,我们不再像从前那样独立地使用某个固定、单一的产品,而是在享受着整个环境或者是网络给我们提供的服务,比如原来我们买一个闹钟回来,闹钟就是闹钟,在 IoT 环境下,闹钟是其中的一环,当它叫醒你后,整个系统会为你准备起床后需要的所有待办事物,这就是物联网。

接下来我们来看看资源受限的问题:

最右侧的手机自不必说,整个生态已经相当成熟了。最左侧的是目前的低端配置,可以看到内存和可用空间都是 MB 为单位的,CPU 也相当受限,因此这种设备上 Linux 也已经不满足运行的最低需求了,所以一般是采用更轻量级的 RTOS,流行的有 FreeRTOS 和 RT-Thread(国内)。

最中间的是以 Linux 为主的 128+128 组合的设备,最为我们所熟知的就是智能音箱(无屏),对于这类设备来说包括 Alexa、Rokid、小爱同学等,现在大多数厂商在设备端的开发语言也都以 C + Lua 为主,目前也仅有 Rokid 支持 JavaScript 直接运行在设备

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值