Fuchsia是Google主要為IoT、手機(jī)及個(gè)人電腦開發(fā)的下一代操作系統(tǒng)。它與之前的Android、Chrome OS、Brillo等操作系統(tǒng)相比,一個(gè)顯著的特點(diǎn)是它沒有基于Linux內(nèi)核,而是采用了微內(nèi)核的Magenta(基于Little kernel)。Linux經(jīng)過二、三十年的發(fā)展,今天無論是嵌入式設(shè)備還是分布式服務(wù)器,都有它的身影。但它起源于desktop時(shí)代,經(jīng)過這么多年的活躍開發(fā)今天已儼然成為“大而全”的通用型內(nèi)核。雖然可以通過裁剪、定制、增強(qiáng)滿足IoT的基本功能,但時(shí)至今日種類多樣的IoT設(shè)備在功能性、實(shí)時(shí)性、功耗、內(nèi)存、性能上都提出了新的要求,而Fushcia就是Google繼基于Android的Brillo之后嘗試開發(fā)全新OS的產(chǎn)物。 本文以x86-64平臺(tái)為例,備忘下在Ubuntu 16.04中的setup過程。 1. 安裝build依賴的包: sudo apt-get install golang git-all build-essential curl texinfo libglib2.0-dev autoconf libtool libsdl-dev 2. 下載源代碼: curl -s https://raw./fuchsia-mirror/jiri/master/scripts/bootstrap_jiri | bash -s fuchsia 3. Build toolchain: 首先build llvm相關(guān)的toolchain: 將環(huán)境變量SRC設(shè)置為Fuchsia源代碼的根目錄,比如/home/jzj/source/fuchsia,然后下載和編譯gcc系toolchain: 3. Build system: 首先編譯kernel和sysroot: 4. 編譯Qemu 如果想在真機(jī)上搞的話這步就不用了。Qemu主要是用于在模擬器中跑Fuchsia。當(dāng)然,因?yàn)檫@里跑的是x86-64,和開發(fā)機(jī)平臺(tái)一樣,所以是當(dāng)虛擬機(jī)用的。其實(shí)如果比較懶的話直接裝現(xiàn)成的也行: 5. 運(yùn)行 在模擬器中啟動(dòng)Fuchsia: 默認(rèn)有4個(gè)console實(shí)例,用Alt Fx切換。如要退出系統(tǒng)可用Alt a x?,F(xiàn)在可以在console中執(zhí)行各種命令了,比如: mojo:shapes 可以看到運(yùn)行結(jié)果: 本文永久更新鏈接地址:http://www./Linux/2017-11/148465.htm |
|