Try   HackMD

2025 年 Linux 核心設計課程期末專題

:information_source: 注意事項

  1. 所有專案都該確保在 Linux v6.8+ 運作 (搭配 Ubuntu Linux 24.04 或更新的系統)
  2. 所謂的「彙整」,是指能撰寫出完整的技術報告,範例: 位元運算整理基於 C 語言標準研究與系統程式安全議題
  3. 專題不僅是課程評分的依據,而且是自己專業的證明,日後可列於個人簡歷
  4. 請及早向 授課教師 預約一對一討論,得知專題進行的期待方式
  5. 不要自行填入「執行人」,應在與 授課教師 討論後,再行更新
  6. 每組由 1 到 2 位學員進行,一個題目可能有多個執行人獨立進行
  7. 每位學員都該提供解說錄影 (並公開發布),否則期末專題不予計分
    專題解說錄影的示範,留意標示方式

CPU 排程器

探討 Linux 排程器內部設計,改進《Demystifying the Linux CPU Scheduler》,並尋求貢獻程式碼到 Linux 核心的機會。

檔案系統

為了探索 Linux VFS (virtual file system) 介面及檔案系統實作機制,我們從無到有撰寫一個運作於 Linux 核心模式中的精簡檔案系統 simplefs,原始程式碼約一千餘行,支援基本的檔案和目錄處理,同時也考慮到權限和並行處理的議題。

裝置驅動程式

開發圖形顯示、影像擷取、無線網路等裝置的 Linux 裝置驅動程式。

軟硬體整合

針對多樣的電腦硬體環境,應用 Linux 去解決特定的技術問題,甚至從無到有開發作業系統核心。

虛擬化和容器化

利用 Linux KVM, namespace, seccomp 等基礎建設,發展輕量級的虛擬化和容器化技術。

資訊安全

並行程式設計

改進〈並行和多執行緒程式設計〉系列講座和〈Concurrency Primer〉。運用並行處理來強化既有的應用場景。

藉由高度並行來提升網路服務效率。

改進原有作業。

eBPF 和電腦網路

位元運算與數值系統

回顧測驗題和運用來解決真實世界的問題。

整合應用