First page Back Continue Last page Overview Graphics
Exposing Address Spaces : Problems
Current design is wasteful
Context switching is racy if not done carefully
Interrupts must be forwarded from process to process
An address space can only be modified by a thread running inside it
The creation of so many processes is wasteful of kernel memory.
The processes consume kernel memory by requiringallocation of kernel stacks, task structs, and memory hanging off the task structure.
It also slows down searches for processes by creating so many of them.
Context switching must be done carefully in order to avoid races.
Device interrupts need to be forwarded from process to process in order to be handled correctly. This is done with fcntl(F_SETOWN).
On i386, the hardware debug registers are process-specific, and need to be updated in the incoming process.