序:我之前刷B站時,看到飛蚊話的一部影片「《微软如何把我踢给Linux——一个老电脑迷的自述》」這是一名早期的Microsoft用戶的自述(那時還沒有Windows,那時是有MS-DOS,這裡追求嚴謹,故稱作「Microsoft用戶」),我剛好也遇見一些事情也進行了切換,今天就來分享一下。
我的內人筆電——Lenovo ideapad 530S——因為記憶體有問題,所以導致了系統不穩定。至於我是如何斷定是記憶體出問題?這是因為我的電腦有記憶體故障導致的症狀,例如重複當機、電腦黑屏、畫面凍結、記憶體佔用異常偏高(當時用Windows時,一開機佔用達85%),因為要考學測了,加上我手邊沒有工具,所以先切到Linux,至少要先能用,就這樣過了半年多,我終於有空了(理由在我的部落格有提及,暫且不表);我在今年一月時,跑了下MemTest86,發現我的電腦記憶體確實有問題,過不了測試,到了前天,我把筆電拆開,拆掉其中一條記憶體,很幸運的,我拆到壞掉的記憶體,再跑一次MemTest86,通過測試,至少我的記憶體是沒有問題了。可是,這帶來了一個新的問題,我原本8GB的記憶體縮水成4GB,這導致我一度認為自己做錯了事。
我把我的Ubuntu的桌面換成原生GNOME(就是vanilla-gnome),我滿心期打開剩下4G記憶體的電腦,部落格文章(前幾天寫的TLP)寫到一半電腦就國防部黑畫面了,試了幾次還是如此,不是畫面凍結就是國防部黑畫面,後來我切到Debian 13 + KDE Plasma的雙系統,一切正常,我不禁懷疑是不是Ubuntu的問題,後來我把電腦全部重灌,換成Debian 13 + GNOME,反正我也不打算用Snap了(因為它會在我的電腦建立好多個loop,就是虛擬磁區,管理也不大方便)。殊不知,這是我重灌Debian的開始,得益於Debian的良好的穩定性,電腦不會畫面凍結、國防部黑畫面,伴隨而來的是我的GNOME桌面會有操作上的Bug,例如在操作一段時間——尤其是記憶體佔用變高——滑鼠左鍵變成滾輪鍵、電腦的方向鍵變成英文的ABCD或是會莫名其妙的把我的文字反白,這些問題我爬文也都找不到,最後我把電腦進行了重灌並且換了桌面環境,我先後換到xfce4、LxQT,然後定在了KDE Plasma.
我在用xfce4時,我發現我的電腦非常正常,但是xfce4在Xorg下的縮放會模糊且不支持Waylnd且界面的自定性稍稍不佳,所以我切換到了LxQT桌面,這個桌面一樣不支持Wayland(但也不影響),但是自定性還不錯且界面與操作邏輯都很熟似我用了3年的Windows XP且一樣沒有問題,缺點大概是沒有動畫(畢竟是極簡桌面)。後來,我為了一種心態(別人有我也想有,雖然我或許用不到,就是Wayland)與動畫效果與自定性,我又又換到了KDE Plasma,過程中我再給了GNOME一次機會,還是有Bug。其中在我給GNOME一次機會的時候,為了預防我又要在進行一次重灌電腦的操作,我手動做了一次分割:512MB給EFI分區、8GB給SWAP做虛擬記憶體、128GB給根目錄、376.5GB給我的home目錄,果不其然,我又重灌了電腦(目前用的KDE Plasma桌面),所幸有把home目錄單獨分區,所以我的資料都還在(最重要的瀏覽器資料還在且可以完全的正常使用,看來home目錄獨立分割是很值得推廣,對新手而言也是如此)。
至於為何GNOME對於我這種只有4GB的記憶體出現這麼多問題,我目前爬文找到的解釋大概和「記憶體流失」有關了吧。這個問題在2022年有一些Ubuntu用戶有反饋,也有人說這是GNOME的傳統藝能(這我是保留態度),我覺得Red Hat工程師應該不至於犯了這麼久的錯(這我也說不定),這個記憶體流失簡單來說就是會導致記憶體的使用效率不佳(該釋放的沒被釋放,在使用C/C++更會被體現,因為這個程式語言沒有較為方便的記憶體的回收機制,這就考驗開發者了,尤其是目前日趨複雜的軟體開發),因此我大膽猜測這應該是GNOME在小容量記憶體中導致的不穩定的來源吧。
到了總結的部分,或許有人會說:「你就加大你的記憶體不就好了。」我這裡想說兩件事情,第一件事情,我之前有用過一臺775腳位的Windows 7電腦(這臺年紀14歲的電腦,在今年四月安然的離去),是4GB記憶體,在開啟虛擬記憶體後電腦可以得到非常的穩定(之前我有關過虛擬記憶體,電腦會因為記憶體不足而當機)與滿足日常的文書辦公、看片,由此可知,對我而言,滿足日常使用的確是4GB的實體記憶體加上適當大小的虛擬記憶體即可,看來4GB的實體記憶體還是目前電腦使用的基本門檻;第二個我想說的是,雖然電腦的記憶體大小開始上升、電腦的性能早已不可同日而語,但這不代表「對於一個程式進行最佳化」不是件重要的事情,我認為優化一套軟體是一種對於自己的作品展現出一種負責的態度,提升軟體產業發展的助力,以我來說,我花了一周用C程式優化了我的「牛頓近似法求三角函數的解」,從原本很直覺的邏輯寫成提升資源利用的程式碼,這除了成就感還有重要的責任感,再說一個近期的想法,人們總是盼望老黃拿出更強的顯卡、蘇媽拿出更強的AI運算晶片,來滿足日益增加的運算需求,為何我們不考慮稍微優化一下我們的程式,以期待這些新的晶片推出時可以進行更加龐大的運算?
--更--
今天(8月9日)我把我的Fedora 42給換回去了Ubuntu 25.04加上原生的Gnome桌面(vanilla-gnome-desktop),一點問題也沒有,但是Debian 13還是有問題(重裝也是),不知道是Conanical的Bug修復比較快還是重裝是萬(卍)解,總之我回到了APT的懷抱。
沒有留言:
張貼留言