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

Lab10: Git, FreeRTOS

預期目標

  • 以 Git 管理與追蹤開發過程
  • 學習使用 FreeRTOS 進行系統開發,體驗 priority inversion

預先準備

自本次開始所採用的 Git repository

  • 線上瀏覽
    • https://gitcafe.com/embedded2013/Labs
  • 已取得 GitCafe Notification 告知 P-xxx 之 Git repository 後,即可著手進行開發
  • 以 “jserv” 為例:(請替換成指定的帳號)

.. code-block:: prettyprint

git clone git@gitcafe.com:embedded2013/P-jserv.git
cd P-jserv
git remote add labs https://gitcafe.com/embedded2013/Labs.git
git fetch labs
git rebase labs/master
  • 往後只要重複執行前項的後兩個指令 (git fetchgit rebase),即可取得最新的作業及參考內容

  • 將過程所需要的檔案透過 git add 指令加入到工作區,接著透過 git push 來提交修改

    • 最好事先以 git pull 確認整合伺服器端的修改
  • 確認詳加閱讀「寫給大家的 Git 教學」投影片以得知 Git 基本操作

  • 或,僅想測試 Labs 的操作 (適合在課堂 / 電腦教室的環境)

    git clone https://gitcafe.com/embedded2013/Labs.git

FreeRTOS

作業要求

  • 適度修改 Lab-10/mtask 目錄底下的檔案
  • 藉由 FreeRTOS 的 Semaphores 與 IPC 機制,模擬出 Mars Pathfinder 的 priority inversion 狀況
  • 程式碼需要提交到 Git
    • 在信件中要提及 Git repository 與簡述修改
  • 來信告知在 FreeRTOS 模擬 Mars Pathfinder 的情況

繳交作業

  • 截止日期:
    • 成大/中正: March 22, 2013 (含) 之前
  • 寄件到
    • 標題: “[NCKU/Lab10]” 開頭,後面加學號與姓名
      • 中正: 改為 “[CCU/Lab10]” 開頭
    • 格式不合者,不計分!

小提示

  • Ubuntu Linux 預設的文字編輯器為 nano,對許多習慣於 vi/vim 的使用者來說,較為不便,可透過以下指令選擇:

    sudo update-alternatives --config editor

  • 可安裝 tig,一個輕便好用的 Git client 軟體