[問題] fork() & exec() 的疑問
fork()跟exec()剛看書看到這段有點不太懂
書上的意思是若fork()後緊接著執行exec()
則不需要複製全部的thread,只需複製(duplicate)呼叫fork的thread
因為執行exec後會把複製的process取代掉
(這邊不太懂,為啥exec()會取代掉複製後的thread?複製後不就是要執行嗎?)
若fork()後沒有exec()
則會複製整個process的全部threads
(複製出來的process是會?1.執行 2.暫停,等待user下指令讓他執行)
查了網路上的一些說明,但都不是很詳細,跟書上的解釋差不多
所以上來請教各位
先謝謝了
--
推
03/23 22:08,
03/23 22:08
→
03/23 22:08,
03/23 22:08
→
03/23 22:08,
03/23 22:08
→
03/23 22:16,
03/23 22:16
→
03/23 22:17,
03/23 22:17
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.134.48.111
→
07/01 23:07, , 1F
07/01 23:07, 1F
→
07/01 23:08, , 2F
07/01 23:08, 2F
→
07/01 23:09, , 3F
07/01 23:09, 3F
→
07/01 23:09, , 4F
07/01 23:09, 4F
抱歉真的不熟,課本上也未對exec()多做解釋
那請問exec()要傳入什麼參數嗎?或是後面要接什麼指令
不然某個thread呼叫fork()及exec()後,要怎麼知道新process是執行哪個程式?
※ 編輯: fenir 來自: 220.134.48.111 (07/02 11:49)
推
07/03 10:29, , 5F
07/03 10:29, 5F
→
07/03 10:30, , 6F
07/03 10:30, 6F
→
07/03 12:49, , 7F
07/03 12:49, 7F
推
07/05 00:18, , 8F
07/05 00:18, 8F
→
07/05 00:18, , 9F
07/05 00:18, 9F
→
07/05 00:22, , 10F
07/05 00:22, 10F