天天看點

JerryScript:物聯網開發者的得力工具

摘要:本文檔以Linux開發環境及realview-pbx-a9開發闆為例,簡單介紹LiteOS上jerryscript指令的使用。

本文分享自華為雲社群《Jerryscript—讓開發者事半功倍》,作者:Lionlace。

物聯網裝置在CPU性能和記憶體空間方面皆存在嚴格受限,在使用V8引擎這類大型引擎時難免存在諸多不便。在此背景下,JerryScript引擎誕生了。JerryScript是由三星開發的一款炙手可熱的輕量級引擎,其目的是讓JavaScript開發者能夠更好地建構物聯網應用,它可以在RAM小于64KB和Flash小于200KB的裝置上運作。

JerryScript的主要特征有:

完全符合ECMAScript 5.1标準;

為ARM Thumb-2編譯時,二進制大小為160K;

針對低記憶體消耗進行了高度優化;

以C99編寫,以實作最大的便攜性;

快照支援将JavaScript源代碼預編譯為位元組代碼;

成熟的C API,易于嵌入應用程式。

目前LiteOS已适配的開發闆中可以支援其運作的開發闆為:realview-pbx-a9。

本文檔以Linux開發環境及realview-pbx-a9開發闆為例,簡單介紹LiteOS上jerryscript指令的使用。

首先設定realview-pbx-a9的預設配置,在Linux系統的LiteOS源碼根目錄下,執行如下指令:

執行如下指令打開LiteOS menuconfig菜單啟用jerryscript

按如下路徑開啟jerryscript元件及jerry指令

注:RAMFS為可選元件,如選擇該元件,可生成一個/ramfs/hello.js示例檔案,在LiteOS的shell中執行jerry /ramfs/hello.js指令可檢視其運作結果, jerryscript元件依賴vfs,開啟jerryscript元件後,vfs即自動開啟。

儲存退出,此時LiteOS會從github自動下載下傳jerryscript源代碼,關于線上元件的自動下載下傳,請查閱線上元件下載下傳流程。待下載下傳完成後,執行如下指令編譯LiteOS工程。

編譯成功後将在out/realview-pbx-a9/lib目錄下生成元件靜态庫檔案libjerryscript.a,生成的系統鏡像檔案為Huawei_LiteOS.bin。

注:下載下傳需要Linux主機可以通路網際網路,并安裝git。

檢視jerry指令是否生效:

按上述方法使能jerryscript後,jerry指令會被編譯進系統鏡像檔案中。使用序列槽工具,進入shell,輸入help指令後,如果顯示jerry指令,則表明已經生效。

檢視jerry指令的使用幫助資訊:進入shell, 輸入jerry -h。

jerryscript目前适配接口有限,僅支援運作本地js檔案,後續将持續适配更多接口以友善使用。

點選關注,第一時間了解華為雲新鮮技術~

繼續閱讀