簡單解釋 Android 對於 RAM 的使用方式


chieh-ccw wrote:
所以原生系統是不用擔...

我的問題跟你一樣
nexus s記憶體常常剩下不到50可以使用
後來狠下心刷回4.04版
手機所有檔案都要刪掉+SD記憶卡內容(雖然nexus s沒有記憶卡XD)
記憶體最少都能維持在100左右能使用
最乾淨的時候能有150左右
在這個版本下我覺得手機算順了
我覺得最順的時期是2.36

不知道有沒有辦法把提示更新關掉
刷回去後一直要我更新上去
很煩阿
看來一直昇級好像也不太對耶…


手機沒有辦法承受。


有點想把gn回到4.1.2的rom

可是好麻煩…
Life will never do without Hi-tech
熊熊在森林中2443 wrote:
請問樓主,

當RAM不夠用的時候,那些軟體會先被系統砍掉呢?是閒置最久的最先被砍,還是記憶體佔用最大的會最先被砍?

我和我朋友使用過的hTC手機,都有一個共同問題。那就是按HOME鍵回到桌面時,hTC Sense的UI經常會需要重載,幾乎都需等好幾秒才可載入完畢。照理說UI是一直在使用的軟體,為何會被先砍掉?

謝謝回覆。

問得好,這就是我在本篇中故意不提的部分
因為我覺得這就有點深入讓人比較難理解了w
不過既然有人問了我就用簡單一點的方式說明一下

1.請先看第一篇的第 1 張圖的"少メモリーキル設定"(低記憶體管理器設定)
其中顯示程式的各種不同狀態
分別代表 RAM 低到多少時系統會開始強制關閉該類程式

2.每個程式在開發時都會定義它算是何種類型的程式
像是LINE、WhatsaApp...之類,就必須常駐才能收發訊息,所以它們都會有個服務在後台常駐
計算機、記事本...之類,隨開隨關的就不需要常駐
所以任何 App 都是有分類型的

3.每個程式在開發時都會定義它的各項服務的優先權
系統會依照優先權去分配 I/O 資源給各個程式使用
也會依照優先權判定程式的重要性

所以 1 + 2 + 3
當 RAM 到達指定的下限,系統開始要強制關閉程式時,如果程式的開發者把程式類型定義錯誤,且優先權等級也設太低,那它很可能就會被系統誤殺!



eltonstar wrote:
真是難得一見的好文章...(恕刪)

我的看法還是... CPU 的原因比較大www
就像你提到的跟我前面說的,Android 越來越多功能也就越龐大,App 也隨著更新而跟著肥大
一來是記憶體佔用變大了,再來工作也變複雜了,無疑是在增加 CPU 的負擔
更何況還是在多工作業系統上,只會讓使用者等待時間延長
畢竟 Android 是基於 Linux 的平台,在 Linux 上就是將記憶體有效運用,所以通常都是近乎滿載的,只差在 CPU 的工作量多還是少才會影響整體運行的流暢度。

所以 RAM 的需求會越來越大就是因為這樣
減少系統"關閉程式→釋放RAM→前台擴增"這個動作
並且讓程式 Auto Start 後在記憶體內待命供隨時呼叫
這樣的確可以大幅減少 CPU 的負擔

當初在用 Slim 的 4.1.2 時,我一堆程式在跑,用完就按[HOME]鍵
切來切去很少遇到有被系統強制關閉的,也沒甚麼感覺到 CPU 有在忙
現在用 P.A.C 的 4.2.2,同樣一堆程式在跑,用完就按[HOME]鍵
但是程式切換時常常要重新載入,很明顯是被系統強制關閉
CPU 有時候也不知道在背後忙甚麼,資源被搶來搶去的感覺
但是因為 Pie Controls 實在是太帥太好用了,不然我也很想跳回去用 Slim 的 4.1.2
風景映像。 https://yushenghsu.com
其實我也就是嘴巴說說啦,再怎麼樣我都不會退回去4.1.2的啦。

畢竟買Nexus系列就是為了要手機保持在最新狀態。

即便是其實4.1.2和4.2.1差異不大。我也不會願意退回去。

至於pa的ROM,我也實在太愛了。那個pie control真是,如你所說,太帥了。

再說pa目前又放出進階版chathead的視頻。
可以將手機上所以信息都以像新版臉書即時通chathead般的操作。

我更是不可能換掉他。


不過,你這篇真的給我一些啟發。

因為我有平板Nexus10,所以很多功能其實可以在平板上操作就好了。於是刪了一些會常駐記憶體而我又很少在手機執行的東東。例如google current....

再加上你說的CPU不夠力,我也小小超頻一下。

再砍掉最近變得超級肥大的Chrome,換成海豚瀏覽器。


神了,我的gn又還魂了。一整個又順起來了。哈哈!!
Life will never do without Hi-tech
其實不管是 Nexus S 或者是 Galaxy Nexus ,我覺得會有不夠力的感覺還有一個很有可能的主要原因是這兩者都已經不是在 Nexus 的當代機器上了,自然 Google 挹注的開發資源在這兩台機器身上也就會比較少,要跑到像以前當代示範系統這樣的順暢我認為是很難的。 我觀察到幾乎每一代的 Nexus 都是下一代機器出來之後開始有人感覺到機器力不從心的現象,除了新系統真的比較肥(Android 是真的越來越肥了啊 Orz)以外,我想這也是原因之一吧。

我目前還是在使用 Nexus S ,其實經過適當的調整, Nexus S 一直到 4.2 世代仍然都可以跑得相當順。 當然一些新出的 App 系統資源要求高的跑得慢也是難免,但基本上 Nexus S 在 4.2 要維持順暢度我覺得還是可能的。

---

順帶一提目前的主力機器還是 Nexus S ,而且搞不好會一直用到下代甚至下下代 Nexus 出,目前還規在官方的 4.1.2 ,因為使用上相當順暢而且沒有問題,最近時間比較少所以暫時也沒有刷的打算。

倒是前兩天試了 Sleam ROM 4.2.2 覺得順暢度仍舊十分理想,所以改天有空應該是會切換過去了。

4.1 到 4.2 其實順暢度是變差的沒有疑問(無論是在任何一台機器上),所以覺得 Galaxy Nexus 4.2 比 4.1 不順,我覺得很正常,也不需要大驚小怪啦。
Wayne - #teampixel
eltonstar wrote:
其實我也就是嘴巴說說...(恕刪)

我實在有點受不了那偶而會 Delay 一下的感覺,所以又刷回 PA 3.15 + AK 內核了
不過我覺得...好像還好?很少遇到會 Delay 的情況
應該是我之前用的 P.A.C v22 寫得不好,原生的 PA 3.15 倒沒太大問題
不過也才剛用而已,過一陣子再看看情況
反正就備份 → 刷機 → 設定 → 還原,不到一小時就搞定了
真的用不順再來玩看看其他的 ROM 有沒有比較合的



is1128 wrote:
PA 的確已經比較不...(恕刪)

我有測試了一下 Xylon
它雖然包含了 PA 3.15 的 Pie control,但跟其他複合 ROM,像 P.A.C v22.1 一樣
Pie 有時候滑出來時畫面會跳閃一下,像顯示卡不夠力一樣
大概就是快速滑出,當 Pie 還沒出現,手指卻已經在 Pie 的按鍵位置時
當 Pie 一顯示出來,畫面就會跟著閃一下
但原生的 PA 3.15 卻沒這個問題
不知道是不是這些複合 ROM 所包的 MOD 有東西跟 Pie control 衝突到?
因為這個動作很頻繁,常常看到畫面那樣閃會很不爽,所以我就沒用 Xylon 了 XD



abev66 wrote:
其實不管是 Nexu...(恕刪)

Google 每次推出 Nexus 時都有 3 大定義:

1.目前的 Android 版本只要用這種規格的機種就能順暢執行了
(但只是目前,不代表未來還在產品生命期時更新後還能順暢 XD)

2.目前的 Android 版本依照這台 Nexus 開發,這台 Nexus 也是依照目前的 Android 版本而設計
(所以當然順啦...但同樣只到下一台 Nexus 出來之前 XD)

3.這台 Nexus 的訂價代表 Google 認為這種規格的機種該賣多少
(至於廠商客製化跟行銷的成本當然就繼續往上加了 XD)

其實...
要不是現在很多內核的新技術跟 ROM 內建的附加功能都出在 4.2.x 版本
不然我還真想跳回 4.1.2
尤其是 ROM 內建的那堆附加功能,很多都很方便又很好用
很多新的技術也只包在 4.2.x 之後的內核
不想刷回 4.1.2 就是因為這樣...

另外小八卦一下...
我覺得 iPhone 那堆蘋果產品也很神奇!
只要下一代產品伴隨著新版 iOS 推出後,舊機如果更新就會開始不順暢而 Delay
讓人有種感覺像是...
其實舊機不是跑不動,而是偉大的 Apple 在新版 iOS 裡面加了料
只要偵測到是舊機就自動幫你 Delay,讓你用不順手而強制換機 XD
當然實際情況是如何我就不知道了,只是個人無聊的推測www



arthas189190 wrote:
不知道有沒有辦法把提示更新關掉
刷回去後一直要我更新上去
很煩阿...(恕刪)

你試試看,到 system/etc/security 裡把那個 zip 檔的檔名後面加上 .bak(需 ROOT)

然後再到 cache 裡,把 OTA 的 zip 更新檔刪除
重開機後去點選系統更新讓他連上伺服器
看看還會不會叫你更新?還是顯示已是最新?

不保證有用,但有看過有人這樣說過
風景映像。 https://yushenghsu.com

Tsubasa~翼 wrote:

3.這台 Nexus 的訂價代表 Google 認為這種規格的機種該賣多少
(至於廠商客製化跟行銷的成本當然就繼續往上加了 XD)


這個我不太認同, Nexus 的定價策略很大成份是讓開發者能夠有便宜的開發機使用,所以通常定價都偏低。

我個人是對 ROM 附加功能沒有太多的興趣,比較喜歡原始的 Android ,所以附加功能對我來說的吸引力一直就都還好,也就一直都是以原生的 ROM 搭配自製的核心使用,當然不能否定這些修改有很多的確方便。
Wayne - #teampixel
CPU不夠力,果然是大問題。我的gn真的老了!!

這幾天試用了HTC one x,他也是1g的ram而已,可是跑起來非常的順。


我灌完全一摸一樣的桌面軟體和程式。還外加了gn跑起來有點吃力的facebook home,one x一樣非常順暢。看來1g的ram不見得不夠用。


所以我就狠心把gn超頻到1.5g的,果然又回到滑順無比的感覺。

當然這樣會比較耗電。不過好在他可以換電池。出門多帶個電池。一天還是可以撐過去。
Life will never do without Hi-tech
abev66 wrote:
這個我不太認同, N...(恕刪)

因為 Google 花不到多少行銷跟客製成本啊w
Nexus 系列就只在於製造跟系統研發而已
但是只要加上行銷後...看看這一開始賣到破 2 萬台幣的 Galaxy Nexus ...
其餘幾支沒有特別去打廣告或通路的 Nexus 就真的便宜到誇張w

eltonstar wrote:
CPU不夠力,果然是...(恕刪)

其實 CPU 不太是耗電的主因
你有超頻的話應該也有看到 CPU 每個時脈的電壓
像我現在是用 AK 內核,測出最低電壓後再 +25

說實在,有超沒超不會差太多,而且 CPU 不會是全時滿載
Interactive 模式下,休眠或低時脈的運行時間反而還是最高時脈的 10 倍以上
因為只有要運算時才會衝上最高時脈,平常多半都在休息
而且時脈高的話處理速度快,未必會像數據上那麼耗電(因為處理時間縮短了)
超頻真正最大的副作用是...熱啊 XD
另外就是 CPU 會折壽...
不過 Galaxy Nexus 也用超過一年了,就繼續用到它升天吧www

而真正耗電的,其實是螢幕...
進去電池管理可以看到,通常都會有 60% 以上的電力消耗是來自螢幕
只能說...螢幕越大、電力越噴
這在目前來說似乎還是無可避免的...|||
風景映像。 https://yushenghsu.com
大部分同意

但是其實關閉常駐在RAM內的程式我想並不是為了RAM閒置可以更多

而是電量的問題.....

android先天對背景程式管控不嚴格,吃流量耗電是常態
(畢竟要跟IOS相比是多工這個優點)

你不關背景應用,相對肯定比較耗電

不信可以ROOT機後,做一些優化

真的待機好很多
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!