Android是基于Linux內(nèi)核的軟件平臺(tái)和操作系統(tǒng),是Google在2007年11月5日公布的手機(jī)系統(tǒng)平臺(tái),早期由Google開發(fā),后由開放手機(jī)聯(lián)盟(Open Handset Alliance)開發(fā)。它采用了軟件堆層(software stack,又名以軟件疊層)的架構(gòu),主要分為三部分。低層以Linux內(nèi)核工作為基礎(chǔ),只提供基本功能,其他的應(yīng)用軟件則由各公司自行開發(fā),以java作為編寫程序的一部分。另外,為了推廣此技術(shù),Google和其它幾十個(gè)手機(jī)公司建立了開放手機(jī)聯(lián)盟(Open Handset Alliance)。Android在未公開之前常被傳聞為Google電話或gPhone。大多傳聞?wù)J為Google開發(fā)的是自己的手機(jī)電話產(chǎn)品,而不是一套軟件平臺(tái)。
而由于上網(wǎng)本市場的日益火爆,不甘局限于手機(jī)平臺(tái)的Android操作系統(tǒng)也開始躍躍欲試,準(zhǔn)備在X86平臺(tái)上大展拳腳。據(jù)Google官方公布,支持x86平臺(tái)的Live-Android項(xiàng)目0.2版本已經(jīng)初步完成,現(xiàn)在已經(jīng)開始提供LiveCD下載。用戶只需要從官方下載ISO,刻錄成光盤后重啟用光盤引導(dǎo),即可感受Google的這款手機(jī)操作系統(tǒng)。在我們等待Google Chrome操作系統(tǒng)之前,Android系統(tǒng)的LiveCD也許可以讓我們提前感受一下Google的操作系統(tǒng)。另外,這款系統(tǒng)也支持VirtualBox或微軟Virtual PC虛擬機(jī),用戶完全可以在虛擬機(jī)中進(jìn)行嘗試。
測試的是華碩為EEE-PC平臺(tái)定制的eeepc-20090820版Android X86系統(tǒng)。感興趣的用戶可以在這里下載:http://android-x86.googlecode.com/files/eeepc-20090820.iso
平臺(tái)的源代碼可以從http://code.google.com/p/android-x86/wiki/GetSourceCode這里進(jìn)行下載。
如果想要下載源代碼進(jìn)行編譯,可以使用:
$ repo init -u git://git.android-x86.org/android-x86/platform/manifest.git
$ repo sync
$ make iso_img usb_img TARGET_PRODUCT=eeepc
Android系統(tǒng)中雖然包含了kernel tree但是在編譯的時(shí)候完全用不到。事實(shí)上,kernel就是以prebuild binary(預(yù)先編譯好的二進(jìn)制檔)的方式被加進(jìn)最后產(chǎn)生的鏡像文件中的。對(duì)于這種做法,在手機(jī)操作系統(tǒng)上沒有任何問題,反正要編譯什么功能都已經(jīng)預(yù)先知道。然而對(duì)于X86平臺(tái)來說,這樣的做法顯然不妥當(dāng)。每個(gè)人的需求不相同,所需要的kernel也就不同。另外kernel的更新速度很快,尤其在X86平臺(tái)。因此比較聰明的做法就是在編譯Android的時(shí)候加入kernel編譯,并直接將編譯結(jié)果加入鏡像文件中。新版的源代碼加入了kernel編譯規(guī)則(build/core/kernel.mk),給X86預(yù)設(shè)的config存檔放在kernel/arch/x86/configs/android-x86_defconfig。在編譯過程中,會(huì)以這個(gè)config為主,產(chǎn)生kernel和對(duì)應(yīng)子組塊。也可以單獨(dú)編譯kernel:
$ make kernel TARGET_PRODUCT=eeepc
也可以使用自己的config存檔。只要將它放入kernel/arch/x86/configs中,并且指定變量TARGET_KERNEL_CONFIG 就好(假設(shè)config 存檔名叫my_defconfig):
$ make iso_img TARGET_PRODUCT=eeepc TARGET_KERNEL_CONFIG=my_defconfig
這個(gè)全新的Android X86平臺(tái)是由Beyounn和Cwhuang主持設(shè)計(jì)的。項(xiàng)目的主要目的在于為X86平臺(tái)提供一套完整的Android系統(tǒng)解決方案。這個(gè)項(xiàng)目提供了一套完整的可行源代碼樹,配套文檔以及Live CD與Live USB。
系統(tǒng)的最新版本是發(fā)布于2009年7月的Android X86 V0.9。
這個(gè)系統(tǒng)實(shí)現(xiàn)了如下功能:
使用Kernel 2.6.29內(nèi)核,并開啟KMS功能。
支持提供了音效。
支持網(wǎng)絡(luò)攝像頭。
支持存儲(chǔ)卡與移動(dòng)存儲(chǔ)設(shè)備的自動(dòng)加載。
支持自動(dòng)檢測驅(qū)動(dòng)模式。
支持Ethernet (DHCP)。
支持鼠標(biāo)滾輪。
即時(shí)顯示電池狀況。
支持待機(jī)功能。
支持觸摸屏幕。
支持壓縮檔案格式。
支持除錯(cuò)模式。
加入了BusyBox。
可以運(yùn)行在虛擬機(jī)上如:Virtual Box, Qemu, VMware
發(fā)布了Live CD的ISO存檔,以及Live USB Image存檔。
支持無線網(wǎng)絡(luò)并可從GUI開啟并設(shè)定。
全新的安裝模式,可以安裝到ext3/ext2/ntfs/fat32磁盤格式。
可以載入firmware的hotplug。
改善鍵盤支持,可以使用usb鍵盤。
按下電源鍵可以開機(jī)。
而小組下一步的工作計(jì)劃在于改善以下幾個(gè)方面:
對(duì)于Wifi無線網(wǎng)絡(luò)更好的支持(目前可以較好的支持at15k和at19k,而對(duì)于其它類型的設(shè)備則需要進(jìn)一步完善)。
對(duì)于藍(lán)牙設(shè)備的支持。
更完善的安裝程序和多重啟動(dòng)系統(tǒng)。
多平臺(tái)支持。
Fn鍵的支持。
電源管理系統(tǒng)。
3D加速與高清設(shè)備的支持(目前已經(jīng)由olv完成,需要進(jìn)一步在平臺(tái)上進(jìn)行測試)。
多點(diǎn)觸摸設(shè)備的支持。
3G移動(dòng)設(shè)備的支持。
開發(fā)更多的第三方應(yīng)用程序。
由此可見,Android X86版還處于雛形階段,系統(tǒng)還需要很多完善的地方。但是經(jīng)過我們的試用,發(fā)現(xiàn)這個(gè)系統(tǒng)在X86平臺(tái)的移動(dòng)終端上還是有很大潛力的。