# 學歷 * 成功大學 資訊工程系111級 # 聯絡資訊 github: [hankluo6](https://github.com/hankluo6) email: ```hankluo6@gmail.com``` # 2020 秋季班 個人評量 ### 作業 Lab * Homework 1: [lab0](https://hackmd.io/@hankluo6/lab0), [quiz1](https://hackmd.io/@hankluo6/quiz1) * Homework 2: [quiz2](https://hackmd.io/@hankluo6/quiz2) * Homework 3: [dict](https://hackmd.io/@hankluo6/dict), [quiz3](https://hackmd.io/@hankluo6/quiz3) * Homework 4: [quiz4](https://hackmd.io/@hankluo6/quiz4) * Homework 5: [render](https://hackmd.io/@hankluo6/render), [quiz5](https://hackmd.io/@hankluo6/quiz5) * Homework 6: [quiz6](https://hackmd.io/@hankluo6/quiz6) ### 期末專題 * Java 虛擬機器: [開發紀錄](https://hackmd.io/@hankluo6/pitifulVM) / [Github](https://github.com/hankluo6/pitifulvm) ### 心得 剛上大學就有聽過老師這堂課很硬,想說等之後基礎能力熟了再來修老師的課比較不吃力,修課之後才發現我錯了,前兩年所學的內容遠遠不足,個人認為這學期學到的知識量比我上大學以來學的還要多。覺得老師上課的模式很適合我,不像其他教授一樣上課只教書本的內容,考試只考書本的內容,那些教授覺得沒用的部分、或研究所不考的部分就跳過,但這堂課主要都是給你個方向,想知道的知識就自己去查,讓我在這堂課收穫非常多。我是在跟老師一對一討論的時候,提到以前教授沒有教過所以不會,被老師念說不懂應該要自己去查而不是怪以前沒學過,我才知道我以前的學習模式都是錯的,我認為,不應該是為了成績而唸書,而是為了自己在念書。 ### 自我評量 (1-10) 10 分,對於自己的目標都有達到,作業也都盡量趕出來,雖然還有很多地方要改進,但覺得這學期有盡力完成所有要求。 # 2021 春季班 個人評量 ### 作業 Lab * Homework 1: [lab0](https://hackmd.io/@hankluo6/2021q1-lab0), [quiz1](https://hackmd.io/@hankluo6/2021q1quiz1) * Homework 2: [quiz2](https://hackmd.io/@hankluo6/2021q1quiz2) * Homework 3: [fibdrv](https://hackmd.io/@hankluo6/fibdrv), [quiz3](https://hackmd.io/@hankluo6/2021q1quiz3) * Homework 4: [quiz4](https://hackmd.io/@hankluo6/2021q1quiz4) * Homework 5: [sort](https://hackmd.io/@hankluo6/2021q5sort), [quiz5](https://hackmd.io/@hankluo6/2021quiz5) ### 期末專題 * mimalloc: [原始碼分析](https://hackmd.io/@hankluo6/mimalloc_source) / [開發紀錄](https://hackmd.io/@hankluo6/mimalloc) / [Github](https://github.com/hankluo6/mimalloc) ### 心得 因為是第二次修課,所以不像上學期一樣需要花大量時間去看課程影片,花了更多時間在寫作業。另外也學到了關於 Lock-free, Atomic, Cache Coherence 這些上學期比較沒涉略到的議題。上完課才發現這些與恐龍書的內容相差甚大,像是 memory barrier 這些恐龍書好像都沒有提到?以前 OS 學的東西跟 Linux 內部的機制幾乎都不一樣。另外也經歷到自己發 PR 到 open source 的過程,讓其他人使用自己寫的程式碼這種成就感是以前單純寫程式交作業無法體會的。 ### 自我評量 (1-10) 10 分,雖然這學期有專題還有許多面試,但每周都有強迫抽出一部分時間完成作業 # 2022 春季班 個人評量 ### 作業 Lab * Homework 1: [lab0](https://hackmd.io/@hankluo6/2022q1-lab0), [quiz1](https://hackmd.io/@hankluo6/2022quiz1) * Homework 2: [quiz2](https://hackmd.io/@hankluo6/linux2022-quiz2) * Homework 3: [quiz3](https://hackmd.io/@hankluo6/2022q1-quiz3) * Homework 4: [quiz4](https://hackmd.io/@hankluo6/2022q1-quiz4) * Homework 5: [quiz5](https://hackmd.io/@hankluo6/2022q1quiz5), [quiz5](https://hackmd.io/@hankluo6/2022q1quiz6), [quiz5](https://hackmd.io/@hankluo6/2022q1quiz8) * Homework 6: [ktcp](https://hackmd.io/@hankluo6/linux2022-ktcp) ### 期末專題 * mimalloc v.s tcmalloc: [報告](https://hackmd.io/@hankluo6/allocator) 1. 第一次討論 (5/27) 討論 mimalloc 以及 rseq 的可能性 2. 第二次討論 (6/20) 討論 rseq 在 tcmalloc 上效能提升的原因 ### 心得 這學期已經是第三次修課,但在做作業時還是有很多 linux kernel 的行為不懂,很多需要額外補齊的知識。與之前不同的是,這學期接觸更多與網路相關 (ktcp, thttpd) 和 concurrency 在其的應用。另外把之前一直裝不起來的 tcmalloc 重新安裝,花了很多時間理解 bazel 的運作原理及 tcmalloc 的編譯方式,成功在我的電腦上安裝,並能改變各種組態。最後也測試 per-cpu 及 per-thread 的差異。算是把去年未完成的部分完成。 ### 自我評量 (1-10) 9 分,這學期時間比較少,只能勉強把作業及專題做完,沒能更深入的探討一些細節比較可惜