作者godjoker87 (小吳君)
看板Grad-ProbAsk
標題[理工] OS PCB與TCB
時間Wed Feb 2 10:08:49 2022
如題,想問一些觀念
Kernel會幫process建立PCB
保存process state,pc,page table等資訊
但kernel也會幫助thread建立TCB
會有自己的register set,stack pointer之類的
聽起來是不是PCB的某些資訊好像沒有這麼必要(?
像是PCB的PC 因為每個thread都有自己的PC
想問PCB和TCB有哪些資訊不同
然後同一個process的不同thread會共享同一個PCB嗎?
再麻煩大神解答了 非常感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 119.14.115.27 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Grad-ProbAsk/M.1643767731.A.A89.html
1F:推 TWkobe: 怎麼會不重要,以課本的模型來說你不保留PCB那process之 02/02 12:10
2F:→ TWkobe: 間溝通要看什麼? 02/02 12:10
3F:推 b0920075: 問這種問題應該先講明要討論哪個 kernel 02/02 12:11
4F:→ godjoker87: T大 我有大概明白PCB的重要性 只是覺得某些資訊好像沒 02/02 14:20
5F:→ godjoker87: 有這麼必要(像是我前面講的pc還有reg set,stack point 02/02 14:20
6F:→ godjoker87: er之類的) 不確定是否有PCB保存一份TCB 又一份的必要 02/02 14:20
7F:→ godjoker87: 性 還是PCB沒有這些資訊是我記錯 02/02 14:20
8F:→ godjoker87: 想問b大不同kernel 是什麼意思 我的理解是kernel 就是 02/02 14:24
9F:→ godjoker87: OS 還是不同作業系統處理方式不一樣嗎? 02/02 14:24
10F:推 lienasd126: 我覺得要看是哪種模型,如果是many-to-one ,PCB還是要 02/02 14:38
11F:→ lienasd126: 保存thread之間共享的資源那些,這樣在做user thread 02/02 14:38
12F:→ lienasd126: 的切換時才能繼續上一個,我覺得是這樣 02/02 14:38
13F:推 plsmaop: Linux 的 pcb tcb 都是 task struct,tcb 就只是某些欄 02/02 20:18
14F:→ plsmaop: 位沒在用 02/02 20:18
15F:→ plsmaop: Thread 的 task struct 會用 pointer 指向 main thread 02/02 20:19
16F:→ plsmaop: 的 task struct 02/02 20:19
17F:→ godjoker87: 感謝l大及p大~~大概了解運作模式了 02/02 22:14