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

版本 5ab4480aa965e2a2566fc99c560b34393079fdae

User/youjiaw

Changes from 5ab4480aa965e2a2566fc99c560b34393079fdae to bf5acec8b31c04afb5ba5c076b8417182c3e933c

---
title: youjiaw (王宥嘉)
categories: User
...
# 簡介
* 國立成功大學 資訊工程研究所

* GitHub: [`youjiaw`](https://github.com/youjiaw)
* HackMD: [`youjiaw`](https://hackmd.io/@youjiaw)

# Linux 核心設計/實作 (Spring 2024) 自我評量
## 貢獻課程的教材
* [並行程式設計: 實作輕量級的 Mutex Lock](https://hackmd.io/@sysprog/concurrency-mutex) 修正錯字與用詞

評分:

我給自己 8 分,剛修課時並沒有想到自己可以在哪個課程部分有所貢獻,但是在研讀教材的過程中,我就注意到了可以修正的內容,也呼應了老師多次強調的「留意各式細節」。

## 作業/隨堂測驗
* lab0-c: [GitHub](https://github.com/youjiaw/lab0-c) / [HackMD](https://hackmd.io/@youjiaw/linux2024-homework1)
* quiz1+2: [GitHub](https://github.com/youjiaw/linux2024-homework) / [HackMD](https://hackmd.io/@youjiaw/linux2024-homework2)
* quiz3+4: [HackMD](https://hackmd.io/@youjiaw/linux2024-homework4)
* assessment: [HackMD](https://hackmd.io/@youjiaw/linux2024-homework5)

評分:

我給自己 7 分,透過作業,我學到如何運用 clang-format 來確保一致的 coding style,也練習了如何寫出好的 Git commit message,培養自己的基本素養。我也使用了 Linux 核心的 List API 來實作雙向環狀鏈結串列的一系列操作,從而更好的理解開放原始碼專案的實作。

## 期末專題
* 並行化的合併排序及其改進: [HackMD](https://hackmd.io/@sysprog/B1TOj7mwR)

* 觀摩其他學員的期末專題
  * Linux 核心專題: 並行化的 Redis 實作
  * Linux 核心專題: 並行工作佇列的設計和應用
  * Linux 核心專題: 並行的環狀雙向鏈結串列
  * Linux 核心專題: 位元操作的應用
  * [Linux 核心專題: 並行化的 Redis 實作](https://hackmd.io/@sysprog/B1W2HKTER)
  * [Linux 核心專題: 位元操作的應用](https://hackmd.io/@sysprog/HyhMnoRrA)
  * [Linux 核心專題: 並行工作佇列的設計和應用](https://hackmd.io/@sysprog/r1ddDf-wR)
  * [Linux 核心專題: 並行的環狀雙向鏈結串列[(https://hackmd.io/@sysprog/rk4C6djLR)


評分:

我給自己 8 分,因為修課的學生眾多,所以老師較晚通知我題目的內容,因此在等待老師回信的期間,我先依照題目的方向找了一個上課時有提到可以改進的題目來做,隨後,我與老師確認了此題目的可行性,並加入老師要求的數學分析、實驗和討論量化結果。

## 與授課教師的互動
* 5/10 12:00 一對一討論
* 6/13 課堂問答

評分:

我給自己 9 分,在與老師討論時,我提問了對於上課內容以及課程教材的疑惑,也嘗試回答老師提出的問題,並且誠實的敘述我的學習狀況,讓老師得以指派合適的期末專題題目。在 6/13 的課程,老師剛好問到與我的專題相關的問題,由於我有按照老師討論時給我的建議,好好研讀這份教材,所以在老師點我回答的時候,我能夠正確地回應。這不僅展示了我對教材的理解,也顯示了我在學習過程中積極運用老師的反饋來提升自己。

## 所見所聞所感

評分:

我給自己 9 分,在修課的第一個月,這堂課程的難度與作業量讓我產生了自我懷疑,直到第六週,老師要求我們閱讀〈因為自動飲料機而延畢的那一年〉,其中的一句話讓我深有感觸:「要是現在就放棄的話,你這輩子日後遇到這種等級的困難,就只會想逃避而已。」這句話讓我幡然醒悟,並重新調整了自己的心態。

在這堂課中,我除了學到教材內容,也重新審視了自己的學習態度與面對困難的心態。正如老師所說的:「誠實面對自己,缺什麼就補什麼」,如果逃避,問題依然存在,努力想辦法解決問題才是正確做法。

## 每月發給實驗室指導教授的學習回顧
* 二月份學習回顧 (3/6):我認為前述多人協作的規範,對於我日後實驗室的研究工作會有所幫助,可以提升實驗室成員與我的開發透明度,同時建立更有效的溝通。
* 三月份學習回顧 (4/12):課程內容涉及到了大量的數學分析,像是如何用統計方法驗證 shuffle 產生出來的亂數有一定程度的亂度?以及,如何確認目前的測試程式已涵蓋排序演算法的最差狀況?此類議題讓我更理解理論和實務是一體兩面,也印證了王老師平時指導實驗室成員時強調的基礎科目的重要性。
* 五月份學習回顧 (6/18):在與黃敬群老師的一對一討論中,我提出了一些對課程的疑惑。老師在回答的過程中,也向我提問了許多相關議題,讓我意識到自己在基礎知識方面還有許多不足之處,例如 branchless code 與 hazard 之間的關係。

評分:

我給自己 9 分,我在信中整理和分析了自己的學習進度和所見所聞,並提出修課感想,這些都獲得了指導教授的肯定,也在一次實驗室會議中稱讚我的學習回顧內容。

## 自我評量 (1 ~ 10)
* GEOMEAN:$\sqrt[6]{8*7*8*9*9*9}=8.29$
* 方案 B:$1+\lfloor 8.29 \rfloor=9$