版本 4ab41dab70b9863f99340181c632aea53e9d1726
qianzsh (鄭勝謙)
簡介
2025 Linux 核心實作 春季班 自我評量
成果發表和貢獻
自評分數:7分
這部分沒有做出實際貢獻,但是透過這堂課的問答和專題,我追蹤 Linux 核心程式碼、閱讀註解並做實驗,讓我理解 linux 核心中 tasklet 的機制。
作業/隨堂測驗
自評分數:7分
我在 lab0-c 和 assessment 的作業上完成度較高,在 lab0-c 的作業中,我使用 linux 自己的 linked list 針對佇列進行不同的操作,在 assessment 的作業,我對 log2 的演算法進行兩種改寫,一種是使用 tail recursion 的方式改寫,另一種我使用定點數改寫,並探討誤差的來源。
期末專題
自評分數:6分
我的期末專題是重作 kxo ,目前我用位元遮罩改寫原先 O(N²) 的迴圈判勝以及將棋盤繪製的工作從 kernel 移植到 user 端,接下來要做實驗觀察效能改善的情況以及更新重寫的程式碼到 github ,之後會引入並行程式設計的概念,新增 coroutine 到我的期末專題。
- kxo: HackMD
與授課教師的互動
自評分數:9分
跟老師一對一的時候,被問到第一週教材內容的問題,如何不使用分支實作 max(a,b) ,我發現我沒有好好讀教材,沒有誠實的面對自己,導致看過一遍就以為自己學會了,沒有深入的學習,因此後來在第二次討論的時候補上不用分支的實作版本。
- 與授課教師「一對一討論」的時間:5/30 16:00
- 與授課教師「一對一討論」的時間:6/17 22:00
修課心得
自評分數:9分
經過閱讀〈因為自動飲料機而延畢的那一年〉後,發現所有成果都是一點一滴的累積而來,發明自動飲料機的每一個細節都不簡單,他們能成功也不是偶然,或許當下不是學習本科的內容,但或許有一天就會派上用場。現在 linux 課程也讓我有一樣的體悟,雖然常說學 linux 不知道哪天會用到,但這些努力可以讓我學習到解決問題的能力、勇於面對挫折的精神、開發系統軟體的態度、對細節的重視,以及理論和實務的融會貫通。此外,文章也讓我思考能力不足的原因,「為甚麼他想的到?」是因為其他學員花很多時間去搞懂 C 語言規格,因此現在才能在時間內完成作業,而我從以前就是為了應付作業、交差了事的學生,現在才感受到痛苦與挫折,是因為我回來還債了,就如同開頭提到的「人不付出犧牲,就得不到任何回報。如果要得到什麼,就必須付出同等的代價,這就是鍊金術的基本原則,等價交換。當時我們深信著,這就是這世界的真理。」
自我評量
- GEOMEAN:\(\sqrt[6]{5*8*9*9*9*9}=8.001\)
- 方案 B:\(1+\lfloor 8.001 \rfloor=9\)
