Android X86版體驗

原文網址
http://os.51cto.com/art/200908/147759.htm


官方說明網址
http://www.android-x86.org/documents/installhowto





Android是基於Linux核心的軟體平台和操作系統,是Google2007115日公佈的手機系統平台,早期由Google開發,後由開放手機聯盟(Open Handset Alliance)開發。它採用了軟體堆層(software stack,又名以軟體疊層)的架構,主要分為三部分。低層以Linux核心工作為基礎,只提供基本功能,其他的應用軟體則由各公司自行開發,以java作為編寫程序的一部分。另外,為了推廣此技術,Google和其它幾十個手機公司建立了開放手機聯盟(Open Handset Alliance)。 Android在未公開之前常被傳聞為Google電話或gPhone。大多傳聞認為Google開發的是自己的手機電話產品,而不是一套軟體平台。
而由於上網本市場的日益火爆,不甘局限於手機平台的Android操作系統也開始躍躍欲試,準備在X86平台上大展拳腳。據Google官方公佈,支持x86平台的Live-Android項目0.2版本已經初步完成,現在已經開始提供LiveCD下載。用戶只需要從官方下載ISO,刻錄成光碟後重啟用光碟引導,即可感受Google的這款手機操作系統。在我們等待Google Chrome操作系統之前,Android系統的LiveCD也許可以讓我們提前感受一下Google的操作系統。另外,這款系統也支持VirtualBox或微軟Virtual PC虛擬機,用戶完全可以在虛擬機中進行嘗試。


本次為您測試的是華碩為EEE-PC平台定制的eeepc-20090820Android X86系統。感興趣的用戶可以在這裡下載:http://android-x86.googlecode.com/files/eeepc-20090820.iso


平台的原始碼可以從http://code.google.com/p/android-x86/wiki/GetSourceCode這裡進行下載。


如果想要下載原始碼進行編譯,可以使用:
$ repo init -u git://git.android-x86.org/android-x86/platform/manifest.git
$ repo sync 
$ make iso_img usb_img TARGET_PRODUCT=eeepc


Android系統中雖然包含了kernel tree但是在編譯的時候完全用不到。事實上,kernel就是以prebuild binary(預先編譯好的二進制檔)的方式被加進最後產生的鏡像文件中的。對於這種做法,在手機操作系統上沒有任何問題,反正要編譯什麼功能都已經預先知道。然而對於X86平台來說,這樣的做法顯然不妥當。每個人的需求不相同,所需要的kernel也就不同。另外kernel的更新速度很快,尤其在X86平台。因此比較聰明的做法就是在編譯Android的時候加入kernel編譯,並直接將編譯結果加入鏡像文件中。新版的原始碼加入了kernel編譯規則(build/core/kernel.mk),給X86預設的config存檔放在kernel/arch/x86/configs/android-x86_defconfig。在編譯過程中,會以這個config為主,產生kernel和對應子組塊。也可以單獨編譯kernel
$ make kernel TARGET_PRODUCT=eeepc


也可以使用自己的config存檔。只要將它放入kernel/arch/x86/configs中,並且指定變量TARGET_KERNEL_CONFIG 就好(假設config 存檔名叫my_defconfig)
$ make iso_img TARGET_PRODUCT=eeepc TARGET_KERNEL_CONFIG=my_defconfig


這個全新的Android X86平台是由BeyounnCwhuang主持設計的。項目的主要目的在於為X86平台提供一套完整的Android系統解決方案。這個項目提供了一套完整的可行原始碼樹,配套文檔以及Live CDLive USB


系統的最新版本是發佈於20097月的Android X86 V0.9
這個系統實現瞭如下功能:
使用Kernel 2.6.29核心,並開啟KMS功能。
支持提供了音效。
支持網絡攝像頭。
支持存儲卡與移動存儲設備的自動加載。
支持自動檢測驅動模式。
支持Ethernet (DHCP)
支持滑鼠滾輪。
即時顯示電池狀況。
支持待機功能。
支持觸摸屏幕。
支持壓縮檔案格式。
支持除錯模式。
加入了BusyBox
可以運行在虛擬機上如:Virtual Box, Qemu, VMware
發布了Live CDISO存檔,以及Live USB Image存檔。
支持無線網絡並可從GUI開啟並設定。
全新的安裝模式,可以安裝到ext3/ext2/ntfs/fat32磁碟格式。
可以載入firmwarehotplug
改善鍵盤支持,可以使用usb鍵盤。
按下電源鍵可以開機。


而小組下一步的工作計劃在於改善以下幾個方面:
對於Wifi無線網絡更好的支持(目前可以較好的支持at15kat19k,而對於其它類型的設備則需要進一步完善)。
對於藍牙設備的支持。
更完善的安裝程序和多重啟動系統。
多平台支持。
Fn
鍵的支持。
電源管理系統。
3D
加速與高清設備的支持(目前已經由olv完成,需要進一步在平台上進行測試)。
多點觸摸設備的支持。
3G
移動設備的支持。
開發更多的第三方應用程序。


由此可見,Android X86版還處於雛形階段,系統還需要很多完善的地方。但是經過我們的試用,發現這個系統在X86平台的移動終端上還是有很大潛力的。






目前的Android X86 v0.9版提供了一個簡單的安裝程序,可以將它安裝在X86的硬盤上,目前它支持的文件系統有:ext2ext3ntfsfat32.通過使用這個安裝程序,你可以無需清除硬盤中原本的資料,也不需要單獨分區。可以直接將它安裝在現有分區中,事實上,只不過是建立了一個目錄,將Android存放到裡面而已。除了可以安裝到ext2ext3fat32之外,也可以安裝到Windows ntfs上,做成雙開機。並且可以同時安裝多個AndroidX86版本,將每個版本安裝到單獨目錄中,然後自行修改開機選單。


下面我們看一下安裝過程:


首先,從光驅或者USB啟動Android X86.選擇'Install Android to hard disk'。如下圖:





然後,將會出現一個分區選擇對話框,你可以選擇現有分區安裝Android X86,也可以通過選擇'Create/Modify partitions',來建立或者修改一個分區。

注意1.; 如果你是用VMware 等虛擬機安裝的話,硬碟需使用ide介面 ,才會偵測的到,並須在經過格式化的流程
官網說明如下


Issues


VirtualBox


You have to reboot when it's installed, otherwise the screen will flash. It may be a bug of the VirtualBox.





VMware


You have to change your virtual disk type to be IDE because the default type in VMware is SCSI, and Android-x86 kernel is not configured to support SCSI. You can follow these steps:



‧Create a virtual machine.
‧Edit virtual machine settings after the virtual machine created.
‧Choose the hard disk and remove it.
‧Add a hard disk to create a new virtual disk, then you can choose IDE as your virtual disk type.
‧When finished, you can install android-x86 normally.



注意2.你可以將Android X86安裝到移動存儲設備中,如果驅動器沒有出現在列表中,你可以選擇'Detect devices'。如下圖:




Android X86
版可以和其它操作系統共存。如果所選擇分區已經格式化過了,你可以選擇'Do not format'來保留現有數據。要是不然,可以選擇一種文件系統來格式化磁碟。需要注意的是所選擇的類型必須要和分區ID匹配。否則將無法啟動。如下圖:



另外,如果你選擇fat32來格式化磁碟,將會出現一個警告,顯示Android將不會為fat32保存數據。你依舊可以安裝,不過安裝過後的Android系統將會像live CD系統一樣工作。這是因為所有的數據在關機之後將會消失。因此我們不建議在fat32分區安裝Android X86版。


之後系統會提示是否安裝boot loader Grub。通常情況下我們都回選擇是,除非你想通過手動安裝boot loader。需要注意的是安裝程序只會為Android X86建立啟動項,如果想要多操作系統多重啟動,你需要手動在/grub/menu.lst加載啟動項。如圖:



然後,安裝程序將會啟動,你會看見如下滾動條:





如果你看到下面的畫面,安裝程序就完成了。重啟之後就可以直接運行Android X86





如果想添加其它操作系統多重啟動,你需要向/grub/menu.lst添加啟動條目。例如,如果想要啟動Window搜就需要加入以下內容:
title Windows
rootnoverify (hd0,0)
chainloader +1


如果下載最近的Android source來編譯,可能會發現在X86平台無法啟動的現象,會一直卡在AndroidLogo進不去。這是由dalvik的修改造成的,只要讓dalvik停留在前一版本:
$ cd dalvik
$ git checkout 3102d52
然後重新編譯即可。






Android系統只要是針對上網本,Mid等個人移動上網平台設計的,因此在界面設計方面也以簡約為主,兼顧了日常應用等一些主要功能。
開機界面:


 


 





界面之間的切換通過滑鼠滑動切換。相信用慣了Iphone的用戶應該不會陌生。日後通過對多點觸摸屏的支持,可以達到更好的人機交互性。懸浮的Google搜索工具條可以方便用戶進行搜索操作。


系統菜單方面,Adnroid X86提供了攝像頭,開發工具,瀏覽器,電子郵件,圖片,音樂等多個功能。佈局與手機相仿,可以使用戶操作更加簡單。



Android最重要的功能還是移動上網,因此下面我們就來測試一下它的網絡功能。


目前,最新版的Android X86已經可以支持大部分的無線網卡。目前測試結果,早期EEE PC使用的ath5k driver和後續版本的ath9k driver都可以完美運行。而很多筆記本使用的ipw2200網卡也可以驅動了。而現在對於3G設備的支持也在開發中,通過無線網絡與內置瀏覽器的搭配,可以使無線上網變得更加簡單輕鬆。


 


  



在開發工具方面,可以利用內部工具進行一些簡單的開發與調試。






終端模擬器





在多媒體方面,Android X86在音頻方面沒有任何問題。在PC機上和虛擬機上都可以進行音樂的播放。由於缺少第三方插件,導致在視頻播放方面沒有辦法進行,這也是日後需要加強的。


 


 


經過對Android X86版本的試用,只能說革命尚未成功,同志們還需接著努力。平台上很多最基本的功能還是沒有實現。但是Android X86提倡的簡單方便的操作性還是值得表揚的。畢竟科技產品要以人為本,對於上網本平台我們不需要繁瑣的操作,我們需要的是像家裡電視機一樣,簡簡單單滿足我們日常的應用就好了。而這正是Android所一直提倡的理念。隨著Android X86平台的日漸完善,我們相信它的未來會越來越好。




備註;


感謝網友回覆


Google Android 平台從未正式支援 x86, 因此也沒有所謂的官方版。目前所有的 x86 porting 都是社群成員從 AOSP 修改而來。上面所提的 Live-Android 是中國大陸的開發人員做的,但到 0.3 版便已停止開發,也沒有公開 source。而 Android-x86 是台灣這邊主導,真正的開放源碼計劃,持續維護至今。目前最新的版本是 ics-x86 (Android 4.0)。





立你斯 發表在 痞客邦 留言(6) 人氣()