記憶體消耗測試腳本

故事的起頭是這樣的,話說 DR 手邊有一項任務需要處理大量的表格資料,為此便寫了一支 Python 程式。然而這支程式的資料迭代過程有一項設計缺失,會導致已經處理完並存檔的資料,仍持續累積在記憶體裡,造成程式的記憶體佔用量持續升高。當 DR 隨意地用 htop 查看系統資源時,才赫然發現若按照這個累積速度,恐怕二號機上的 16GB 記憶體會被整個吃光。但當下又不太想讓它重跑,於是就硬著頭皮看著它跑完。果不其然,在整個執行過程中,系統記憶體一度接近耗盡,連 swap 都用上了。

 

程式沒寫好雖然尷尬,然而轉念一想,若寫一支能夠刻意把記憶體吃光的程式,似乎對於某些情境是有意義的,像是用於測試系統高負載情形及設備可靠性等等。於是順手另外再寫了一支腳本程式(mem_consume_test.py),來專門實現記憶體的消耗。這支腳本係針對 Linux 平台設計,對於記憶體使用量的監控是從 /proc/meminfo 中的數值計算而成。

 

分類: 

CentOS Stream 8 一年後使用心得

由於 Red Hat 提早結束了 CentOS 8 的生命週期,並且讓 CentOS 這個品牌從 RHEL 的免費版本,轉型成為 RHEL 的上游開發版本,也就是 CentOS Stream。使得原本許多 CentOS 的使用者,必然會需要思考合適的替代方案。雖然人們似乎會自然地關注諸如 AlmaLinuxRocky Linux 這些比照原本 CentOS 模式,從 RHEL 原始碼重新編譯而成的發行版本。然而說實在話,DR 並不認為需要就此將 CentOS Stream 從可行的選擇清單中剔除。因此在過去一年多的時間裡,DR 在工作環境裡建置了幾部 CentOS Stream 8 主機,而本文即是維運至今的一些感想。

 

分類: 

Who is the target user?

KDE 專案的開發者 Nate Graham 所發表的一篇文章《Who is the target user?》,內容以桌上角色扮演遊戲《吸血鬼之避世潛藏》(Vampire: The Masquerade)的技能點作為引言,來探討在軟體開發領域中,如何根據使用者的技能等級來進行分類。並藉此分析目標群體,以便找出合適的軟體設計。在該遊戲裡,電腦(Computers)技能按點數多寡,從 1 到 5 可分為以下五種等級:

  1. 學生(Student):懂得點選操作。
  2. 大學(College):能夠處理簡易資料。
  3. 大師(Master):具備軟體設計能力。
  4. 博士(Doctorate):可受聘為顧問,舒服度日。
  5. 學者(Scholar):總是走在科技前沿。

 

分類: 

How-To:Linux 安裝 ScummVM

操作環境:

  • Fedora 36
  • ScummVM 2.6.0

 

ScummVM 是個很奇葩的開放原始碼專案,雖然起初即如字面上所示,它是專注於 SCUMM 遊戲引擎的重製,也就是 LucasArts 早年許多冒險遊戲所採用的遊戲引擎,使這些遊戲能夠在現今的系統環境上重獲新生。然而隨著時間的演變,ScummVM 支援的經典老遊戲越來越多,已經不是僅針對單一引擎或特定的遊戲廠商。甚至也不再是僅侷限於冒險遊戲,還支援了部份的角色扮演及動作遊戲等等,可以在其官方網站查看所支援的遊戲清單

 

Flatpak Is Not the Future

眾所周知,有別於 Windows 及 macOS 系統,主要是使用個別的安裝程式來執行軟體安裝動作。Linux 作業系統通常是利用發行版所提供的套件管理工具,例如 apt、yum 及 dnf 等等,從設定好的套件庫來源中下載及安裝軟體套件。當然某些情況下也會存在獨立的安裝程式,不過其具體的實作並沒有統一的標準,可能很粗略,也可能做得很精密。除此之外,也是有針對特定領域、並且是使用者層級的管理工具,比方說 Wine 相容層可以用於安裝及管理 Windows 應用程式;以及 Steam 遊戲平台則是用於安裝及管理遊戲程式。

 

分類: 

Top 35 Toho Soundtracks

來自 Toho Kingdom 網站的文章《Top 35 Toho Soundtracks》,內容評比了日本東寶公司所發行的各類電影中,最佳的 35 部原聲帶。然而其實 DR 初次看到這篇文章的標題時,心裡是有蠻多疑慮的。一方面覺得 35 這個數目好像有點過於冗長,各個名次的分野足夠精確嗎?且另一方面,又覺得若未將電影類型分門別類,比方說區分為諸如特攝、動畫等等, 而全部攬在一起,在排名上恐怕也未必公允。但無論如何,畢竟 DR 不是東寶電影專家,只是對哥吉拉相對熟悉而已,所以外行就稍微看一下熱鬧就好。

 

文章作者 Anthony Romero 所選出的第一名有點讓 DR 意外。或許是因為 DR 認為這部電影本身大概是中上的水平,再加上就主題曲目來說,也已經是被二次使用,不是完全原創的情形。使得似乎不自覺間,對於配樂的細部表現就沒有太多關注。然而認真再聽了一次,對,可以理解為什麼這部作品能夠被列為第一名,確實是有它的道理。

 

分類: 

Linux 下修復 UEFI 開機程式之流程

倘若因某些緣故,發生 Linux 系統的 UEFI 開機失效,使得無法順利進入作業系統。那麼可參考以下流程,來進行 UEFI 開機程式重新安裝的動作。本文範例是以 CentOS Stream 8 為操作環境,使用此發行版的安裝映像檔做開機,然後進入救援模式。接著設法讓安裝在磁碟中的相同發行版,回復至可順利啟動的狀態。

 

若是使用同為 Red Hat 生態體系下的 Linux 發行版,操作流程應會相當一致。至於其它的 Linux 發行版本,則至少在概念上也是相同的。

 

1. 進入救援模式

分類: 

Jurassic World Dominion - We've got Dodgson here and nobody cares

很明顯地 DR 個人並不怎麼喜歡《侏羅紀世界》(Jurassic World)過去的兩部作品,但總覺得這部《侏羅紀世界:統霸天下》(Jurassic World Dominion),好像終於有這麼一絲機會,能夠說出一齣還不錯的故事。因為就好比漫威 MCU 的許多電影,DR 都沒有覺得特別欣賞。但透過這些作品把人物跟背景都一一交代完後,至少最後有交出一部非常不錯的《復仇者聯盟:終局之戰》(Avengers: Endgame),所以或許本片也能夠形塑出類似的成果。

 

 

分類: 

01/13/2022 Firefox 當機事件回顧

如文章標題所示,這其實是發生在好段時間前的事了,但直到最近,腦袋才比較有空可以認真看一下相關的細節。話說在 1 月 13 日當天下午,包含 DR 自己、以及公司內其他少數有在使用 Firefox 瀏覽器的同事,都發現網頁突然皆無法開啟。除此之外瀏覽器也無法正常關閉,只能從背景殺掉。但殺掉重啟後狀況依舊,開啟網頁都卡住不動,而同時間其它瀏覽器都是正常的。

 

雖然 DR 個人蠻期望 Firefox 能夠擁有更多的使用者,但諷刺地,正是因為公司內 Firefox 使用者不多,不然這真的會是大事件。而網路上當然也是有哀號聲,於是循線找了一下(1749908 - Infinite loop in HTTP3 hangs socket thread),發現若透過 about:config,停用 network.http.http3.enabled 參數,也就是將 HTTP/3 通訊協定停用,則 Firefox 便能夠恢復正常。

 

分類: 

Shadow Tactics: Blades of the Shogun - Aiko's Choice

2017 年的《Shadow Tactics: Blades of the Shogun》(SteamGOG)是 DR 曾給予相當高評價的一款匿蹤式策略遊戲,而去年發行的《Aiko's Choice》(SteamGOG)則是它的獨立資料片。雖然這表示它可以獨立購買,執行時也不依賴主程式。然而實在沒有道理跳過本傳,而直接玩資料片(畢竟本傳這麼精彩);同時對於喜歡本傳的玩家,則《Aiko's Choice》就是內容再短也應該要入手,因為玩家的意猶未盡也只能靠資料片稍微止飢一下了。

 

分類: 

頁面

Subscribe to DarkRanger's Secret Area RSS