成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

YodaOS:一個(gè)屬于 Node.js 社區(qū)的操作系統(tǒng)

Batkid / 1922人閱讀

摘要:的架構(gòu)跟類似,從下至上,由系統(tǒng)服務(wù)和應(yīng)用框架組成。依托于提供的運(yùn)行時(shí),從到現(xiàn)在的和,在構(gòu)建工具領(lǐng)域,社區(qū)也不斷涌現(xiàn)出非常卓越的開源項(xiàng)目來。

大家好,很開心在這里宣布 YodaOS 開源了。他將承載 Rokid 4年以來對于人工智能和語音交互領(lǐng)域的沉淀,并選擇 Node.js 作為操作系統(tǒng)的一等開發(fā)公民,全部開放給社區(qū)。

YodaOS 的架構(gòu)跟 Android 類似,從下至上,由 Linux Kernel、系統(tǒng)服務(wù)和應(yīng)用框架組成。不過 YodaOS 有以下不同:

開發(fā)者可以直接使用 JavaScript / Node.js 來開發(fā)本地應(yīng)用(技能);

封裝了 AI 抽象層,可以通過 JavaScript 直接調(diào)用到諸如語音激活、語音識別、人臉識別等接口;

除了支持默認(rèn)的 Node.js API 外,YodaOS 還提供:

內(nèi)置的語音激活和語音識別 API,真正做到了開箱即用(開發(fā))的語音交互系統(tǒng);

對音量控制、電源管理、藍(lán)牙、多媒體播放、LED 燈效和 OTA 等都進(jìn)行了接口封裝;

對物聯(lián)網(wǎng)開發(fā)者來說,內(nèi)置了標(biāo)準(zhǔn)化的 WebSocket、MQTT 等物聯(lián)網(wǎng)協(xié)議的客戶端實(shí)現(xiàn);

YodaOS 也支持 npm 倉庫,開發(fā)者可以根據(jù)自己的需要在 OS 中運(yùn)行所需的模塊,不過并不推薦使用一些實(shí)現(xiàn)起來很重的模塊,因?yàn)?YodaOS 需要支持中低端設(shè)備,所以有時(shí)候也需要考慮到性能方面的因素。

如果遇到一些 npm 倉庫確實(shí)實(shí)現(xiàn)很重,但又不得不用的時(shí)候,在 YodaOS 上,我們一般的做法是使用 N-API 橋接 C/C++ 模塊,然后保證 JavaScript API 與對應(yīng)的 npm 包一致。

同時(shí)借助于 N-API,開發(fā)者可以將任何 Linux 的庫移植到 YodaOS 上,并通過 N-API 以 JavaScript API 方式使用,可以這么理解,N-API 之于 YodaOS,就像 JNI 之于 Android。

為什么是 Node.js

前面提到了 YodaOS 選擇擁抱 Node.js 和 Node.js 開發(fā)者,最大的一個(gè)原因就是在過去將近10年的時(shí)間,從最開始 Ryan Dahl 定義的,一個(gè)輕量級的 Web 服務(wù)器框架,到如今的 Express、Loopback、Koajs、Midway 和 Egg Framework,在 Web 服務(wù)器框架領(lǐng)域已經(jīng)漸漸成熟。

依托于 Node.js 提供的運(yùn)行時(shí),從 Grunt、Gulp 到現(xiàn)在的 Webpack 和 Parcel,在構(gòu)建工具領(lǐng)域,社區(qū)也不斷涌現(xiàn)出非常卓越的開源項(xiàng)目來。Node.js 正在發(fā)揮每位開發(fā)者的想象力,社區(qū)中幾乎有你需要的一切,甚至于在社區(qū)中,有一句流傳已久的名言:

“any application that?can?be written in JavaScript,?will eventually be
written in JavaScript”

——Atwood’s Law

意思就是說,只要能被 JavaScript 來編寫的程序,終將使用 JavaScript 實(shí)現(xiàn)。那為什么不用 JavaScript 來寫一個(gè)操作系統(tǒng)呢?

當(dāng)然上面的只是一個(gè)有趣的引子,Rokid 真正想做的是讓 Node.js 開發(fā)者能夠以更低的門檻進(jìn)入語音交互和嵌入式領(lǐng)域。

Node.js 與 ShadowNode

YodaOS 雖然跟 Android 的架構(gòu)相似,不過解決的問題,及目標(biāo)設(shè)備并不盡然相同,對于現(xiàn)在越來越便宜的手機(jī),Android 開發(fā)者幾乎不用擔(dān)心系統(tǒng)性能的問題。然而對于像智能音響、IoT 終端以及其他嵌入式設(shè)備,通常硬件資源都是非常緊缺的,在這種情況下,OS 就要解決開發(fā)者“既要節(jié)省資源、又要便于開發(fā)”的問題。

于是針對中低端硬件產(chǎn)品(內(nèi)存介于 128MB 到 256MB 之間),我們創(chuàng)造了 ShadowNode 來解決這個(gè)問題,它是 Rokid 基于三星 IoT.js 二次開發(fā)的一款 Node.js 運(yùn)行時(shí),它具備更快的啟動速度和更低的資源占用,相比 IoT.js,它:

提供了更好的錯(cuò)誤棧信息和性能調(diào)試工具;
支持了基于 N-API 的跨運(yùn)行時(shí)模塊執(zhí)行;
針對特定芯片的性能優(yōu)化,比如 AmLogic A113 和 Kamino18;

借助于 N-API 的 ABI 兼容特性,我們實(shí)現(xiàn)了 OS 上層框架和應(yīng)用的運(yùn)行時(shí)兼容性。比如開發(fā)者完全可以選擇在更高級的設(shè)備上運(yùn)行 YodaOS,此時(shí)內(nèi)存和 Flash 不再是瓶頸,開發(fā)者只需要更換系統(tǒng)中的 Node.js 運(yùn)行時(shí),即可獲得更快的執(zhí)行速度,不需要修改一行上層代碼。

最后

我們希望借助 YodaOS,為 Node.js 社區(qū)補(bǔ)全終端開發(fā)這一版圖,讓我們用這門親切的語言,再次回到我們熟悉的“端”的開發(fā)。

如果想一起加入 YodaOS,可以在 GitHub 上關(guān)注我們,項(xiàng)目地址:https://github.com/yodaos-pro...。

關(guān)于 YodaOS:

YodaOS 是 Rokid 研發(fā)的首個(gè)全棧開源 AI 操作系統(tǒng),由 Linux 內(nèi)核、硬件抽象層、AI 抽象層和 JavaScript 框架組成,專為下一代人機(jī)交互設(shè)備開發(fā),可用于智能音箱、智能家居、智能穿戴和車載等多種設(shè)備和場景。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/108926.html

相關(guān)文章

  • YodaOS開發(fā)套件征集活動

    摘要:為了能讓感興趣的開發(fā)者小伙伴第一時(shí)間體驗(yàn)到,聯(lián)合社區(qū)趕在春節(jié)前發(fā)起開發(fā)套件試用征集活動,該套件是基于自研語音解決方案平臺打造而成。與此同時(shí),我們也同樣提供高度定制化模塊化的整體架構(gòu),開發(fā)者亦可方便地選擇想要集成的模塊對整個(gè)操作系統(tǒng)重新組裝。 1月28日,Rokid為人機(jī)交互設(shè)備開發(fā)的開源人工智能操作系統(tǒng)——YodaOS正式上線,可用于智能音箱、智能家居、智能穿戴和車載等多種設(shè)備和場景。...

    canger 評論0 收藏0
  • YodaOS開發(fā)套件征集活動

    摘要:為了能讓感興趣的開發(fā)者小伙伴第一時(shí)間體驗(yàn)到,聯(lián)合社區(qū)趕在春節(jié)前發(fā)起開發(fā)套件試用征集活動,該套件是基于自研語音解決方案平臺打造而成。與此同時(shí),我們也同樣提供高度定制化模塊化的整體架構(gòu),開發(fā)者亦可方便地選擇想要集成的模塊對整個(gè)操作系統(tǒng)重新組裝。 1月28日,Rokid為人機(jī)交互設(shè)備開發(fā)的開源人工智能操作系統(tǒng)——YodaOS正式上線,可用于智能音箱、智能家居、智能穿戴和車載等多種設(shè)備和場景。...

    call_me_R 評論0 收藏0
  • 第八期杭州NodeParty x Rokid技術(shù)分享會回顧

    摘要:月號,杭州和聯(lián)合主辦的第八期技術(shù)分享會,在公司如期舉行。張偉林,宋小菜資深前端開發(fā)工程師,年,霹靂迷,已手殘的紙牌魔術(shù)師,喜歡神奇的東西,技術(shù)棧從上向下不斷橫向縱向貫穿,目前在尋找前后端大一統(tǒng)思想的路上越走越偏。 showImg(https://segmentfault.com/img/bVbkWN4?w=3000&h=1686); 12 月 9 號,杭州 NodeParty 和 Ro...

    gself 評論0 收藏0
  • YodaOS 中是如何生成 API

    摘要:系統(tǒng)在初始化時(shí),會加載所有,然后分別在和生成對應(yīng)的。那么在中,又是如何將上述的生成為開發(fā)者直接使用的接口的呢下面就為大家介紹我們引入的。它接受一個(gè)對象,然后會遍歷原型鏈中的對象,并且分別按照和去生成一個(gè)叫的對象,最后將這個(gè)對象返回給開發(fā)者。 在 Node.js 社區(qū)中,其實(shí)不乏通過 Markdown 生成 RESTful API 的框架,按照一定的格式約定好 API 所需要的數(shù)據(jù),然后...

    Tikitoo 評論0 收藏0
  • 了解語音交互:從“若琪,今天杭州天氣”發(fā)生了什么?

    摘要:接下來,由會通過上傳音頻數(shù)據(jù),云端通過一系列算法最終將語音數(shù)據(jù)轉(zhuǎn)換為兩部分結(jié)果純文本,表示這段音頻數(shù)據(jù)中用戶所說的話,比如若琪今天的天氣。 本文是面向 Web 開發(fā)者所寫,介紹關(guān)于語音交互的一篇科普性質(zhì)的文章,希望借助這篇文章,讓開發(fā)者了解到什么是語音交互,以及在 YodaOS 中的技術(shù)實(shí)現(xiàn)。不了解YodaOS是什么?點(diǎn)擊這里回顧。 作為 Web 開發(fā)者,相信在面試時(shí)常會被問到瀏覽器輸...

    kel 評論0 收藏0

發(fā)表評論

0條評論

Batkid

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<