1).先執行rm menu -rf,強制刪除原有的menu文件夾,使用git命令更新menu代碼至最新版
git
2).test.c中main函數裏,增長MenuConfig()
函數
3).增長對應的兩個函數,Getpid和GetpidAsm
3d
4).make rootfs
輸入help,能夠看到當前的系統調用:調試
5).rest
成功。blog
c運行以後,在MenuOs裏使用time,能夠看到它停了下來
list能夠查看內部的函數,直到sys_time返回後進入彙編代碼處理,gdb沒法繼續進行追蹤
ip
3、對系統調用處理過程的理解get
1.用戶態到內核態須要int 0x80進行中斷,只有生成了中斷向量後才能夠切換狀態;it
2.中斷處理讓CPU中止當前工做轉爲執行系統內核中預設的一些任務,所以必需要對當前CPU執行的任務進行執行現場的保護工做,並對一些其餘雜七雜八的工做進行檢查,完成調用後,再進行檢查,才能執行iret返回。io