Re: [問題] 執行緒

看板CSSE (電腦科學及軟體工程)作者 (mick doohan)時間14年前 (2010/03/24 17:17), 編輯推噓3(309)
留言12則, 3人參與, 最新討論串2/2 (看更多)
※ 引述《snoopy0907 (超強氣)》之銘言: : 不好意思 : 請問各位前輩們 : 能否能解釋一下 : process 和 thread的差別 : 小弟我看書後還是對這兩個觀念很模糊 : 好像process有時等於thread : 有時又不一樣 : 請前輩們能指點一下嗎? : 謝謝~ thread 是 light weight process 一個process包含很多資訊, 像是程式、資料、堆疊等等. thread是一群thread共享同樣的程式與資料, 但是有自己的暫存器狀態與堆疊. 在執行緒之間切換時, 所需要的成本比較小. 不像process的context switch要存的東西比較多, 所以時間也要花比較多. 要比較特性的話, 書上就有了. 觀念上無法理解的話, 就先把thread想像成process裡面的process好了.... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.160.177.198

03/25 23:38, , 1F
最近剛上到OS 也有碰到這問題@@
03/25 23:38, 1F

03/25 23:39, , 2F
所以意思是說 一個process 是一個正在跑程式,而thread則是裡
03/25 23:39, 2F

03/25 23:39, , 3F
面正在執行的程式碼區塊?
03/25 23:39, 3F

03/25 23:40, , 4F
只是不是很懂 為什麼有些書上說process可以有一個以上thread
03/25 23:40, 4F

03/25 23:40, , 5F
也就是可以只有一個thread,不知道這樣是什麼情形?
03/25 23:40, 5F

03/26 02:34, , 6F
差別在於clone context之後,會不會給予不同的pagetable/
03/26 02:34, 6F

03/26 02:35, , 7F
file(包括socket)
03/26 02:35, 7F

03/26 02:36, , 8F
如果給了新的pagetable並且protect為read, signal handler
03/26 02:36, 8F

03/26 02:36, , 9F
為clone page with new attr,那就達成copy on write
03/26 02:36, 9F

03/26 02:37, , 10F
^ 應該說分享pagetable
03/26 02:37, 10F

03/28 00:08, , 11F
copy on write和thread是不同的概念吧@@?
03/28 00:08, 11F

03/30 02:21, , 12F
對啊 只是thread底層是用clone達成
03/30 02:21, 12F
文章代碼(AID): #1BgTYJ97 (CSSE)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
3
12
文章代碼(AID): #1BgTYJ97 (CSSE)