方舟編譯器,推動鴻蒙OS前進,優化加速安卓應用程序

8 月 9 日,華為開發者大會鴻蒙OS正式發佈,這是基於微內核的全場景分佈式OS。能實現模塊化解耦,對應不同設備(智慧屏、穿戴設備、車機、智能音箱、手機)可彈性部署。

華為方舟編譯器,會通過多終端 IDE 開發環境來支撐當前的鴻蒙 OS。目前方舟編譯器支撐鴻蒙內核,“方舟編譯器能提升60%的編譯性能”,將來鴻蒙微內核能按需擴展,並希望用一個鴻蒙微內核代替全部內核。

何謂編譯器

程序員們在寫好應用的代碼之後,在變成我們手機上安裝的應用之前,還差最後一步就是編譯。簡單來說,編譯器就是把編程人員開發的高級語言程序,翻譯成機器可執行的機器指令,這就是編譯器。它就像一位翻譯官,是連接程序員與機器的橋樑。

方舟編譯器,推動鴻蒙OS前進,優化加速安卓應用程序

編譯器的功能

由此來看,方舟編譯器面向的是開發者的,但最終受益的還是消費者。

方舟編譯器的高明之處

方舟編譯器做的就是,將Java的所有語句統統翻譯成機器碼,最後打包成APK安裝文件。方舟編譯器最大的優勢在於它繞過了虛擬機。簡單來說,方舟編譯器可以將高級語言(Java)直接變成機器碼,無需再通過 Android 系統中內置的編譯器。

方舟編譯器是完全替代了語言虛擬機的靜態編譯器,從此不再需要解釋器。相比現有的編譯機制有以下明顯優勢:

1、方舟編譯器是一種靜態的編譯方式,而現有的安卓系統,運行一個應用程序首先啟動虛擬機,然後讀入應用代碼逐條解釋執行,無法做到100%做到擺脫虛擬機,這也是當前安卓陣營面臨的問題。

方舟編譯器,推動鴻蒙OS前進,優化加速安卓應用程序

只要是經過編譯器編譯的應用,在應用市場上架以後,用戶下載的APK 就是編譯好的了,方舟編譯的應用在開發階段就已完成了。

2、華為方舟編譯器的靜態編譯方式可將語言裡的動態特性直接翻譯成機器碼,手機安裝應用程序後可全速運行程序,徹底幹掉了虛擬機,極大提升了系統運行效率。

方舟編譯器,推動鴻蒙OS前進,優化加速安卓應用程序

方舟編譯器採用新的內存垃圾回收機制

方舟編譯器還帶來了新的系統垃圾回收機制。以往安卓的垃圾回收機制是集中回收,由於Java虛擬機的特點,系統會不停的地自動回收內存垃圾,保證內存不會溢出。更要命的是,當內存低於某個標準值後,它就會自動殺掉優先級低的進程。系統會集中關閉被標記的多餘進程,這就造成了隨機性的卡頓。相信大家遇到過這種情況,啟動遊戲時,點按應用瞬間進入前會感覺莫名的卡頓,界面像是遲鈍了一下。而方舟編譯器在這方面它的內存回收機制是隨用隨回收,回收時不需要暫停應用,而是直接回收內存垃圾,這大大提高了系統運行速度和效率。

方舟編譯器既可以優化安卓速度和性能,也能強力支持鴻蒙OS

方舟編譯器既能統一適配安卓機器語言,自然也能適配成自家系統的機器語言——鴻蒙OS,方舟編譯器既能為安卓加速,也能強力支持鴻蒙,它完全可稱為讓開發者從安卓到鴻蒙過渡的"諾亞方舟"。


未來方舟編譯器是否能成功,還要看後續完整生態的搭建。還要看開發者是否都積極參與進來,最終能否給消費者帶來更為極致的體驗。華為的終極目標很明顯,就是在未來搭建全方位的生態。期待這項技術能夠普及開來,也希望華為能在未來帶給我們更多驚喜。


分享到:


相關文章: