組長:B10413040 張靜馨
github: https://github.com/AlexMeow/xv6-public
開機後直接輸入date即可開始。

開機後直接輸入shutdown即可開始。

如下圖,
輸入date之後得到CST時間(原本預計要用UTC,但總覺得太不直覺了,最後改成UTC+8的CST);
輸入shutdown之後關閉xv6。

syscll.h:

syscll.c:

user.h:

usys.S:

defs.h:


date.h:

date.c:
(輸出格式仿照linux的date指令)

shutdown.c:

原本是打算在做完這兩個功能之後,再繼續增加更多功能,
例如reboot──本來想說都做了關機那就順便做個重開機吧,結果我到最後還是想不到要怎麼實作;上網也查不到相關參考資料,只好放棄。
也曾經打算增加一些排程、記憶體管理相關的system call,無奈我的能力不夠,來不及在死線之前看懂這部分的參考資料並實作。
不論如何我最後至少完成了原先寫在構想書裡的這兩個指令,
看到時間被正確的print出來的瞬間感動到想哭,感恩讚嘆xv6內建的cmostime函式。
參考資料:
https://pdos.csail.mit.edu/6.828/2017/homework/xv6-syscall.html
https://pdos.csail.mit.edu/6.828/2012/homework/xv6-syscall.html
http://web.cecs.pdx.edu/~markem/CS333/projects/p1
https://www.youtube.com/watch?v=6zAHUcEt-QQ
B10413040 張靜馨:寫構想書、system call實作、測試整合
(只有我一個人,搭啦!)