推 sdfg014025xx: 1.我有點聽不懂你的意思 pc是一直更新的,指向下一 12/06 01:38
→ sdfg014025xx: 個指令位址,所以才是pc+4 12/06 01:38
我困惑的是PC是CPU的暫存器,而PCB中存process狀態的PC欄位在running的時候會不會隨
著暫存器改
→ sdfg014025xx: 特權是I/o指令才算吧?看了老師列的特權指令test&se 12/06 01:41
→ sdfg014025xx: t也都不太相關12/06 01:41
推 b0920075: 他的意思應該是是否pcb只在switch的時候做更新吧12/06 01:41
推 b0920075: 概念怎樣不確定,但我看了linux原始碼,pcb有child pro12/06 01:46
→ b0920075: cess的pcb pointer12/06 01:46
→ b0920075: 只有pointer所以應該是未包含在裡面,但不應該說完全不12/06 01:47
→ b0920075: 知道有child process吧12/06 01:47
所以應該是pointer不是整個process所以要選錯的意思
推 eggy1018: 在fork()的時候不是就是知道child process 是誰,所以par 12/06 01:49
→ eggy1018: ent process的fork ()!=0? 12/06 01:49
fork應該只是回傳值(?
如果沒有一個變數去接那個回傳值好像也不會知道(?
※ 編輯: skyHuan (36.229.122.14), 12/06/2018 01:57:40
推 TWkobe: PC當然自己會一直改, 這是硬體就有了 12/07 20:14
→ TWkobe: 還有PCB課本上是說只有要context switch才保存 12/07 20:15
→ TWkobe: 不過我看arm硬體都有專門做context switch的暫存器了 12/07 20:16
→ TWkobe: 而linux似乎也只是修改pointer所以問題不大 12/07 20:16