# HenryChaing (江冠霆) ## 簡介 * 成功大學 工程科學研究所 114 級(2023-2025) * Github : [`HenryChaing`](https://github.com/HenryChaing) * HackMD : [`Henry0922`](https://hackmd.io/@Henry0922) ## 投入專案 * rv32emu : [`rv32emu - HenryChaing`](https://github.com/HenryChaing/rv32emu) ## 2024 Linux 核心實作 春季班 自我評量 ### 作業共筆 * `lab0-c` : [Github](https://github.com/HenryChaing/lab0-c) / [HackMD](https://hackmd.io/@Henry0922/linux2024-homework1) * `concurrent-programs` : [Github](https://github.com/HenryChaing/lab0-c/tree/ttt) / [HackMD](https://hackmd.io/@Henry0922/linux2024-homework1#井字遊戲) * `assessment` : [HackMD](https://hackmd.io/@Henry0922/linux2024-homework5) * `kernel module - simrupt` : [Github](https://github.com/HenryChaing/simrupt) / [HackMD](https://hackmd.io/@Henry0922/linux2024-homework6) ### 測驗檢討 * `quiz 1+2` : [Github](https://github.com/HenryChaing/quiz1-2) / [HackMD](https://hackmd.io/@Henry0922/linux2024-homework2) * `quiz 3+4` : [Github](https://github.com/HenryChaing/quiz3-4) / [HackMD](https://hackmd.io/@Henry0922/linux2024-homework4) ### 期末專題 * `RPMsg , ADB 在 milkv-duo 實作` : [HackMD](https://hackmd.io/@Henry0922/linux2024-final) ### 修課心得 PS: 7/2 後補齊。 ### 自我評量 我給自己 10 分。 首先是[作業](https://wiki.csie.ncku.edu.tw/User/HenryChaing#%E4%BD%9C%E6%A5%AD%E5%85%B1%E7%AD%86)的部份,雖然並未達成全部老師的要求,但是我認為不論是我投入的時間或是產出都有達到一定的要求,因此會在這點自評高分。再來是上課與老師的互動,主要是針對測驗題目以及期末專題進行討論,測驗檢討雖然上課當下一知半解,但是在經過與老師的互動下有了表現自己的機會(雖然還是不盡人意),最後課堂結束也有機會好好再研究題目,甚至將其改寫成不同版本但原理相同的程式, 也謝謝老師還有批改課後我所加上的紀錄。 [期末專題](https://hackmd.io/@Henry0922/linux2024-final),我認為我有很多需要檢討的地方,也就是產出有限的原因。我列了兩項我歸納出來的原因: 其一是我對這個專題內容欠缺熟稔度,我這兩個月有將近大半的時間是在摸索這個嵌入式領域的基礎知識,包括 交叉編譯、buildroot 以及 Linux 核心概念。其二是缺乏教材引導, 大部分能突破瓶頸的原因是因為有老師的引導,比如我投入了整整一個月的 ADB (android debug bridge) 建立,是最後一個禮拜我打掉重練並且在有老師予以協助的情況下才得以過關斬將完成這個里程碑,雖然也有前三個禮拜培養出的基礎知識助陣, 但是真正完成這項任務的原因是有老師引導方向, 不然再花上一個月或許也不意外。最後 ADB 我有整理成 HackMD [`文章`](https://hackmd.io/@Henry0922/milkv-adb)給各位參考。 接著是描述所見所聞所感,在經過這個學期的磨練後,我從每週測驗發現到了我對 C 語言還有許多需要改進的地方,包含程式碼理解速度, 以及對底層 C 語言的缺乏接觸。但是如此還是從每次作業獲得了不少成就感,至少體會到了大學四年所學以及程式能力依舊具備,並且能產出有趣的作品。再來呼應到 〈因為自動飲料機而延畢的那一年〉,我認為有兩個課題值得我省思,首先是作者文章開頭提到的鋼之鍊金術師 「等價交換法則」,接著是產品實作的困難這個理念。 最後針對幾個自評項目回覆,首先是貢獻[課程教材](https://hackmd.io/@sysprog/linux2024-integration/%2F%40sysprog%2Flinux2024-integration-c)的部份, 再來是我在 3/5 以及 4/10 有寄出二及三月的課程回顧,其中二月回顧中講述到了 「學習到嵌入式常用到的除錯工具包含 Address Sanitizer , Valgrind」 ,而三月提及了 「更改 stdio 的 flag 來進到 RAW mode,並且使用 Linux 中的跳脫字元對終端機的介面進行調整,達到終端機可以不斷刷新當前時間所在的列更新時間。」 。