物联网编程语言Toit宣布开源,可实现代码秒级部署

物联网编程语言Toit宣布开源,可实现代码秒级部署,第1张

编程语言Toit开源了!

Toit 是一种面向对象的物联网编程语言,在 IoT设备上能够实现秒级代码部署(注:如果使用C语言,一个简单的代码更改需要几分钟才能重新部署);同时,Toit也是一种现代的、内存安全的编程语言,集成了先进的编辑器功能,如语法高亮、goto-definitions 、代码自动补全等等。

Toit 编程语言具备以下特征:

Toit的出现是因为有一群软件工程师对IoT开发的现状感到不满,凭借着在Google为Flutter构建V8 JavaScript 引擎和Dart语言的丰富经验,他们开始自己构建适用于IoT的最佳平台。也正是在平台构建过程中,他们意识到必须有一种高效的编程语言来满足物联网的需求。最开始,他们尝试使用了Python和JavaScript,但在微控制器上,这两种语言的速度都不够快。

为了解决性能和健壮性问题,Toit团队开始研究Toit语言,经过测试发现,Toit在 ESP32 上的执行代码速度比 MicroPython 快 30 倍以上,同时学习门槛也很低,Python开发人员在几小时内就可以学会它。

为什么会选择开源Toit?Toit团队表示:“从一开始,我们就明确知道Toit肯定是会在某个时刻开源的,因为所有主流的编程语言都是开源的。开源可以获得充满活力的生态系统,编程语言才能被大规模采用。经过多次迭代和实际环境的应用,Toit语言已经成为微控制器编写强大软件的利器,我们希望更多开发者能够从中受益,因此选择将它开源出来。”

链接:https://juejin.cn/news/7034398085325422628

Toit 编译器、虚拟机和所有支持基础设施均在LGPL-2.1许可下获得许可。lib/目录中包含的标准库在MIT许可下获得许可。examples/ 目录中包含的示例在0BSD许可下获得许可。

某些子目录在它们自己的开源许可证下,在这些目录中有详细说明。这些子目录是:

虚拟机对 ESP-IDF 有要求,适用于 Linux 和 ESP32 构建(对于 Linux,它适用于 MBedTLS 实现)。

我们建议您使用 Toitware 的ESP-IDF fork,它有一些变化:

请记住将其添加到您的 ENV 中IDF_PATH:

如果要为 ESP32 构建映像,请安装 ESP32 工具。

在 Linux 上:

对于其他平台,请参阅乐鑫的文档。

请记住更新您的环境变量:

构建系统将自动使用 Toit 编译器的 32 位构建来为 ESP32 生成正确的可执行映像。如果您使用的是 64 位 Linux 机器并且您不支持编译安装的 32 位可执行文件,则您的构建可能会失败。您可以通过安装gcc-multilib和g++-multilib包在大多数 Linux 发行版上安装此支持。如果使用apt-get,则可以使用以下命令:

确保IDF_PATH已设置,如上所述。

然后在结帐的根目录下运行以下命令。

这将构建 Toit VM、编译器、语言服务器和包管理器。

然后你应该能够执行一个 toit 文件:

包管理器位于build/toitpkg:

语言服务器可以通过以下方式启动:

有关如何集成语言服务器,请参阅 IDE 的说明。

对于 VSCode,您还可以使用已发布的扩展。

对 Mac 构建的支持仍在进行中。目前,无法在 Mac 上为 ESP32 构建固件映像,因为它需要编译和运行 32 位可执行文件。我们正在努力 解决这个问题。

确保已设置 ESP32 工具的环境变量,如依赖项部分所述。

为您的 ESP32 设备构建一个可以使用esptool.py.

默认情况下,映像会启动并运行examples/hello.toit. 您可以使用自己的入口点并通过ESP32_ENTRYmake 变量指定它:

您可以通过设置ESP32_WIFI_SSID和 ESP32_WIFI_PASSWORDmake 变量轻松配置 ESP32 的内置 WiFi :

这允许 WiFi 在网络接口打开时自动启动。

Toit开源地址: https://github.com/toitlang/toit

物联网正以前所未有的速度肆虐。在我们向您介绍物联网(IoT)开源开发工具之前,您还应该先了解其他一些内容。随着IT部门对Gartner和思科等公司的预测所产生的炒作进行了大肆宣传,声称到2020年底,物联网将连接超过500亿台设备,突然间每个人都想成为物联网的一部分。嗯,难怪你也期待成为一个价值1.9万亿美元的行业的一部分。

物联网开源开发工具普及的原因是用户社区。该社区希望拥有利用消费者技术设备的开放市场,而不是由单一供应商主导。开源的另一个原因是提供一个生态系统,其中开发的 物联网设备和应用程序 可以无需麻烦和许多努力进行集成。最后开源意味着您的设备或应用程序可以支持众多供应商,因为您不会为任何特定供应商开发代码。

物联网(IoT)开源开发工具大多是由早期在物联网领域开发的开源社区开发的。您可以比以前更快地部署使用这些工具的 IoT应用程序 。如果您 开始构建您的第一个物联网应用程序, 那么这个开源工具指南专门为您服务。

在这里,我们列出了100个最广泛使用和可靠的 开源工具,用于开发物联网应用程序 。我已尽力包括物联网硬件平台,开发工具,软件,集成工具,操作系统和监控工具。

现在所有上面列出的开发工具都非常用户友好,但在您选择这些工具之前,我们建议您在此处查看完整的配置文件

开发任何物联网应用程序最重要的部分是选择合适的硬件平台。开始使用像Arduino Yun这样的简单平台来升级到UDOO,这完全取决于应用程序的资源需求。以下是可供选择的 最佳物联网硬件平台

我们建议您在从以下列出的任何软件中做出选择之前, 如何选择家庭自动化系统。

43. Eclipse SmartHome

44. Home Gateway Initiative (HGI)( Home Automation)

45. Ninja Blocks

46. openHAB

47. PrivateEyePi

48. RaZberry

49. The Thing System

许多首次使用 物联网的应用程序开发人员都 低估了选择正确的中间件的重要性。中间件是一种能够在所有不同组件之间实现顺畅通信的机制。

简单来说,“中间件”便于“互联网”和“物联网”之间的通信。

根据您的需要从以下选择正确的中间件:

选择合适的硬件平台后,就可以为您的应用选择合适的物联网操作系统了。选择应基于应用程序级别,API要求和硬件需求。以下是可供选择的 顶级物联网操作系统

物联网开源工具列表中的下一个是将有兴趣选择的集成平台。下面列出了一些目前可用的最佳物联网集成工具。

最后,您正处于为物联网应用选择正确的通信平台的阶段。以下是建议:

物联网开源资源

最后,如果您需要任何专门资源的参考,您可能想看看下面列出的那些。

我已尽最大努力找到这100个物联网开源工具和资源列表。如有更好的,请随时在下面留下您的评论。

相信大家都知道,在操作系统领域,我国一直处于短板位置,而美国的操作系统在全球市场的占有率却高达95%,几乎达到垄断的程度。但这一两年,也正是因为遭受着众多外部因素的压力,包括芯片制裁、美国的垄断等,我国在 科技 领域逐渐蓬勃发展起来,国产系统自研因此成为众多国产企业发展的重中之重。

就此,在万众期待的目光下,华为的鸿蒙系统,阿里的AliOS、国产的UOS系统相继出现在大众面前。而且,华为还将鸿蒙系统最核心的基础架构部分,全部捐赠给“开放原子开源基金会”,这一举动,得到了众多网友的一致好评。

说到自研系统,实际上,腾讯是最早自主研发出操作系统的企业。作为国内知名的互联网企业,腾讯自主研发出服务器系统TencentOS Server、物联网操作系统TencentOS Tiny、边缘操作系统TencentOS Edge和桌面操作系统TencentOS Desktop。其中,服务器系统TencentOS Server、 物联网系统TencentOS Tiny这两款早在2019年就已经实现开源。

TencentOS Server

在2010年,TencentOS Server被最早研发推出。在此之前,腾讯使用的是开源Linux操作系统,但随着任务需求的日益复杂化,初期使用的开源Linux 操作系统已经无法充分满足,腾讯决定结合自身业务的特性需求、性能需求和安全需求,自主研发出比Linux更符合实际需求的操作系统——服务器系统TencentOS Server。

相比于初期使用的开源Linux 操作系统,TencentOS Server在性能、技术服务以及更新速度等方面都体现出明显的优势,不仅解决了Linux开源系统更新慢,性能弱,技术服务能力差等问题,在节约耗能、成本方面的优势更是突出,据相关数据显示,目前此款系统在腾讯的服务器中得到了大量的采用,在2020年的装机量就达到百万量级,相比以前节约了11%的能耗,由此计算下来大约每年可以节约17万吨的碳排放量,这就在有效节约成本的同时也提高单台服务器的资源利用率。

TencentOS Tiny

但随着物联网技术高速发展,新场景迭代更新速度加快,TencentOS Server在应对现状上也显得稍有不足,于是在2018年,腾讯开始研发新的系统来满足新场景的需求,TencentOS Tiny、TencentOS Edge等自研系统就此应运而生。

相对于TencentOS Server,物联网操作系统TencentOS Tiny具备着更明显的优势特性,比如体积小、功耗低、模块化以及安全可靠等,更适合应用于智慧农业、智慧城市、车联网等领域的物联网设备。

据悉,在此前辽宁开展的两期AI智慧种植试点过程中,TencentOS Tiny就起到将农作物生长信息和环境参数等数据,上传到云端以便于腾讯智慧农业大脑iGrow系统计算推理,并设计出最佳种植方案的作用。

这就不难看出,在实际应用上,TencentOS Tiny 在智慧农业、智慧城市、车联网等领域的数据收集及上报方面发挥着重要的作用,这进一步增强了我国 科技 助农的实力,同时也持续强化着乡村振兴的责任意识。

纵观目前,随着腾讯开源节奏不断加快,我国物联网 科技 产业得到了迅猛发展。腾讯相关负责人也表示“希望通过TencentOS 的开源捐赠,号召更多人基于更中立更开放的心态来发展物联网终端软件生态,促使物联网操作系统和终端生态走到合作共赢的轨道上来,共同推动国产物联网操作系统的发展和物联网行业标准制定,为解决物联网终端碎片化难题贡献力量。”

可见,在操作系统领域,腾讯一直致力于通过开源和广大开发者共享技术成果,并且联合众多的厂商持续努力着。同时,华为、阿里等众多的互联网企业、 科技 企业也在不断自主研发着自己的系统,并且实现开源,致力于让国产系统变得更强大。相信未来,我们会看到更多先进的国产核心技术登上国际舞台。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/376478.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-14
下一篇2023-05-14

发表评论

登录后才能评论

评论列表(0条)

    保存