--- tags: LINUX KERNEL, LKI --- # 「[Linux 核心設計](https://beta.hackfoldr.org/linux/)」系列講座 與其知曉 Linux 片段的資訊,不如運用 Linux 核心來做點事 -- [jserv](http://wiki.csie.ncku.edu.tw/User/jserv) :::warning :warning: 注意 - 請透過 gitter (線上對話服務,可透過 GitHub 或 Twitter 帳號登入) 提交疑問和建議事項: ==[guts-general](https://gitter.im/embedded2015/guts-general)== ::: ## 講座說明 從 Linux 核心 4.1 版開始,整個原始程式碼的規模就超越 2000 萬行,換句話說,已經沒有任何人可掌握 Linux 核心的每一行程式碼,我們也不該頻頻[舉燭](https://dict.revised.moe.edu.tw/dictView.jsp?ID=158282)地閱讀 Linux 核心程式碼,我們需要有系統的分析方法去學習並運用 Linux 核心。 > 科普短片〈[計算機科學領域地圖](https://youtu.be/SzJ46YA_RaA)〉所提及的子項目幾乎都在 Linux 核心發展歷程中現身 相關線上講座: * [你所不知道的 C 語言](https://hackmd.io/@sysprog/c-prog/) * [現代處理器設計](https://beta.hackfoldr.org/cpu/) * [手機裡頭的 ARM 處理器](https://beta.hackfoldr.org/arm/) * [作業系統概念和文藝復興](https://beta.hackfoldr.org/oscar/) ## Linux 核心設計 * [作業系統術語和概念](https://hackmd.io/@sysprog/linux-concepts) (2020.03) (2024.02) * [發展動態回顧](https://hackmd.io/@sysprog/linux-dev-review) (2020.05) (2022.06) * [透過 User-Mode Linux 建構實驗環境](https://hackmd.io/@sysprog/user-mode-linux-env) (2020.02) * [透過 eBPF 觀察作業系統行為](https://hackmd.io/s/SJTuuG9a7) (2018.11) * [賦予應用程式生命的系統呼叫](https://hackmd.io/s/HyNbWoD1V) (2018.12) * [不僅是個執行單元的 Process](https://hackmd.io/@sysprog/linux-process) (2018.12) * [不只挑選任務的排程器](https://hackmd.io/@sysprog/linux-scheduler) (2019.03) (2022.04) * [記憶體管理](https://hackmd.io/s/rJBXOchtE) (2019.04) (2019.07) * [檔案系統概念及實作手法](https://hackmd.io/s/BypqEyF6N) (2019.05) * [中斷處理和現代架構考量](https://hackmd.io/s/S1WKTCFM4) (2019.01) (2019.02) * [Timer 及其管理機制](https://hackmd.io/@sysprog/HJElbeHkr) (2019.06) * [針對事件驅動的 I/O 模型演化](https://hackmd.io/@sysprog/linux-io-model) (2022.04) * [淺談同步機制](https://hackmd.io/s/SJpp-bN0m) (2018.11) * [多核處理器和 spinlock](https://hackmd.io/s/rJbXgzz-4) (2018.12) * [RCU 同步機制](https://hackmd.io/s/H19V4eyfV) (2019.01) * [Scalability 議題](https://hackmd.io/@sysprog/HkfDtLnbH) (2019.07) * [PREEMPT_RT 作為邁向硬即時作業系統的機制](https://hackmd.io/@sysprog/preempt-rt) (2016.06) (2019.05) * [工業控制的應用:淺談即時系統](https://hackmd.io/s/rkx9Vx1lb) (2016.03)