請協助列入您想知道的 C 語言程式設計議題,儘量描述並強調工程上的考量,最好附上參考資料 (超連結、論文,和參考書目等等)。我們將會斟酌安排對應的講座。 – jserv
許願池
- 如何運用 autotools 撰寫 C library
- 使用 IACA 來分析高性能程式
Linker 的功用,還有可以調整的參數。(我只知道 stack 起始位置和大小是從 linker 設定的
詳見 連結器和執行檔資訊 和 動態連結器篇
- C 如何實作 python 等更高階語言的各種巫術
Multithreading programming: 如何避免 race condition
詳見 並行和多執行緒程式設計 系列講座
Docker 是如何在 Linux user space 中建立虛擬化容器映像的
預計在 Linux 核心設計講座探討 Docker 依賴的 namespace 機制
- Char, String, 多國語言處理
coroutine 架構在真實世界的實作技巧、真實應用。例如在 C 語言下的泛型、多型實踐,如何用來實作一個有限狀態機,處理 I/O 通訊時如何維持真 - coroutine 的實踐 …。參考資訊:jserv 的部落格
已於 goto 和流程控制篇 探討 coroutine,未來會在 並行和多執行緒程式設計 系列講座中強化
- CMake 介紹
- C 語言常用 debug 工具介紹 (e.g., gdb, valgrind…)
- C 語言 coding 安全性 (e.g., resource leak …)
- SMT solver 在 compiler, interpreter 的應用
應用: Solidity 是乙太坊(Ethereum) 基金會推出的語言,利用 z3 等 SMT-Based Model Checker 來檢查合約
- Linux kernel 中的 VMs 們, 會不會利用類似的機制來對 bytecode 做安全性檢查?
eBPF verifier
- GNU toolchain 等是否有類似機制在 compile time 做安全性檢查