0
我正在瀏覽這個問題,並決定自己實施這個程序。我STRACE輸出的澄清
Interpreting STRACE output - pipes and forks
的strace的輸出是不同的:
execve("./fork", ["./fork"], [/* 61 vars */]) = 0
arch_prctl(ARCH_SET_FS, 0x173f880) = 0
pipe([3, 4]) = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x173fb50) = 2968
execve("/usr/bin/wc", ["wc", "-l"], [/* 61 vars */]) = 0
arch_prctl(ARCH_SET_FS, 0x7f4a4738e740) = 0
Process 2968 attached
[pid 2968] execve("/bin/ls", ["ls"], [/* 61 vars */]) = 0
[pid 2968] arch_prctl(ARCH_SET_FS, 0x7f1954bd0840) = 0
[pid 2968] exit_group(0) = ?
5
[pid 2967] exit_group(0) = ?
[pid 2967] +++ exited with 0 +++
+++ exited with 0 +++
你能解釋這是爲什麼輸出不同?它是否做同樣的事情?
非常感謝。