PTT推薦

Re: [新聞] Galaxy S23 新機塞「垃圾軟體」,系統肥

看板MobileComm標題Re: [新聞] Galaxy S23 新機塞「垃圾軟體」,系統肥作者
shengshampoo
(Sheng Shampoo)
時間推噓 6 推:7 噓:1 →:13

轉載於 Twitter和 Reddit 的解說,
大致機翻,
和前面第一篇回文說法一致。

https://twitter.com/MishaalRahman/status/1621584163802324992

http://tny.im/utY

S23 系列不支援 A/B分區和無縫系統升級,如果Samsung 採用Android 7.1 舊A/B分區方案,可用的空間就更少。

Android 計算系統佔用的存儲空間,
從Android 代碼來看:
https://t.co/4ceX3poAwb
算法就是已佔用儲存的所有空間用量,
減去於設定空間頁面上的所有列舉其他內容的存儲空間得到的數據。

https://www.reddit.com/r/Android/comments/10vfdbx/bloatware_pushes_the_galaxy_s23_android_os_to_an/

http://tny.im/utZ

提到說,
避免讓使用者誤會困惑,
系統設定頁面標示的總儲存空間,
就如同手機規格提起的實體空間。

一個蠻奇怪的地方,
當相關系統程式的暫存空間清掉,
標示的系統佔用空間也隨之降低。
但是系統佔用用量,
指的是固定無法移除的核心系統作業程式,
以及品牌商預設安裝包羅萬象的App。
照理來說,
系統佔用空間除非版本更新升級,
理應不會隨著使用時間而變動增加,

底下的回覆,
再補上Android核心代碼的程式判斷邏輯,
簡單用幾行數學等式解釋:

systemSize = usedBytes - allOthers

usedBytes = totalBytes - freeBytes

totalBytes = StorageStatsManager.getTotalBytes()

StorageStatsManager.getTotalBytes()指的是底層物理介面的空間,
也符合用戶的真實直覺感受,
也等同于手機規格上的宣傳數據,
但是與檔案寫入儲存空間的應用函式File#getTotalSpace() 數值不一樣。

所以說,
硬體規格載明的256GB,
實際上只有接近238GB可用,
同理規格上1TB的,
其實只有0.9TB的儲存寫入空間。

https://wiki.ubuntu.com/UnitsPolicy
那些是用公制十進位標示,
而那些用二進制標示。

手機硬體規格提到的512GB是十進制。
totalBytes = StorageStatsManager.getTotalBytes()
所以 totalBytes 等式十進制,
相較於二進制是膨脹超出的數據。

freeBytes 和allOthers是二進制,
systemSize = totalBytes - freeBytes - allOthers
膨脹超出的十進制數據減去兩個二進制數據,進位單位不一致,
運算得到的系統佔用空間也就偏差失真。

正確來說,
要麼全部統一換算成十進制,
或者是全部統一換算成二進制再加減。
iOS 應該用量空間齊一標示十進制,
Windows的檔案總管應該也是齊一標示二進制,
谷歌的Android這樣標示真看不懂。

所以 512GB 要換算 512/(1.024*1.024.*1.024)=~476.83GiB,
減去得到的系統佔用空間才符合真實情況。

※ 引述《knight791211 (三途河的擺渡人)》之銘言
: 1.原文連結:
: https://tinyurl.com/yc7s6cwj
: 2.原文標題:
: Galaxy S23 新機塞「垃圾軟體」,系統肥大占 128GB 手機近半容量
: 3.原文來源(媒體/作者):
: 科技新報 陳 冠榮
: 4.原文內容:
: 做為智慧手機的作業系統,Android 努力瘦身成輕量級,以便安裝在各種硬體上執行。三: 星似乎不這麼想,最新發表的 Galaxy S23 系統容量約有 60GB,如以儲存容量 128GB 的: 版本來看,未加裝 App 前,系統就先占掉將近一半容量,大幅壓縮可用空間。
: 三星用戶回報,Galaxy S23 手機啟用後占去將近 60GB 的系統分區(system partition: ),如果入手的是 128GB 版本,包括作業系統和預設程式占掉快一半的儲存容量。60GB: 這項數據是 Pixel 7 Pro 系統分區 15GB 的 4 倍,這樣的大小甚至能夠安裝兩套
: Windows 11 系統。系統分區可能隨著時間累積不斷擴增,60GB 將隨日後系統更新不斷: 變大。
: 為何三星手機系統如此肥大?國外媒體 Ars Technic 分析,三星軟體部門產出低品質程: 式而聲名狼藉,三星傾向改變 Android 所有內容,但難以想像會變得更好。
: 其次,三星希望給予外界一種擁有非 Google 生態系的印象,但根據雙方合約,三星有義: 務在手機上提供 Google 程式,因此用戶可以同時獲得三星和 Google 的版本,例如 2: 種應用程式商店、2 種瀏覽器、2 種語音助理等,這些都被加入系統分區,通常不能刪除: 。
: ▲ 上一代 Galaxy S22 就能發現,系統預設分成 Samsung 和 Google 的資料夾,納入多: 款原廠程式。(Source:Ars Technica)
: 像是 Meta 在三星手機的系統分區為 Facebook 買下一個位置,成為預設程式,使 Meta: 可以獲得更多三星未授予第三方程式的權限,有效了解用戶的使用行為。除了 Facebook: ,通常還有 Netflix、Spotify、Microsoft Office、LinkedIn。三星用戶不一定需要這: 些軟體,手機卻被迫堆滿「垃圾軟體」(crapware),使系統更加肥大。
: 值得一提的是,三星未使用在 Pixel 7 或多數旗艦手機上占據大量儲存容量的功能:: A/B 系統分區。像是 Pixel 7 基本上有兩套系統副本,一套正在使用,另一套離線且在: 背景等待。當手機系統更新的同時可以繼續使用,並在背景更新第二套系統副本,更新完: 成會有 30 秒重啟,切換成剛剛更新好的系統副本。萬一出現問題,雙系統副本可為手機: 重啟提供備份。不過,只有一套系統副本的三星手機不得不直接重啟,進入停機狀態等待: 30 分鐘。
: 儘管 Galaxy S23 系統效能和功能有感升級,但垃圾軟體問題未解決,占據不少儲存容量: 。三星似乎以硬體思維解決這個問題,像是 Galaxy S23 Ultra 具有高達 1TB 的儲存容: 量,可以裝載更多程式,但不是人人有足夠預算買更大容量的機型。
: Bloatware pushes the Galaxy S23 Android OS to an incredible 60GB
: (首圖來源:科技新報)
: 5.心得/評論:
: 現在不是很多內建APP都能刪除了嗎?
: 怎麼突然又說這些都是固定不能刪的?
: 就算能刪 內建60gb 128容量直接減半 黑人問號
: 難怪外國預購都是升級容量 哈
: 希望正式發售之後可以把這個部分優化一下 讓大家自己裝自己要用的不就好了??
: ──────────────────────────────────────



--

※ PTT 留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.240.217.240 (臺灣)
PTT 網址

shengshampoo02/08 18:42一句話:買的是512GB ROM空間,剩餘未用空間多少。

abc11085702/08 18:44釣出一大堆急著嘴三星的 無言

RonanXidi02/08 18:52世界有10種人,懂二進制的人和三星腦粉

labbat02/08 19:00還有介於量子糾纏的三星樂子人

shengshampoo02/08 19:23半導體製程不需要用到量子糾纏,光通訊還是量子運

shengshampoo02/08 19:23算可能會用到。

james198602/08 19:24照這個邏輯 索尼看起來有認真作?

james198602/08 19:25https://i.imgur.com/qA1Z0zy.png

shengshampoo02/08 19:25二進制運算可能是離散數學才會學到。

james198602/08 19:26https://i.imgur.com/nQ263Hd.png

shengshampoo02/08 19:29樓上,我想說的是,ROM標多少,設定就寫多少總空間

shengshampoo02/08 19:29,還有多少閒置未使用空間,就這兩個數字不會有落

shengshampoo02/08 19:29差,其他數字上上下下,失真偏差不用太執著。

james198602/08 19:35可是照第一段的說法 (512-476)應該全部灌去系統佔用

james198602/08 19:35不是嗎? 可是看起來沒有這個現象?

EPIRB40602/08 19:37離散用不到二進位吧!大一資概就有2進位了

hyghmax120202/08 20:01敢問三樓另外八種人去哪惹 被那兩種人吃掉了嗎…

lucyfia02/08 20:58三樓可能是指二位元 也就是 1 0 兩種XD

hms523202/08 21:28程式碼 二進位

square402/08 22:21實際可能還有dirty read的問題

smallpig0102/09 13:36推, 感謝程式碼翻譯