版本 cf066de423642f7aefab46295a89adc83e6cea0f
yenslife (潘駿諺)
簡介
2024 Linux 核心設計 春季班 自我評量
成果發表和貢獻
- lab0-c
- 《Demystifying the Linux CPU Scheduler》修訂
- Add explanations related to DEFINE_SCHED_CLASS (commit 670559f)
- Update sched_class.h for kernel v6.x (commit 5fd54f9)
- Update task_struct state docs for kernel v6.x (commit c22f920)
- Update task_struct.h for current Linux kernel (commit 1ff5d23)
- Improve section Per-Entity Load Tracking (commit 9bbbffe)
- Fix typos in scheduler.tex (commit be5a7cd)
評分: 10
「取之於網路,回饋於網路」,深受網路開源學習資料的影響,貢獻開源專案是我參與這堂課程的目標之一,雖然沒有對 Linux 核心做出貢獻,但我在閱讀老師撰寫的教材時,除了更新過時程式碼外,也提供相對應的解釋,以及我認為對讀者更好理解的詮釋方式。在第一次作業 lab0-c 撰寫開發紀錄的時候,老師在我的筆記問我「如何確保排序的『穩定性』」,”stable” 一詞我只在過去學習演算法課程的時候把定義背下來,但我從沒想過要怎麼確保一段排序程式碼是否為穩定排序。從一開始單純在每個排序元素的成員加上編號,到現在使用陣列來紀錄節點的位址,目前的實作還有進步空間,因為固定長度的陣列沒有辦法適用於任意大小的佇列,可以利用像是 sliding window、hlist 之類的技巧來避免使用固定數值的巨集。不斷和老師討論、修改電子書或是程式碼教材的過程也讓我知道原來把小事情做到好是很重要的,光是留意細節就可以贏過許多人。我認為我在課程教材方面做了不少貢獻,第一次貢獻開源專案的經歷讓深刻的體悟,因此給自己 10 分。
作業/隨堂測驗共筆
TODO: 自我評分與反省
期末專題
TODO: 列出專題、自我評分與反省
與授課教師的互動
- 一對一討論
- 05/03 16:30 確認任務、不要講風險、審視學習狀況、浮點數觀念釐清
- 06/29 16:00 確認電子書修訂情形、第二章內容釐清、定點數觀念釐清
- 課堂討論
- 3/21 課堂討論 針對穩定排序檢測的討論
- PR #177: Check if sorting implementation is stable
TODO: 自我評分與反省
所見所聞所感
TODO: 自我評分及反思
自我評分
TODO: 完成上方自評後,採用方案 B 計算成績