目前,基于RISC-V 64 架構的安卓開源倉庫已在OCC上線。
萬里征途邁出第一步,基于RISC-V的安卓10系統(tǒng)來了。
今天,平頭哥完成了安卓10對RISC-V的移植并開源了全部相關代碼。從視頻中可以看到,安卓10系統(tǒng)已經(jīng)可以在玄鐵910芯片上流暢運行。
平頭哥基于安卓開源項目(AOSP)實現(xiàn)了對RISC-V架構的支持。安卓軟件棧主要包括系統(tǒng)內核、硬件抽象、運行時、框架層、應用五個層次的近千個軟件包,其中涉及到處理器架構相關移植工作主要包含本地庫與ART支持、Linux內核支持、build系統(tǒng)支持三大部分:
本地庫與ART支持:完成bionic、ART、Clang/LLVM、V8、NDK、VNDK、OpenGL等軟件包的RISC-V架構支持:為bionic添加動態(tài)鏈接、系統(tǒng)調用、浮點數(shù)學庫的支持;基于ART實現(xiàn)了RISC-V架構的DEX實時解釋執(zhí)行、dex2oat、JNI調用以及JIT編譯優(yōu)化,極大地提高了JAVA程序在RISC-V平臺上執(zhí)行的效率。
Linux內核支持:完善了Clang/LLVM對Linux內核的編譯支持,修復了大量Clang/LLVM的問題,首次將RISC-V架構的Linux內核與安卓系統(tǒng)進行了適配。
Build系統(tǒng)支持:安卓的編譯框架主要由blueprint和soong構成,平頭哥整合編譯框架、預編譯的工具鏈、本地方法庫、模擬器,應用和服務等模塊,首次實現(xiàn)了RISC-V架構對安卓build系統(tǒng)的支持。
物聯(lián)網(wǎng)時代更需開放多元的系統(tǒng)
在當下碎片化的物聯(lián)網(wǎng)時代,單一的封閉的IP化芯片產品很難適應多場景、定制化的需求。而開源硬件則會帶給行業(yè)更多想象的空間。
RISC-V作為一個開源處理器架構,從2011年誕生之初就為物聯(lián)網(wǎng)時代CPU的發(fā)展提供了非常大的想象空間。近幾年,主流的軟件生態(tài)陸續(xù)實現(xiàn)了對RISC-V架構的支持,唯獨在安卓生態(tài)系統(tǒng)方面進展緩慢,主要的原因包括:
1)移植代碼量大,涉及模塊多,整個工程包含727個子工程和多個預編譯工程;
2)架構級優(yōu)化難度大,為了讓安卓可以更加流暢的運行,需要在匯編指令層面實現(xiàn)對本地方法庫、音視頻庫、加解密庫等的性能優(yōu)化;
3)開發(fā)語言多種多樣,包括C/C++,匯編,JAVA,go,RS,rust等。
基于現(xiàn)有的工作成果,平頭哥將開源全部的相關代碼并與全球開發(fā)者一起推動AOSP on RISC-V的代碼完善、性能優(yōu)化與應用落地。
代碼開源,共建系統(tǒng)
安卓作為第一大移動設備操作系統(tǒng),支撐了全球數(shù)十億部手機、電視與可穿戴設備,擁有數(shù)百萬應用開發(fā)者。在碎片化的物聯(lián)網(wǎng)時代,經(jīng)歷了時間檢驗的安卓系統(tǒng)也將是開發(fā)者和應用解決方案商的重要解決方案之一。安卓與RISC-V的強強聯(lián)合,將極大降低物聯(lián)網(wǎng)設備和應用開發(fā)的門檻,推動百花齊放式產業(yè)發(fā)展。
目前,基于RISC-V 64 架構的安卓開源倉庫已在OCC上線,掃描下方二維碼即可查看開源倉庫。
開發(fā)者可以基于這個倉庫進行二次開發(fā),同時不受限于玄鐵C910 CPU的限制,可對接自己的芯片進行調試。
平頭哥此次代碼開源,為物聯(lián)網(wǎng)產業(yè)革命鋪平了道路,使眾多開發(fā)者能夠專注于創(chuàng)新,并將創(chuàng)新落地,推出卓有成效地改善用戶體驗的產品。