跳至主要内容

記憶體

即時記憶體分佈(可用/非使用中/使用中/固定),附配置圖表與歷史紀錄。

概覽

記憶體工具顯示裝置 RAM 的配置方式、有多少記憶體可快速回收,以及分佈如何隨時間變化。

此工具設計用於回答以下實際問題:

  • 「這台裝置目前是否有記憶體壓力?」
  • 「記憶體是被系統(固定)、應用程式(使用中)還是快取(非使用中)佔用?」
  • 「我的記憶體使用量是否穩定,還是有突然飆升?」

在 Lirum Device Info 中,可用記憶體是 iOS 通常可以快速回收的記憶體量:可用 + 非使用中

目錄

分頁

  • 概覽
  • 詳細資訊
  • 歷史紀錄

概覽分頁

概覽分頁聚焦於可用記憶體

  • 顯示可用百分比的圓形儀表。
  • 可用容量與總 RAM。
  • 精簡分佈表格:可用非使用中使用中固定

當您想快速了解「裝置目前是否運作正常?」時,請使用此視圖。 若四列分佈加總不等於總計,請參閱壓縮與「其他」

概覽:可用記憶體儀表加上可用/非使用中/使用中/固定分佈。

詳細資訊分頁

詳細資訊分頁提供更完整的分佈:

  • 記憶體配置圖表(使用中/固定/非使用中/可用)。
  • 詳細記憶體資訊表格,包含大小與百分比。
  • 可用列結合了可用 + 非使用中

這是了解記憶體類型使用情況(以及是否可能被回收)的最佳位置。 若可用/非使用中/使用中/固定的百分比加總不等於 100%,通常是因為部分記憶體目前被計入壓縮或「其他」類別。

詳細資訊:配置圖表加上包含大小與百分比的詳細表格。

歷史紀錄分頁

歷史紀錄分頁幫助您了解趨勢,而非單一快照:

  • 記憶體配置歷史:可用/非使用中/使用中/固定的堆疊時間軸。
  • 記憶體使用歷史:隨時間變化的整體使用量簡化視圖。

在以下情況使用歷史紀錄:

  • 您懷疑有記憶體洩漏或失控的工作負載(使用量持續上升)。
  • 您想將卡頓/應用程式重載與記憶體壓力關聯(使用量飆升後下降)。
  • 您想查看固定記憶體是否增長並維持高位(通常是系統/驅動程式壓力)。
歷史紀錄:查看記憶體配置與整體使用量如何隨時間變化。

記憶體狀態

Lirum Device Info 使用 iOS 報告的相同高階分類。這些是 iOS 記憶體最實用的「心智模型」類別:

分類通常代表的意義iOS 能否快速回收?
可用未使用的 RAM,可供配置是(已可用)
非使用中主要是快取和最近未存取的分頁通常可以
使用中目前正在使用的工作集無法直接回收
固定鎖定的、不可分頁的系統記憶體
壓縮儲存在記憶體壓縮器中的分頁無法直接回收
其他剩餘分類(依作業系統/裝置而異)視情況而定

可用(Free + Inactive)

可用是實用的「我還有多少空間?」指標。

  • Free:已未使用的分頁。
  • Inactive:主要是快取分頁,當其他程式需要記憶體時可以捨棄或重新分配。

這就是為什麼 Lirum Device Info 在概覽儀表和詳細資訊表格中顯示可用 = Free + Inactive

注意:可用並不保證系統會立即無成本地提供該數量的記憶體。回收非使用中分頁仍可能涉及工作(捨棄快取、寫回髒分頁、稍後重建快取資料)。

實際意義:

  • 可用穩定且充足,裝置通常有餘裕,即使Free很低。
  • 可用持續偏低(且在執行一般任務時維持低位),iOS 可回收的快取較少,可能開始採取更強力的壓力措施(壓縮、終止應用程式)。
  • 開啟應用程式時短暫下降是正常的。緩慢持續下降且不恢復是常見的「壓力」模式。

固定

固定記憶體是鎖定(不可分頁)的 RAM,無法按需壓縮或回收。

將固定視為「必須常駐」的記憶體。它通常由核心和低階系統服務擁有,且為正確性或即時行為所必需。

典型範例:

  • 核心記憶體和核心作業系統服務
  • 硬體驅動程式和 DMA 緩衝區
  • 圖形/顯示表面和部分 GPU 相關配置
  • 為即時或正確性原因必須常駐的記憶體

重要性:

  • 固定記憶體是最不靈活的分類。若增長過大,iOS 釋放 RAM 的選項減少,記憶體壓力會更快出現。
  • 裝置可能顯示低 Free 記憶體但仍運作正常,但持續高固定記憶體對 iOS 來說較難處理。

常見模式:

  • 使用相機、AR、遊戲、視訊管線、大量 I/O 或使用外部配件時,固定記憶體可能增加。
  • 固定記憶體傾向於「黏著」。某些固定配置不會快速縮減,有些只在重新開機後才會重置。
  • 若固定記憶體隨時間穩定增長且不下降,可能表示持續的系統層級壓力(或系統服務或驅動程式中的洩漏)。

使用中

使用中記憶體是應用程式和系統目前正在使用(頻繁參照)的 RAM。

使用中不僅是「應用程式記憶體」。它包含作業系統認為目前處於熱門狀態的任何分頁,包括檔案支援分頁(例如程式碼和框架)和匿名分頁(例如堆積和堆疊)。

典型範例:

  • 應用程式堆積和工作集
  • 目前正在使用的檔案快取和已解碼媒體
  • 系統/應用程式正在主動存取的資料結構

重要性:

  • 使用中記憶體不是「浪費」的記憶體;它是工作記憶體。它通常會追蹤您正在做的事情。
  • iOS 無法簡單地「釋放」使用中分頁而不產生後果。在壓力下,iOS 通常會先嘗試從快取回收;若不夠,可能會壓縮記憶體,最終終止應用程式。

常見模式:

  • 當您開啟應用程式和工作時,使用中通常會上升,當應用程式被終止或其分頁隨時間變為非使用中時可能下降。
  • 若使用中在工作負載不變時持續攀升(或裝置閒置時),可能暗示應用程式中有記憶體洩漏或失控的快取。

非使用中

非使用中記憶體是最近使用過且目前主要作為快取保留的 RAM。

非使用中是 iOS 獲得大部分「快速回收」餘裕的地方。大部分非使用中記憶體是乾淨的檔案快取,可在需要時捨棄並稍後重建。

典型範例:

  • 快取的檔案分頁
  • 最近使用的應用程式記憶體,可重新分配
  • 未被主動參照但保留著的資料,因為可能再次有用

重要性:

  • 當新配置需要 RAM 時,非使用中通常是 iOS 首先回收的地方。
  • 高非使用中通常是正常且良好的(快取)。當系統需要記憶體時應該下降。

常見模式:

  • 非使用中通常在應用程式啟動、讀取檔案、捲動媒體或載入網頁內容後增長(這些分頁變成快取)。
  • 在記憶體壓力下,非使用中應該下降,因為 iOS 將快取分頁重新分配給新配置。
  • 若非使用中已經很低且可用維持低位,iOS 可回收的「容易」記憶體較少,您可能更快遇到壓力。

Free

Free 記憶體是目前未配置且可供使用的 RAM。

在 iOS 上,Free 通常設計為偏低。作業系統會嘗試將 RAM 用作快取,以加快您下次啟動應用程式、捲動或讀取檔案的速度。

重要性:

  • 即使在健康的裝置上,iOS 的 Free 通常也很小,因為 iOS 傾向於讓 RAM 作為快取(非使用中)工作,而不是讓它閒置。
  • 若非使用中健康且裝置沒有壓力,單獨的低 Free 並不是問題。

壓縮與「其他」(為何數字可能不相加)

在應用程式中,iOS 也會報告額外的記憶體分類,例如壓縮記憶體,加上其他無法整齊歸入四個主要分頁列表的系統配置。

壓縮記憶體是 iOS 透過以壓縮形式儲存分頁來緊縮的 RAM。這是 iOS 主要的壓力緩解機制之一:

  • 壓縮可節省 RAM,但仍會使用 RAM(以及壓縮和解壓縮的 CPU)。
  • 壓縮佔用量上升通常是系統正在努力避免終止應用程式的訊號。
  • 若壓縮分頁再次被存取,iOS 必須解壓縮它,這可能增加延遲和 CPU 使用率。

其他是四個主要分類未涵蓋的所有內容的剩餘分類。它可包含各種系統配置和 VM 記帳類別,iOS 在不同作業系統版本和裝置上的報告方式不同。

在 Lirum Device Info 中:

  • 概覽分佈和詳細資訊圖表聚焦於四個最常解讀的狀態:Free非使用中使用中固定
  • 顯示的總計記憶體是您裝置的實體 RAM。

因此,四列分佈在每個裝置和作業系統版本上可能不會精確加總到總計。「缺少」的部分通常是目前被計入壓縮的記憶體,加上雜項系統配置(其他)。

iOS 在壓力下的處理方式

當 RAM 緊張時,iOS 通常會分階段施加壓力:

  • 先回收快取:重新分配 Free 分頁,然後回收非使用中快取(捨棄乾淨的檔案快取、清除部分快取)。
  • 壓縮記憶體:以壓縮形式儲存較少使用的分頁,以延遲終止應用程式。
  • 終止應用程式:若壓力持續,iOS 可能會終止背景應用程式(最終甚至前景應用程式)以釋放記憶體。這通常表現為切換回應用程式時需要重新載入。

使用歷史紀錄分頁觀察這些階段隨時間發生時,記憶體工具最為實用。

如何解讀數據

  • **可用(Free + Inactive)**是最快速的「喘息空間」指標。
  • 固定是最難處理的分類。若固定增長,系統可調整的空間更少。
  • 非使用中很大通常是正常且良好的(快取)。當系統需要記憶體時應該下降。
  • 使用中 + 固定隨時間增長且可用縮減,您可能會看到應用程式重載、卡頓或系統壓力。
  • 使用歷史紀錄分頁來推理趨勢。在 iOS 上,單一快照容易誤讀,因為作業系統會積極使用 RAM 作為快取。
  • 若您在執行可重複的操作時看到可用穩定下降,這比任何單一數字都更能指示問題。

注意事項與限制

  • iOS 會自動管理記憶體;看到低 Free 記憶體本身並不一定是問題。
  • 數值和類別因裝置和作業系統而異,且在工具開啟時持續更新。
  • 記憶體工具顯示全系統記憶體狀態(非個別應用程式歸屬)。
  • 在某些 iPad 機型和作業系統版本上,系統可能使用儲存空間作為置換空間。記憶體工具聚焦於實體 RAM,不嘗試視覺化置換空間使用量。