6 月 30 日
以下是 Linux 核心設計/實作課程的部分專題列表,詳見完整專題列表。
10:00 12:00Image Not Showing Possible ReasonsLearn More →
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
成果展示錄影 (上)
自 Linux 2.6.23 起,CFS 取代 O(1) 排程器,引入 proportional-share 手法以便按比例分配運算資源,自此奠定 Linux 核心的排程機制;Linux v5.1 引入 EAS,提升高性能移動裝置的能源效率;Linux v6.6 以 EEVDF 成為新的預設 CPU 排程器,對 CFS 十餘年打下的基礎進行升級。
Meta 提出 sched_ext 這項排程器的重大變革,允許開發者依據特定的工作負載和任務規劃,進行客製化的排程,而 EEVDF 則維持通用的排程。
費曼說過:「透過科學產生的世界觀有其價值。那是一個美妙神奇的世界,經由新實驗產生的結果所呈現」。理解 Linux CPU 排程的最好方式是進行大量實驗並對照原始程式碼。
從無到有開發精簡的檔案系統,簡潔而不簡陋,除了基本功能外,近期實作日誌機制,當檔案系統發生故障 (如核心崩潰或突然停電),更容易保持一致性,且可較快恢復。
13:30 17:30Image Not Showing Possible ReasonsLearn More →
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
成果展示錄影 (下)
依據 DB-Engines Ranking (June 2024),Redis 是排行第 6 名的資料庫引擎,其作用是搭配其他資料庫,以自身的 in-memory key-value cache 來加速多種分散式服務場景。藉由 Linux 核心衍生的 Userspace RCU,本專案嘗試強化 Redis (及其後繼 Valkey) 的並行處理能力,得以大幅提升其資料吞吐量 (throughput)。
kHTTPd 復刻 Linux 核心一度內建的專案,由核心直接處理 HTTP 連線,達到大幅超越尋常網頁伺服器的高吞吐量,也適合作為核心 API 整合和驗證的測試環境。
探討真實世界中若干並行程式設計議題,成果將陸續彙整到《Concurrency Primer》。
自幹 CPU 並在其上運作 Linux 核心,是電機資訊科系學生的浪漫。
實作 hart state meangetment (HSM) 和改進模擬器內部設計,使其達到多核 RISC-V 系統模擬。
在 KVM 的基礎之上,建構精簡且得以運作 Linux 核心的虛擬機器,使其藉由 VirtIO 具備電腦網路連線能力。
從無到有開發具體而微的 WiFi 裝置驅動程式,採用 cfg80211 框架,建構虛擬的無線網路環境。
針對 Linux 核心開發的虛擬攝影機裝置,從而可理解 V4L2 (video fro Linux APIs, version 2) 的使用和 Linux 多媒體架構。