search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

深扒安卓被IOS一直吊打的幕後原因!

安卓手機自從谷歌開源后。全球各大廠商在安卓系統上深耕,不斷推出了基於安卓的系統。比如MIUI、比如 Smartisan OS比如Flyme OS等。前兩天小米又推出了其旗艦手機小米6。西瓜哥看了下參數配置。當看到運行內存6G的時間。

請點擊此處輸入圖片描

從2011年小米1的雙核CPU,1G運行內存。到今天的八核CPU。6G的運行內存。西瓜哥一直在像。16核CPU。12G運行內存的手機還會遠嗎?

2011時間蘋果發布的一代經典iphone4。單核CPU。512M運行內存。到現在蘋果7的。四核CPU。2G運行內存。

為什麼更多人吐槽硬體更好的安卓手機。流暢度差呢?

下面西瓜哥就來聊聊關於安卓與IOS系統的那點事!!

1:從用程序角度

IOS禁止應用程序在後台運行,所有切換到後台的應用程序被操作系統自動休眠,只有前台程序可以佔用CPU;相比較,Android就開放得多,它運行應用程序任意創建後台服務Service,所有Service都可以在後台任意佔用CPU和內存。因此,當Android安裝的應用程序越來越多,且應用程序毫無節制地創建後台服務的話,系統前台應用就被迫和越來越多的後台服務共享CPU資源,從而拖慢了整個系統的速度。也不能說Android這種真正的多任務模式不好,它是一把雙刃劍,給應用程序更廣闊的發揮空間的前提下,也給了應用程序濫用CPU的許可權。因此,從這方面講,IOS更有利於應用程序發揮流暢性,但代價是應用程序無法再後台工作;Android更有利於發揮應用程序功能,例如後台收離線消息,後台下載等應用。

2:操作系統角度 Apple IOS,apple開發的移動設備操作系統。IOS的內核使用的是darwin os,該內核與linux的宏內核操作系統不同,是一個類似於windows的混合型內核。有點類型微內核的感覺,不過就性能而言,與Linux相比應該沒有什麼優勢。但是,因為ios的應用程序是使用objective c編碼,最終被直接編譯為ARM指令集。因此,在實際設備運行過程中,應用程序相當於直接在CPU上運行,避免了虛擬機的指令翻譯開銷,所以ios的應用程序執行效率相比android要高。 Google Android,是基於Linux操作系統的一個應用程序框架。它大致由以下幾個組件組成:Linux內核、Android運行庫、通用組件庫、應用程序框架和應用程序本身。最終的用戶應用程序均運行在一個個隔離的「沙箱」環境中,彼此隔離。其中,最重要的是,Android應用程序的指令不是機器指令,而是dalvik虛擬機指令。也就是說,Android提供了一個Dalvik虛擬機,將Android應用程序的dalvik指令翻譯成最終的arm機器指令。這中間虛擬機的翻譯過程是有性能損耗的。

3:從硬體跟軟體的兼容性來說。

就目前各個晶元廠的情況來說,對Android的優化程度明顯不足。其軟硬結合性較IOS差得太多。君不見小米3 Tegra4版遲遲沒有發布。眾多事實證明一堆豬隊友,對於未來的競爭無益。畢竟系統開發的成本過高不是晶元廠自己承擔得起的,如MTK之流,基本上穩定性說得過去,量產沒問題就回去更新硬體平台,這樣的話,最多也就是Android自己在更新迭代,這麼多年,沒有見到任何有影響力的分支能夠獨立承擔Android的進步。反觀IOS基本上是以步步為營的態度在做產品,當然,你可以說庫克時代,精品性以及藝術性較老喬大打折扣——IOS已經轉型成一個成功的商業產品,僅此而已——但是,不可否認,每一個新功能的添加,在IOS上,給人的感覺總是體驗,細節雕琢最好的。雖說大不如之前來的驚艷,但對比Android的眾多主流手機的話,蘋果才是最用心的。

說這麼多,只想論證一件事,就是Google可能需要更用心一點,去跟晶元廠展開更親密的合作。對Android的產品性設計,也要有更強大的體驗設計團隊才可以。不然的話,未來說顛覆IOS我覺得有點痴人說夢。

來點通俗易懂的

日常軟體流暢度,取決於單核心極限性能。100個同樣的晶體管,蘋果做成了兩個50晶體管的核心,高通做成了4個25晶體管的核心。 A7和800絕對性能其實差不多,對比安兔兔跑分,A7 30000分,800 33000分,基本和前面印證。但是軟體,很少軟體能優化到三核,其實絕大多數也就雙核。

不嚴謹的說,iOS上的APP, 能用上雙核100個晶體管的性能。 安卓上的APP,雙到三核優化,50-75個晶體管的性能,還要算上虛擬機損耗,後台服務。這樣對比,題主看懂了么。然後就是除了跑分 軟解視頻和遊戲,能用上雙核以上的APP實在是太少了。

可能有人疑問怎麼沒算上頻率,這個確實是疏忽了~因為事實上蘋果A7可能是150個晶體管(核心面積比驍龍800大不少),然後我先瞎掰個性能係數=150*1.3GHz=195性能單位驍龍800這邊是100*2.0GHz=200性能單位...(突然跟跑分幾乎完全一樣的比例了...)但由於雙到三核優化50~75*2.0GHz=100~150性能單位,還是比不過蘋果~

CPU廠商之間的實力差就在於能否設計出高性能且功耗控制理想的大核心~

總結:

技術上,Android使用的Linux內核,宏內核。IOS自己維護的內核,混合內核。整體任務調度的效率以及內核安全性可能Android更高,但這不能保證UI任務在系統運行時的特權,就好像之前Windows和Linux的桌面爭奪一樣。Windows的UI任務是一個內核級的任務。當然,壞處就是一旦UI任務Dump的話,可能就得重啟了。UI的效率上,IOS勝一籌。



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦