著名開源開發者 Fabrice Bellard(因 QEMU、TinyCC、FFmpeg 和 QuickJS 等項目而知名)開源了一個全新 JavaScript 引擎:MicroQuickJS,特點是極低的資源占用,專為嵌入式系統和受限內存環境設計。
![]()
開源地址:https://github.com/bellard/mquickjs
根據介紹,MicroQuickJS(又名 MQuickJS)是一款面向嵌入式系統的 JavaScript 引擎。它僅需 10kB 的 RAM 即可編譯和運行 JavaScript 程序。
整個引擎(包括 C 庫)大約需要 100kB 的 ROM(ARM Thumb-2 代碼),其運行速度與 QuickJS 相當。
MQuickJS 支持簡化版 JavaScript 語言子集,類似 ES5 范圍,但比標準 ES5 更嚴格,也不包括 JavaScript 中所有現代大型特性,目的是減少運行時內存壓力和復雜性。
![]()
盡管 MQuickJS 與 QuickJS 共享許多代碼,但為了減少內存消耗,其內部機制有所不同。具體而言,它依賴于追蹤式垃圾回收器,虛擬機不使用 CPU 堆棧,并且字符串以 UTF-8 編碼存儲。
Fabrice Bellard 是法國計算機程序員,以編寫FFmpeg,QEMU和Tiny C編譯器而聞名。他開發了Bellard公式來計算pi的位數。2012年,貝拉德(Bellard)與弗蘭克·斯皮內利(Franck Spinelli)共同創立了一家電信公司Amarisoft。
1972年出生,17歲創建了可執行的壓縮器LZEXE。
1996年他編寫了一個簡潔但是完整的C編譯器和一個Java虛擬機Harissa。
1997年,他發現了一個新的,更快的公式計算pi的位數。
1998年編寫了一個簡潔的OpenGL實現TinyGL。
2000年開發FFMPEG。
2002年,他開發了TinyGL,這是適用于嵌入式環境的OpenGL的子集。
2003年開發了Emacs克隆QEmacs。
2003年發明QEMU 通用機器仿真器和虛擬器。
2004年,他編寫了TinyCC引導加載程序,該加載程序可以在15秒內從源代碼編譯并引導Linux內核。
2005年,他設計了一種系統,該系統可以通過直接從標準PC和VGA卡生成VHF信號來充當模擬或DVB-T數字電視發射機。
2011年,他創建了一個用純JavaScript編寫的最小PC模擬器。該仿真硬件包括一個32位x86兼容CPU,一個8259可編程中斷控制器,一個8254可編程中斷定時器和一個16450 UART。
2009年,他在計算pi的過程中創下了世界紀錄,在90天內將其計算為將近2.7萬億個位。Slashdot寫道:“雖然改進似乎很小,但它是一項了不起的成就,因為只使用了價格低于3,000美元的一臺臺式機,而不是以前記錄中的數百萬美元的超級計算機。
2011年,他獲得了O'Reilly開源獎。
2014年,他提出了更好的便攜式圖形(BPG)圖像格式,以替代JPEG。
2019年7月,他發布了QuickJS,這是一個小型且可嵌入的Javascript引擎。
最后看看 Fabrice Bellard 樸實無華的個人主頁:
![]()
https://bellard.org/
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.