- 請在 lilina.csie.ncnu.edu.tw 的個人目錄下先建立 up5 的子目錄.
(注意大小寫). 在此目錄內置入這次作業所需檔案
若你在自己電腦上寫作業, 請在上傳後測試一遍, 程式可否執行與是否正確
由 lilina 決定.
- 作業所需檔案為:
- Makefile (請參關 make 之相關文件)
- README
- 其它 .....
- 作業說明:
與第四個作業類似, 但現在 parent 與 child 間不用建 pipe. 所有的 process 共
用一個 fifo 來傳資料. 用 signal 來完成對 fifo 的讀取順序的掌控.
要求:
- 從 argv 建立 binary tree,
- 每一個 process 印出一行 messages, 其內容與上一個作業相同.
但順序為 pre-order.
- 每個 process 印出的 order 與 bfs traversing 的順序一致.
-
注意事項:
- 前三項與第四題同, 此處不予重複.
- 請勿在 signal handler 內待太久, 如執行 while(1), fork(),.. 之類的,
最好在 signal handler 內只作簡單的變數值的變更.
- 關於 Makefile 的要求:
最少要有二個 target:
default target: 產生所有的執行檔.
clean: 清除所有的執行檔, *.o 及空檔等, 將目錄回復到只有 source 的狀態.
- 關於 README 的要求:
說明你的執行檔名字, 如何執行, 如何測試等.
- 附上我寫的 第三個作業 及
第四個作業 以供參考. 請勿照抄.
- Due day, 2004/04/28 00:05am