小米2A與2S相比,縮水的內存和CPU,哪一個對平時的體驗影響更大?
體驗包括系統流暢度,多任務的能力,網頁瀏覽(縮放、滑動、多頁面)的順滑程度……
針對這個問題的答案是內存:
----------------------以下內容看不明白可以略過--------------
無論是2A的雙核心kraitv3還是2S的四核心kraitv3其實手機屏幕點亮以後,大多數時間只有一個核心,也就是CPU0在運行,CPU1也會偶爾跑一跑,但是CPU2/3幾乎一直都處於離線(通過hotplug機制)狀態,因為現在的處理器都有power gating,可以徹底切斷不使用部分的供電,所以hotplug之後是不耗電的。
而Hotplug本身會消耗很多能量,所以相比於動態切換運行頻率,系統不會頻繁開關CPU。
2S多出來的第三第四個CPU唯一的作用是打雞血,當然確實能感受到它們起作用,比如後台正好在裝應用時做別的操作的話,2S一定比2A流暢。
但即便是2S的APQ8064T也沒法一直工作在滿負荷狀態,先不說一個CPU滿載就要消耗~700毫瓦,GPU滿載2瓦+的功耗;光是手機本身的散熱能力就無法支撐它全負荷運轉。更不用說三星galaxy s4 那塊5410,僅僅是CPU部分滿載(四個cortex A15)就能超過6瓦特,所以我非常看好exynos版的GS4在冰庫中的表現。
------------------總之,縮水了兩個CPU的影響有限,多出的CPU的僅是為了打雞血-----------------
內存就不一樣了,android會盡量把應用程序運行的實例放在內存里,這樣便於你可以快速回到前一個(幾個)打開的應用中。將數據保存在內存里不會消耗額外能量。
-----------------所以能緩存越多的應用,使用起來就越流暢-------------
android在應用程序在退出時會依次調用預先設定好的三個函數
OnPause()
OnStop()OnDestroy()
當調用了OnStop()後,應用程序就變成所謂的「後台緩存」了,OnPause/OnStop裡面包含了為了停下應用程序所需要執行的動作,如寫簡訊時保存草稿等,但是已經繪製好的界面,以及更多的其它代碼都原樣凍結著,所以可以立即恢復。
如果系統發現需要給別的程序開闢內存空間,而可用內存不夠時,它就會把不太重要的應用程序調用OnDestroy()做好最後的準備,然後銷毀它,釋放內存空間。
內存小的時候,就需要更多執行OnDestroy()以及銷毀,這意味著更多的CPU使用量和能耗,這樣的開銷是遠遠超過維持內存刷新所需的供電。
對於目前的android4.1/MIUI5的狀態,僅是剛剛開箱開機後的內存就能佔到1G的大部分,這會有效地損害android多任務切換的流暢體驗。
-----------------------------------------------------------------------------
註:後台緩存進程和service對象不是一回事情service才是微信用來維持心跳的,因為只有它能在後台使用CPU內存。我選擇韓版i9300的最重要原因就是它是2G的RAM,而當時的國際版蓋世三還只是1G的RAM(之後出的LTE版本升級成了2G)。安卓1G內存的後果就是:你開了UC,QQ,人人,微信,微博,再去玩一下temple run,再按主屏鍵時發現,誒,launcher重新啟動了。
內存
內存,沒有別的因素影響更大了。
系統的優化。
推薦閱讀: