版本 cc3f56be8dcc5c4b1facc2e9b48d41a79dc1e69d
Lab11: Build RTOS for ARM
預期目標
- 學習 ARM 系統開發
自本次開始所採用的 Git repository
- 線上瀏覽
- https://gitcafe.com/embedded2013/Labs
- 已取得
GitCafe<https://gitcafe.com>
_ Notification 告知 P-xxx 之 Git repository 後,即可著手進行開發 - 以 "
jserv</User/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 fetch
與git rebase
),即可取得最新的作業及參考內容將過程所需要的檔案透過
git add
指令加入到工作區,接著透過git push
來提交修改- 最好事先以
git pull
確認整合伺服器端的修改
- 最好事先以
僅想測試 Labs 的操作 (適合在課堂 / 電腦教室的環境)
git clone https://gitcafe.com/embedded2013/Labs.git
QEMU執行
- 編譯給定的迷你作頁系統
.. code-block:: prettyprint
make
- 安裝 QEMU ARM system emulation
.. code-block:: prettyprint
sudo apt-get install qemu-system-arm
- 啟動 QEMU
.. code-block:: prettyprint
qemu-system-arm \
-M versatilepb -cpu arm926 \
-nographic \
-kernel kernel.elf
- 離開 QEMU 模擬環境: 先按下 Ctrl-A 再按下 x
作業要求
- 適度修改 Lab-11/ 目錄,將原本單純的 ARM 多工作業系統改為支援以下:
- priority-based scheduling
- message queue
- 預期執行時期的行為應該與
Lab-9</embedded/Lab9>
_ 相同
繳交作業
- 截止日期:
- 成大/中正: Apr 8, 2013 (含) 之前