如今的手機市場競爭激烈,安卓手機突飛猛進,在高端市場與蘋果也不斷拉進這距離,近些年來國內的科技公司不斷發力,針對國內用戶不斷對系統進行優化,使得安卓手機越來越好用,越來越流暢,獲得了不少用戶的認可!
但是安卓手機一直一大內存著稱,內存大的甩蘋果幾條街,為啥安卓手機非要使用超大內存呢?是要給消費者讓利嗎?其實這是安卓系統與iOS系統底層設計原理差別。
手機的內存分兩部分,分別是:RAM和ROM,RAM又稱作只讀存儲器,也就是常說的運行內存;ROM有一部分用來存儲系統信息,還有一些裝機軟體,剩餘的大部分容量都是就是拿來作為硬碟用的。而我們今天所說的內存就是RAM。
隨著手機的不斷更新換代,為了支持更多更大的軟體流暢運行,運行內存RAM也需要不斷增大,但安卓手機的RAM永遠比蘋果大的多,為啥會造成這一現象,那我就給大家舉個例子:
比如我們常用的微信這個APP,首先你打開微信登陸帳號後,你手機上的微信APP就會和騰訊的伺服器保持一個長久的連接,你發一條消息給你朋友,這條消息不是直接從你的手機上發到他的手機上的,而是你的手機將消息發給了騰訊的伺服器,然後騰訊的伺服器再發給你朋友。這個時候就有一個問題,如果你朋友手機上的微信APP處在關閉狀態下,那麼即使騰訊伺服器把消息發過去了,他也收不到,因為他的手機上微信APP已經完全關閉了,已經和騰訊伺服器斷開連接了,只有當他再次打開微信的時候,連接恢復,他才能收到那條信息。也就是說,想要及時收到消息,那麼微信這個APP就不能完全關閉,需要留下一些線程在後臺一直保持運行,一直和騰訊的伺服器保持接連,這樣一旦收到消息,系統才能及時啟動消息機制提醒你。
所以,在國內每一個在安卓系統中運行的APP,要想不間斷的收到通知提醒,就必須在後臺的RAM裡留下一些線程隨時準備接收外來信息,也就是說你剛打開手機還啥都沒幹,你手機上所有APP的一部分線程已經悄悄啟動,進駐RAM內存,而這些後臺啟動的線程是無法關閉的,因為是合法的,關閉的話用戶就無法及時收到消息。另外,不要小看這些後臺線程的數量,一個APP在後臺RAM裡留十幾二十MB確實不多,但100個APP(64G硬碟的手機就能裝100個APP)加起來就要吃掉將近2G的內存!因此,安卓手機的RAM內存容量必須跟著硬碟容量遞增,硬碟容量越大,能下的APP就越多,就越需要更大的RAM內存來保證這些APP留在後臺的線程正常運行。
我們再來看一下iOS系統,它為啥就不需要大的RAM內存呢?因為蘋果有自己的伺服器,iOS系統是搭配蘋果公司的伺服器來運行的,每一臺iOS設備在聯網的時候,首先會和蘋果的伺服器建立一個長久的連接,再來舉個微信的例子,在iOS系統中,所有的APP服務必須搭配蘋果的伺服器來運行,不論你的微信是打開狀態,還是關閉狀態,你朋友發了一條消息給你,這條消息會先發給騰訊的伺服器,騰訊伺服器又與蘋果伺服器相連接,這條消息會被騰訊伺服器轉發給蘋果的伺服器,然後蘋果的伺服器收到後便會發送給你的iOS系統,系統收到就能及時做出提醒。這樣雖然多了一個步驟,但帶來的好處是你手機上的微信APP可以完全關閉,不需要留下多餘的線程來接收消息,因為蘋果的伺服器會一直保持接收消息,然後將消息發給手機系統,系統再做出提醒。
這樣一來,蘋果手機就不需要太大的RAM內存,因為即使APP完全關閉,也不影響及時接收消息。再加上iOS系統實際上並不支持真正意義上的後臺運行(僅持後臺聽歌、下載、導航等有限幾個操作,如果一個APP進入後臺,10分鐘內沒被換到前臺來,那麼系統就會將它關閉,只留下一個最後運行時的截圖,這就是所謂的墓碑機制),所以蘋果手機的RAM內存絕大部分時間內其實只為一個當前運行APP服務,一個APP使用4GB的運行內存,真的是綽綽有餘了。這樣的運行機制也使得iOS系統的安全性遠遠大於安卓系統,流氓軟體無法常駐後臺,也就採集不到用戶的使用痕跡,極大地保障了用戶的安全。