版本 c2d78364cb4e3e2be802cf430056b4fb051dcab2
2020leon (張晉)
簡介
成果發表
Linux 核心和相關專案貢獻
其他專案貢獻
- 修正 lab0-c: commit de856da
2022 Linux 核心設計 春季班 自我評量
作業共筆
測驗共筆
期末專題
- cpumemory: HackMD
修課心得
要是能重來,我希望能花上更多的時間在這門課上,更希望能早點汲取這茫茫大海中的知識。
原先抱持著對於各個領域都略懂,想要更上一層樓的心態參加了課程。沒想到課程開始後,才意識到自己的程度連略懂都無:關於記憶體管理、atomic operations、生產者消費者問題、gnu extentions,甚至連看似最簡單的 bitwise 操作,在測驗題出現後,便知道自己欲更上一層樓,須從不存在的地基打起。在經過一學期的洗禮後,雖然自認上述知識還有許多尚未掌握完全的地方,但相比學期初莫名的自信更能誠實面對自己不足之處,努力補強最基礎的知識。然而更多的是連皮毛都沒有的知識,例如 memory ordering、排程器等,這部份仍然待加強,還有很長的路要走。
除了資訊工程的基礎知識外,也發現到在 HackMD 上的課程教材汗牛充棟,扎實的中英文閱讀能力和寫作能力也是修習這門課所需的能力之一。在閱讀方面,不僅了解到我所不知道的訊息與工具,也於一次次的測驗題中在短時間內閱讀程式碼下快速掌握其理念和邏輯,並做出最適的答案(雖然大部分時間還是沒能理解程式碼的一半 …)。在寫作方面,lab0-c 及隨後共筆和作業的開發紀錄及 commit messages 都在在使我認知到精確的詞彙表達和整理思路、明白傳達自己的想法至關重要,甚至是如何寫出正確優雅的程式碼。過去的我總以為工程學科不需重視語言,經過這門課後屏棄了這錯誤的觀念,從中學習到語言與溝通對於資訊工程的重要性。
此外,在吸收許多課程教材中自己本該就應有的知識時,也了解到時間管理的重要性。在一個時段內的眾多事項,分配輕重緩急,在最短的時間內完成最多的事也是這門課學習的一環。然過完這學期後只能感慨在時間管理的部份還有待加強,使得自己能夠更有效率利用時間在課程的學習與作業上。
自我評量 (1 ~ 10)
我給自己 8 分。
學期初老師口中的每週 18 小時,原先以為易如反掌。然而實際投入後才發現,即使每週真的有投入 18 小時在課程上,所習得的知識於我而言根本無法應用於當今快速發展、龐大的資訊工程體系,更何況在沒有每週投入 18 小時的現實情況下。
而其中最不該的就是在名為「實做」的課程僅寫出少量的程式,實在是沒有發揮這堂課該有的價值。相比於已經對相關專案甚至核心有所貢獻的同學而言,我還有很大的空間可以進步!