Ubuntu 進一步降低硬件門檻,支持在 2GB 內存的樹莓派 4 上運行
Ubuntu 已經支持 Raspberry Pi(樹莓派)4 Model B 的 4GB 和 8GB 內存版本(自 Ubuntu 20.10 版本支持)。現在 Ubuntu 團隊計劃進一步降低 Ubuntu 的硬件門檻,讓即將發布的 Ubuntu 22.04 LTS 版本能在只有 2GB RAM 的Raspberry Pi 4 上運行。
然而,讓 Ubuntu 這樣一個完整的 Linux 系統在內存過低的硬件設備上正常運行是很困難的,那 Ubuntu 是如何做到的呢?那就不得不提到一個名為 zswap 的 Linux 內核特性。
在提及 zswap 特性之前,先來說說 Linux 的虛擬內存文件: swap file 。任何類型的 Linux 系統都會在硬盤或 SD 卡上分配一個 swap 文件,它充當 RAM(運行內存) 的一種溢出,在系統的可用內存不足的時候,swap 文件會緩存部分頁面,釋放內存給活躍的進程使用,這樣系統即使在幾乎用完所有 RAM 時也能繼續工作。(另外提一下,Win 10 的系統盤也有 swapfile.sys 文件)
但是,使用 swap 文件的性能不如直接使用 RAM,因為訪問硬盤的速度比起使用內存實在是太慢了,因此在這個過程中引入了 Zswap 特性。
zswap 本質上是一個壓縮工具。當一個進程即將被移動到 swap 文件里面時,zswap 會對其進行壓縮,并檢查壓縮過的新頁面是否仍需要移動,或者說可以保留在 RAM 中。如果壓縮過的頁面可以留在 RAM 中,那就等再次訪問的時候對它進行解壓。解壓一個“zswap”頁面比訪問 swap 文件要快得多,所以 zswap 特性非常適合低內存的硬件設備。
如何開啟此特性?
由于 Ubuntu 默認支持 zswap ,因此可以打開終端模擬器,通過一行簡單的命令
- sudo sed -i -e 's/$/zswap.enabled=1/' /boot/firmware/cmdline.txt
然后重啟板子,即可開啟特性。
事實上,zswap 只是降低 Ubuntu 硬件門檻的手段之一,此外還包括 z3fold 和 lz4 壓縮等一系列特性,這些優化內容將包含在 4 月發布的 Ubuntu 22.04 ,且在所有 Raspberry Pi 4 設備中默認開啟。
本文轉自OSCHINA
本文標題:Ubuntu 進一步降低硬件門檻,支持在 2GB 內存的樹莓派 4 上運行
本文地址:https://www.oschina.net/news/178245/running-ubuntu-desktop-on-a-2gb-raspberry-pi-4