當你對這個OS的記憶體管理不信任的時候
你就會不斷的懷疑在意RAM的使用量
把網路關了,很多程式偵測到沒連線就會suspend
RAM就會釋放出來了
或者,刪掉一些很少用的app
有些apps裝了之後就是固定常駐...關了還會自己再起來,討厭的很
版大說的沒有錯

ANDROID的RAM就是這樣

但很值得慶幸的是ANDROID手機的記憶體雖然被占用

但就算沒去清裡他也不會有實際感受

ANDROID系統自己會調配
感覺不需要去清吧,
常用的程式就讓 andriod 放在記憶體中,
反正記憶體不足就會發生分頁錯誤,
到時候就會把記憶體先釋放或是存到 cache ROM 或記憶卡,這時候才會感覺到慢。
不一定是 RAM 越少越慢,常用的直接從 RAM 中取出應該會很快。
RAM 釋放後,下次要開又要去把程式讀到 RAM 中執行,不見得是好事。
TIMBOYHU wrote:
首先感謝各位的說明你...(恕刪)

我針對「RAM會神秘消失」的現象回覆。

Android目前針對程式的RAM分配方式如下:
1.啟動時分配 8 MB
2.向上展開每次 64 MB
也就是說,當APP啟動時他會先佔用 8 MB,如果需求增加,每次分配 64 MB 直到需求滿足。

現在...Android系統啟動到完全靜止狀態,假設占用了 1 GB 的RAM,剩下 1 GB。
這 1 GB 是指「所有」基本狀態完成待命。
但要注意,主系統、元件、鍵盤、通訊、無線...這些其實都是各別的APP且為系統常駐化。

當使用一段時間(A)後,不論是系統內建的關閉所有程式,還是第三方APP的強制KILL。
能關掉的都是使用者程式,而非重要的系統程式。
這時清除記憶體後會發現只能清到 1.2 GB / 0.8 GB。

差異的那 200 MB哪去了?因為你在無形中就使用了非常多的系統元件。
系統有在運作、你有用鍵盤打字、通訊也有在跑、下載管理員也有在運作...
這些動作都會改變程式的記憶體需求,需求增加自動 + 64 MB,低於需求自動 - 64 MB。
也就是說「只要程式有在運行,他的RAM需求就隨時在變動」。
但因為他們是系統常駐化而無法被關閉(否則會造成崩潰),甚至看不到(元件、通訊、無線)。

所以當你按下(X)的時候會發現清完的剩餘記憶體比剛開機時少,這是正常現象。
除非你重開機,讓「所有程式」都回到剛載入完的初始狀態。



Windows、iOS、OS X剛開機完,跟使用了一個禮拜後關閉所有程式,剩餘的記憶體也不會一樣啊...
風景映像。 https://yushenghsu.com
Tsubasa~翼 wrote:
Android是基於...(恕刪)



CMOS IC(RAM)的静態耗電流都很低,主要的耗電流都是發生在電壓訊號由0變1或由1變0(讀寫RAM),所以RAM的讀寫頻率越高,理論上耗電流應該會越大。查看CMOS IC特性手册的電氣特性就會發現靜態耗電流與讀寫的耗電流不同。




綠色守護的功能如果直接整合到系統裡應該不錯!
不過綠色守護並不會讓可用 RAM 的數字變好看。




pineman wrote:
  我的Linux有8GB RAM,我也沒跑什麼,結果只剩下1.28GB左右,真是太可怕了。

     total   used  free
Mem: 8083836 6805368 1278468

  其實我裁掉了右半段,詳細是
      total   used  free  shared buffers cached
Mem: 8083836  6805368 1278468  401488 312360 3898776

  也就是說,那個 free 是指目前完全沒被指派用途的。並不是全部都是執行中的程式用掉的。

  你裝一堆RAM,不讓OS指派用途,不是很奇怪嗎?重點是你的系統是否有因為顯示記憶體變少開始踢程式(在我的Linux是會開始swap,我設成只要有ram可用就不要swap,連swap都滿了才開始踢程式),沒有就別瞎擔心了。


其實 free 打下去會出現三行,不會只有你寫的第一行:
total used free shared buffers cached
Mem: 725 666 59 0 132 287
-/+ buffers/cache: 245 479
Swap: 996 0 996

真正的 free mem 要看中間那行 -/+ buffer/cache 的部分,也就是我標成紅色的部分。第一行的 59 + 132 + 287 會等於紅色的數值,在這邊是 478 與 479,應該是進位差。

所以要看真正系統可隨時運用的記憶體,直接看第二行最後一個數字,也就是我標成紅色的那個數字就可以了。

TIMBOYHU wrote:
最近特別注意了一下自...(恕刪)

如果安裝了一些怪怪的app
三不五時的就自己啟動、運作...
RAM當然有可能會變少

不過...這問題Google應該沒辦法解決
只有開發者能解決

現在看起來是無解...
因為有些開發者根本不知道自己的app會做什麼...
or
故意讓他做點什麼
bulibi wrote:
其實 free 打下去會出現三行,不會只有你寫的第一行:
total used free shared buffers cached
Mem: 725 666 59 0 132 287
-/+ buffers/cache: 245 479
Swap: 996 0 996

真正的 free mem 要看中間那行 -/+ buffer/cache 的部分,也就是我標成紅色的部分。第一行的 59 + 132 + 287 會等於紅色的數值,在這邊是 478 與 479,應該是進位差。...(恕刪)


  因為第三行還要多排版一行(你可以看我都有用全形空白排版),且對樓主的問題沒有幫助,因為他在意的是 free,第三行之後和標示為free(樓主所認知的可用記憶體)的沒有直接關係,所以我就忽略了。
文章分享
評分
評分
複製連結
請輸入您要前往的頁數(1 ~ 7)

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