Attribute | fork | thread | clone | execve |
Virtual Memory | ||||
---|---|---|---|---|
Code Segment | copy | shared | CLONE_VM | replaced |
Const Data Segment | don't care | shared | CLONE_VM | replaced |
Variable Data Segment | copy | shared | CLONE_VM | replaced |
stack | copy | separate | CLONE_VM | replaced |
mmap | copy | shared | CLONE_VM | replaced |
brk | copy | shared | CLONE_VM | replaced |
command line | copy | shared | CLONE_VM | replaced |
environment | copy | shared | CLONE_VM | replaced |
Files | ||||
chroot, chdir, umask | copy | shared | CLONE_FS | copy |
File descriptor table | copy | shared | CLONE_FILES | copy |
file locks | separate | separate | CLONE_PID | same |
Signals | ||||
Signal Handlers | copy | shared | CLONE_SIGHAND | reset |
Pending Signals | separate | separate | separate | reset |
Signal masks | separate | separate | separate | reset |
Process Id | different | different | CLONE_PID | same |
timeslice | separate | shared | CLONE_PID | same |
2006-03-17