2025q1 Homework1 (idea)

contributed by < Urbaner3 >

ideas

2024 年課程期末展示完整期末專題列表,搭配 2024 年課程回顧影片從去年的期末專題中選出至少 7 項題目,紀錄過程中的認知、遇到的疑惑,以及你認為如何改進。盡可能選我有興趣容易而且有時間且能適當發展。每一項,除了認知、疑惑、改進之外,興趣和難易度和發展時間以及可能性都會被討論。

simplefs

電腦所有檔案都是二進位數據,為了讀取方便,還有與系統和進程配合,合適配置適合 CPU 和效率好的檔案系統是要緊的。這裡用 simplefs 對比 btrfs, ext4 和 NTFS ,有存放大小的講究。還有,圖書館找書,書放近,或是分開放,影響效率不少,是生動比喻。 功能實際,會有設計的特徵,教授,也有特徵,就是學校和系。這樣類比,整體工作很清楚。目標是教學,可以設計觀察和發展。 實測結果意外有冷靜分析原因,值得學習。貢獻上,遇到函數的原型沒定義、版本差異要修改函數名稱,這與我實際改正軟體的經驗一樣。實際掛載要實驗,實作讀開寫功能。 刪檔案系統的資料結構空間修正運算量大。 提出 journal 避免日常錯誤,比如刪除時的問題,是重大的發明,尤其是意外中斷,軟硬體的問題都要考慮。 jgd2 API 是專有名詞可以記來用。移除 symbol link 的日常操作都有問題, memory leak 要注意利用 kmodleak。重點還是教學取向。 他是 virtual file system。

CPU 排程器

SCX sched 是主角,但像是 CFS 等名詞,他說話偏快,一開始介紹 Task 是基本單位,CPU 做事,最佳工作和
最合適對象,是破題得觀念。即使有些名詞表達不熟,他還是擅長進行基要的目標,口頭禪是其實、那,表示性格專注對事不對人,雖然步驟可能在繞圈圈,但他會不擇手段執行工作,可以信任但是需要引導。 有提到深度學習和 時間關係,表示他思考偏多,但可以再更簡要,會讓結果更漂亮。 eBPF 是控制核心的重要策略,他也用 JS 作為 HTML 的框架來說明,表示他重視實用,可是沒有去思考為什麼,不會有獨到的見解。老師補充的資訊很有意思。他的工作可以用地圖間的移動來比喻,有限的實作。遊戲在我們心中的佔比、優先權是高的,他沒有統整重點的信念,可惜,不過還年輕,沒有問題。 應用上,他說實作和實測很快,不到三分鐘。比較和最佳化,他有用 Youtuber 的影片實測,來演示 SCX 是最佳化方案。 中間提到的 task migration 次數是重要的排程名詞。 內容很多,但綱目加強,讓觀眾自己回想和思考,其實省下說服力,也加強印像。感覺伸縮和延長的空間還很大。但沒把握可以說服他。

@@## 並行處理書籍理解

1:05:- 1:27:49

改進 Linux 核心的 lib/list_sort.c

專題目錄

其他題目

橢圓曲線加密、圖論與連接矩陣、亂數、shuffle 排序。 關係整理。 讓 lab0 更好上手,策略整理。 API 說明手冊,好的 review 值得寫,並且關注 LKML patch。