# 2017 年春季作業說明 ###### tags: `sysprog2017` :::info :mega: 本頁為開設於台南成功大學資訊工程系的「[嵌入式作業系統設計與實作](http://wiki.csie.ncku.edu.tw/sysprog/schedule)」課程作業的注意須知,請詳閱。 ::: ## 共筆和繳交方式 本課程使用 [HackMD](https://hackmd.io/) 來輔助教學,所有的作業也一併使用該系統來追蹤和紀錄 - 新手教學影片: [從無到有學習HackMD](https://www.youtube.com/watch?v=r5FOR-YU33c) - 開發過程很重要,我們不接受「突然生出進度」這種事 ## 標注須知 下方只要是 `$` 開頭,就表示在 GNU/Linux 的終端機裡面輸入的指令,比方說 `$ sudo apt-get update`,就表示要輸入 `sudo apt-get update`。 ## 預先準備動作 * 安裝 GNU/Linux,建議安裝 [Lubuntu](http://lubuntu.net/) 16.10 (注意: 應安裝 64-bit 版本) * 注意: 不要透過虛擬機器,而是用==多重開機==直接裝在==實體機器==的硬碟中,記得先切割好硬碟 * 新手教學影片: [輕鬆學會 Windows / Ubuntu 雙系統安裝](https://www.youtube.com/watch?v=rjpBTT6AmeU) * 安裝相關開發工具 * [gnuplot 語法解說和示範](https://hackmd.io/s/Skwp-alOg#) ``` $ sudo apt-get update $ sudo apt-get install build-essential $ sudo apt-get install linux-tools-common linux-tools-generic $ sudo apt-get install cppcheck astyle colordiff gnuplot ``` * 關於 GNU/Linux 指令,請參閱 [鳥哥的 Linux 私房菜](http://linux.vbird.org/) * 本系列課程全程使用 GNU/Linux,全世界有十幾億台裝置內建 Linux 系統,學習 Linux 是相當划算的投資! * 新手教學影片: [快快樂樂學 Vim](https://www.youtube.com/watch?v=1MtQoKP_uxU) * [終端機和 Vim 設定](https://hackmd.io/s/HJv9naEwl) * [vim 命令圖解](http://blog.vgod.tw/wp-content/uploads/2009/12/vgod-vim-cheat-sheet-full.pdf) * [Trace C 程式碼的 vim 設定](http://wen00072.github.io/blog/2016/11/26/vim-setup-for-trace-c-code/) * [熟悉 Git 和 GitHub 操作](http://wiki.csie.ncku.edu.tw/github) * 在 `~/.bashrc` 最後一行加入 `export EDITOR=vim`,就可以指定 git commit 時呼叫 vim 來編輯訊息 * [30 天精通 Git 版本控管](https://github.com/doggy8088/Learn-Git-in-30-days) * [Learn Git Branching](http://learngitbranching.js.org/) 可線上練習 git 命令,右側直接反應出目前 branch 的模樣。多試幾次就會熟悉較進階的 git 命令。網頁介面提供中文版,用右下角的地球圖示即可切換語言 * [Makefile 語法和示範](https://hackmd.io/s/SySTMXPvl#) * 沒有特別聲明的話,原始程式碼==應採用 [K&R style](https://en.wikipedia.org/wiki/Indent_style#K.26R_style)==,我們會透過 [Git Hooks](https://git-scm.com/docs/githooks) 強制要求保持一致的程式開發風格 * 參考資訊: [Recommended C Style and Coding Standards](http://ieng9.ucsd.edu/~cs30x/indhill-cstyle.html) * ==不用 Tab,而是 4 個空白==來進行縮排 * astyle 工具可進行程式排版,透過 Git hook 自動套用 K&R style 到程式碼:  ## 作業的範疇 每份作業的繳交分成 2 部份: * GitHub 上的程式碼,公開存取,而且要有完整的開發紀錄 * HackMD 上的「開發紀錄」:公開給大家指教 (需要設定為 Editable) 以上都該在指定的截止時間前完成,不接受補交。 ## 參考和抄襲 * 我們鼓勵學生多方參考各種材料,除了第一手資料以外,也包含其他同學的共筆 * 作業的開發紀錄和程式如果引用到參考資料時,務必指出來,特別是其他同學的共筆,除了給予 credit 外,還要附上充分的超連結資訊 * 無法認定出處的「參考」,則視同為「抄襲」,授課教師會斟酌給予學生澄清的機會
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.