裝備Intel CPU的手機; 相容性為何強差人意
現在Intel 64的構架相容性和arm的相容性差異有多大?先看看購物評價發現很多軟體都不兼容Intel CPU手機,包括網銀,現在Intel的手機到底適不適合買啊?x86架構的手機同ARM架構的手機相比,的確是存在相容性的問題,雖然相比於幾年前x86架構的手機來說,現在的手機在相容性方面已經有了很大的改善,不過相容性依然是x86架構的手機最大的軟肋,比如很多大型遊戲,採用Intel處理器的手機運行起來都會存在一些問題。
其實究其原因,相容性問題主要是因為指令集的不同,x86使用的是SSE指令集,而ARM使用的則是NEON指令集,兩者的差異導致了部分應用不相容。大部分Android應用都使用基於Dalvik Java的代碼開發。理論上,由於Dalvik代碼在系統的虛擬機中執行,在x86的ATOM平臺上不會有性能損失。
其實支援Dalvik的程式還是佔大多數的,但因為虛擬機性能有限,在需要更高的性能或者需要硬體的支援的時候,仍然會有一些應用繞過 Dalvik。比如一些對硬體性能有較高要求的大型遊戲,以及一些結合了感應器或者電源管理等硬體相關的應用。谷歌允許開發者使用原生的C語言代碼。而原生代碼是針對硬體平臺編譯,x86、ARM或是MIPS都有其相應的二進位檔。通常來說,針對ARM平臺編譯的二進位碼,x86的處理器是無法直接運行的。而主流的Android產品均採用ARM處理器。這也是為什麼早期大部分賽車遊戲都無法在Intel處理器的手機上完美運行的原因。
而儘管很早之前,Google的Android NDK就引入了x86編譯的選項,理論上來說,開發者只需在應用中支援這個NDK,應用在提交時會自動生成2個App,設備在下載時會根據自己的架構下載合適的App。這種方法並不難,效果也最好,難的是如何讓眾多開發商甘願合作,所以我們看到,即便Intel處理器的手機已經推出幾年了,但至今還是有相當一部分應用只針對ARM平臺進行了編譯,這也就導致了如今x86架構安卓平臺的相容性依然存在問題。
說到這兒,可能有些朋友會表示懷疑,說曾經看到過Intel處理器的手機玩3D賽車遊戲,這又如何解釋呢?其實很好理解,正是因為相容問題嚴重,使英代爾急於找出一個解決方案,所以他們開發了一種轉換技術 “Houdini”。 “Houdini” 相當於一個中間層,可以讓原本不相容的應用跑在x86上。但這種強行結合的技術運行起來往往效率不高,容易出問題,且會增加耗電量。
此前曾有媒體對這種轉換技術的效率進行過詳細的測試,結論是二進位轉換相比原生執行x86代碼,損失的性能很可觀,在性能訴求的應用中,損失可高達50%以上。在一些遊戲類應用中,也會帶來約400mW的CPU功耗的增加。
可見即便過了這麼多年,x86的Android之路還是很漫長,恐怕最重要的原因還是因為此前Intel固執的玩高端,導致x86架構的手機市場佔有率過低,好在目前來看,已經出現了千元級Intel處理器的手機,隨著市場佔有率的增加,相信x86架構的Android系統會更大的引起開發者的注意,這樣也能夠調動開發者的積極性,不管怎麼說,Intel處理器的手機的未來還是值得期待的,前提是還要給它一些時間。
所以今期好多買華碩的都做白老鼠, 4GB RAM又真係好吸引. louisla 發表於 2015-5-18 12:12 static/image/common/back.gif
所以今期好多買華碩的都做白老鼠, 4GB RAM又真係好吸引.
其實買arm CPU手機穩穩陣陣, 何解要冒險買x86 CPU手機呢? 貪平得不常失{:8_369:}
頁:
[1]