分享到plurk 分享到twitter 分享到facebook

版本 4f478df941a8c0d7cc1d36996b7b060533e37934

Max042004 (劉孟劭)

簡介

  • 國立成功大學 資訊工程學系 117 級 (2024 ~ 2028)
  • GitHub: Max042004
  • HackMD: Max042004

2025 Linux 核心設計/實作 春季班 自我評量

成果發表和貢獻

修改錯字 並行程式設計: Ring buffer 當讀取端想要取出換緩衝區的資料時 -> 當讀取端想要取出緩衝區的資料時

評分: 2 分

作業/隨堂測驗

  • Homework1 (lab0-c)
    • commit message 遵循規範,確保說明修改的 what, why, how
    • 閱讀論文〈Dude, is my code constant time?〉後,利用 dudect 工具以統計方法分析程式碼執行是否為常數時間,以防止時序攻擊
    • 以 Valgrind massif 工具追蹤佇列操作函式的記憶體開銷
  • Homework2 (quiz1, 2)
    • 以間接指標實作合併兩個已排序鏈結串列的函式
  • Homework3 (kxo)
    • 理解 Linux 模組中核心空間到使用者空間的 kfifo_to_user() 的通訊機制
  • Homework5 (assessment)
    • 紀錄有關 task_struct pid 機制的問題
    • 紀錄〈因為自動飲料機而延畢的那一年〉的閱讀心得,看見自己學習過程逃避困難的盲點

評分: 4 分

期末專題

回顧課程裡並行程式設計相關測驗題 在期末專題我探討 Linux 核心空間的簡易事件驅動伺服器運作原理,以及提出用 release/acquire 記憶體屏障避免 SPSC ring buffer 生產者可能覆蓋資料的問題。

我觀摩了: Linux 核心專題: 位元運算

評分: 5 分

與授課教師的互動

我這學期與老師進行三次一對一討論、兩次課堂問答。 一對一討論:

  • 5/15
    • 誠實面對自己,重新專注回課程最基礎的部分如浮點數運算、atomic 操作
  • 6/14
  • 6/24
    • 討論進行期末專題過程碰到的問題,VFS 檔案系統

課堂問答:

  • 5/27
    • 討論 Linux 中 Thread 跟 Process 的差別。
  • 6/19
    • 討論期末專題的核心伺服器的運作

我在學期初很害怕與老師互動,直到第一次一對一討論之後,我才知道跟老師互動是修這門課最重要的事情。老師一開始問我有什麼問題要討論,我當時腦海裡完全想不出任何問題,嘴巴卻不誠實地說出「很多」,後來老師接著問我讀了什麼教材,我自信的說浮點數,但當老師問我為什麼 Linux 核心不能使用浮點數、何時會發生 FPE 時,我卻完全答不出來。這時我才知道原來我根本沒掌握課程教材,導致問不出任何有意義的問題。 在互動之後,我便放下之前一直倉促寫作業、不仔細閱讀教材的習慣。回到課程一開始的內容,先把浮點數、〈Concurrency Primer〉、並行程式設計一一的好好理解。

評分: 8 分

所見所聞所感

自我評量 (1 ~ 10)