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

版本 92a6008f9a5b88ebab4d636d5ecc8eadf4110b4b

User/yenslife

Changes from 92a6008f9a5b88ebab4d636d5ecc8eadf4110b4b to 682ab6d977136253a641dadc8b379920d2ade034

---
title: yenslife (潘駿諺)
categories: User
...

# 簡介
- 國立成功大學 資訊工程學系 114 級
- Github: [yenslife](https://github.com/yenslife)
- HackMD: [yenslife](https://hackmd.io/@yenslife)

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

## 成果發表和貢獻
- [lab0-c](https://github.com/sysprog21/lab0-c) 
  - [Check if sorting implementation is stable (commit b0aa080)](https://github.com/sysprog21/lab0-c/commit/b0aa080e0ee61b745d8b6c30711496fff2f48bce)
- 《Demystifying the Linux CPU Scheduler》修訂
  - [Add explanations related to DEFINE_SCHED_CLASS (commit 670559f)](https://github.com/sysprog21/linux-kernel-scheduler-internals/commit/670559f9c39a8bbcb02d14d71df69c115f9e20e8)
  - [Update sched_class.h for kernel v6.x (commit 5fd54f9)](https://github.com/sysprog21/linux-kernel-scheduler-internals/commit/5fd54f9375fc0c87646fb15c4362527b21c6d02c)
  - [Update task_struct state docs for kernel v6.x (commit c22f920)](https://github.com/sysprog21/linux-kernel-scheduler-internals/commit/c22f920249fc6861a6f289cc3e0cc2e299815ee1)
  - [Update task_struct.h for current Linux kernel (commit 1ff5d23)](https://github.com/sysprog21/linux-kernel-scheduler-internals/commit/1ff5d23333d02ddba80f7074dc9127ce441f0d22)
  - [Improve section Per-Entity Load Tracking (commit 9bbbffe)](https://github.com/sysprog21/linux-kernel-scheduler-internals/commit/9bbbffe24e737dc102ca23fba5d5716b6778ee25)
  - [Fix typos in scheduler.tex (commit be5a7cd)](https://github.com/sysprog21/linux-kernel-scheduler-internals/commit/be5a7cd1051a9e204e41cbf3450fd1e45df76171)

課程教材貢獻
評分: 10

TODO: 自我評分與反省
「取之於網路,回饋於網路」,深受網路開源學習資料的影響,貢獻開源專案是我參與這堂課程的目標之一,雖然沒有對 Linux 核心做出貢獻,但我在閱讀老師撰寫的教材時,除了更新過時程式碼外,也提供相對應的解釋,以及我認為對讀者更好理解的詮釋方式。在第一次作業 lab0-c 撰寫開發紀錄的時候,老師在我的筆記問我「如何確保排序的『穩定性』」,”stable” 一詞我只在過去學習演算法課程的時候把定義背下來,但我從沒想過要怎麼確保一段排序程式碼是否為穩定排序。從一開始單純在每個排序元素的成員加上編號,到現在使用陣列來紀錄節點的位址,目前的實作還有進步空間,因為固定長度的陣列沒有辦法適用於任意大小的佇列,可以利用像是 sliding window、hlist 之類的技巧來避免使用固定數值的巨集。不斷和老師討論、修改電子書或是程式碼教材的過程也讓我知道原來把小事情做到好是很重要的,光是留意細節就可以贏過許多人。我認為我在課程教材方面做了不少貢獻,第一次貢獻開源專案的經歷讓深刻的體悟,因此給自己 10 分。

## 作業/隨堂測驗共筆
- lab0-c/homework3-review: [Github](https://github.com/yenslife/lab0-c) / [HackMD](https://hackmd.io/@yenslife/linux2024-homework1)
- Homework2 (quiz1+2): [HackMD](https://hackmd.io/@yenslife/linux2024-homework2)
- Homework5 (assessment): [HackMD](https://hackmd.io/@yenslife/linux2024-homework5)

TODO: 自我評分與反省

## 期末專題

TODO: 列出專題、自我評分與反省

## 與授課教師的互動

TODO: 列出課堂討論、一對一討論、PR 互動、自我評分與反省

## 所見所聞所感

TODO: 自我評分及反思

## 自我評分

TODO: 完成上方自評後,案方案 B 計算成績
TODO: 完成上方自評後,採用方案 B 計算成績