MMUless Systems
On several embedded devices, there is no Memory Management Unit, which is a requirement for implementing the copy-on-write semantics prescribed by fork
. If the system has some other mechanism for per-process address spaces, such as a segment register, copying the entire process memory to the new process achieves the desired effect, however this is a costly operation and most likely unneeded given that the new process almost immediately replaces the process image in most instances.
If all processes share a single address space, then the only way fork
could be implemented would be to swap the memory pages along with the rest of the task context switch. Rather than doing that, embedded operating systems such as uClinux usually omit fork
and only implement vfork
; part of the work porting to such a platform involves rewriting code to use the latter.
Read more about this topic: Fork (operating System)
Famous quotes containing the word systems:
“People stress the violence. Thats the smallest part of it. Football is brutal only from a distance. In the middle of it theres a calm, a tranquility. The players accept pain. Theres a sense of order even at the end of a running play with bodies stewn everywhere. When the systems interlock, theres a satisfaction to the game that cant be duplicated. Theres a harmony.”
—Don Delillo (b. 1926)