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

版本 b2521c194b2897b5d74af67605a9bd4bdca6a1fb

2016q1 Homework #4

預期目標

注意: Homework 4 包含 2 部份,請詳細閱讀

作業要求 (A)

  • 在 4 月 17 日前,閱讀指定材料的 2 分之 1 以上,並在「作業區」記錄學習心得和疑惑,涵蓋以下主題:
    • 計算機組織結構
    • ARM 處理器架構
    • 系統程式概念
    • C 語言程式設計
  • 建議花 4 個整天來進行
  • 示範用的 Hackpad 頁面 (請勿直接編輯,而是建立新的 Hackpad 頁面)
    • 提及參考資料的標題和超連結
    • 提問要標注頁碼,最好附上原本的敘述
    • 本作業非常重要,授課教師會斟酌回覆你的提問

計算機組織結構

ARM 處理器架構

系統程式概念

C 語言程式設計

作業要求 (B)

  • 快速複習 POSIX Thread Tutorial,並研究 C-Thread-Pool 的實做
    • 記得一併學習 C-Thread-Pool 提供的 test suite
  • 以 lock-free thread pool 改寫 Homework 3 裡頭的 server-framework,並且證實效能的改善
  • 指出 server-framework 實做內部對於 semaphore, mutex, condition variables 的調整,並且要指出調整同步處理機制後,對效能的改善
  • 自 server-framework 抽出關鍵程式碼,建立 新的 Git repository,確保有一致的功能,然後重新測試效能
  • 在 4 月 11 日前完成,並將開發紀錄詳實更新於 Homework 3 的作業區
    • 不需要建立新的 hackpad
    • 直接在 Homework 3 裡頭 fork 出來的 server-framework 中修改程式碼,若建立新的 git repository,則務必在共筆提及