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

版本 634601e1d2a14c94ee557938af55be91472009ba

vacantron (陳孟鴻)

簡介

2022 Linux 核心設計 春季班 自我評量

作業共筆

修課心得

在選課的時候看到了這門特別的課 ( 課程要求:懂得 C 語言、對於作業系統、計算機結構有足夠的認識 ) ,想了一下大一時修過計算機概論應該算懂 C 語言、大二時修過計算機組織及資料結構應該勉強符合資格吧,而編譯系統及作業系統也剛好是在這學期修。事實證明,我會的那些僅只是皮毛而已,而我對於 Linux kernel 的認知如同一張白紙

第一次的作業是實作 linked list ,一開始以為是像資料結構課教得那樣的簡單的作業,後續在參閱其他同學們的作業時才發現到除了實作 linked list 外還有許多可以再深入的議題,像是如何切割串列讓 merge sort 能更有效地利用 cache 進而獲得更好的效能等。這讓我明白一個道理:如果覺得一個東西簡單,要不是已經成為大師,不然就是因為自己無知。因為我從來沒有去想過那些問題,思考範圍只停留在議題的表面,自然覺得沒有問題存在

在這門課前我沒什麼寫共筆的經驗,因為以前做筆記都是寫給自己看的所以只要自己看得懂就好,直到現在才發現原來要把自己的想法、理解統整起來,然後用通順的中文表達出來讓其他人能看懂、理解也不是一件容易的事。而課堂中的小考的模式也是以前從未體驗過的,要在時間內要抓到程式的脈絡、重點,對沒有經驗的我來說難度也不低

透過這門課程真的學到了許多新東西,若我沒有來修這門課,可能有些東西這輩子都不會有機會接觸到。而課程中大量的資料在短時間內消化不完,還需要再花更多時間整理、完善

自我評量 (1 ~ 10 分)

我給自己 7 分。

第一堂課所說的一週投入 18 小時真的遠遠不夠,光是看、理解、整理就需要耗費大量時間了,更不用提在實作過程中還會遇到各式各樣的問題待解決,在宿舍中挑燈夜讀是家常便飯。儘管從中間開始就發現自己程度太差跟不上進度,但在看完預錄影片跟共筆後多少還是能得到一些概念,後續在找參考資料時也能有個大致的方向而不至於到處撞牆