Posts by Tag

2020-09

為什麼內核設計了 Direct I/O

以 Linux 內核為例,默認狀態下大部分讀寫邏輯使用 Buffered I/O,所以當我們寫入某文件時,並不會直接寫入物理設備,而是寫入 kernel 的 page cache,然後返回「寫成功」。page cache 中的記錄何時寫到物理設備上由 kernel 控制,用戶空間程序看不到這一過程。

DigitalOcean 主機磁盤 Ext4 轉 XFS

重要:本文中的操作具有極大風險,僅供具備相關經驗的讀者參考,請勿當成手冊來操作,操作前請務必備份數據。本文作者對可能的風險以及後果不承擔任何責任。

Back to Top ↑

2021-01

如何將 linux 默認內存分配器替換為 jemalloc

jemalloc 是 BSD 類系統的默認內存分配器,其在內存分配上比 glibc malloc 的實現更加高效,使用 jemalloc 能夠在一定程度上減少常駐程序的內存佔用,減輕內存碎片問題,提升動態內存使用效率。

利用位運算節省 bool 數組內存佔用

由於布爾值在內存中只需要一個 bit 位就可以表示和計算,而 bool 類型和 integer 類型都會佔用遠大於 1 個 bit 的空間,所以,使用 bool 或 integer 作為基礎類型來存儲布爾連續向量,是缺乏內存效率意識的設計。

Back to Top ↑

2020-05

理解 Rust impl Trait 機制

impl Trait 本身可看作 Rust 補充類型系統的修補,但正確理解其必要性需要從 Rust 語言更底層的問題談起。

Back to Top ↑

2020-07

Back to Top ↑

2020-08

如何自建 DNS 服務器

在合理網絡節點自建 DNS 服務器,可以優化域名解析速度。本文操作以 Arch Linux 為例。

Back to Top ↑

2020-10

FreeBSD 桌面環境

由於打算將一臺 BSD 主機臨時用作桌面環境,決定給其裝上 XFCE。

Back to Top ↑

2021-06

Back to Top ↑

2023-01

Back to Top ↑