目的: 檢驗學員對 concurrency 的認知
作答表單: 測驗 1 (針對 Linux 核心「設計」課程)
1
task 是個運用 coroutine 實作的任務排程器,允許搭配 POSIX Thread 使用,使用 C11 Atomics 和 x86-64 組合語言開發。
編譯方式:
$ gcc -O2 -Wall -Wextra -std=gnu11 \
-o test_task \
test_task.c task.c \
-lpthread
參考執行輸出:
test_task_start
test_task_sleep
test_task_pause
test_task_exit
test_task_order
test_task_detach
預期不會觸發任何 assert。
作答規範:
true
或 false
指令集是 CPU 指令所組成的集合,可極縮至一指令 (OISC) 並達成圖靈完備,已用於同態加密晶片、可堆疊 FPGA 多核處理器,及經微碼擴充到 RISC-V 且通過形式化驗證的實作。NISC 與 ZISC 分別靠編譯器靜態排程與硬體向量比對取代指令解碼,換得低功耗與高吞吐;近期研究亦將單指令 FLEQ 硬編碼於迴圈 Transformer,顯示深度模型可直接充任通用運算主體。極簡控制邏輯正成為雲端隱私運算與專用加速器的技術選項。
Jun 5, 2025本文探討 spinlock 本身的效能和可擴展能力 (scalability) 議題
Jun 4, 2025本講座則是專注於作業系統領域,同時,"Microkernel" 也不全然指其 "micro" 微小之意,而且是探討相對於傳統 Monolithic kernel 的 Microkernel
Jun 3, 2025解說錄影: Part 1 / Part 2 / Part 3 / Part 4 / Part 5/ Part 6 / Part 7
May 30, 2025or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up