You could do worse than Mach ports

Peter da Silva peter-dragonfly at taronga.com
Fri Jul 18 18:30:29 PDT 2003



Matthew Dillon wrote:
    For system calls the foreign address space is the user process's
    address space.  User data pointers come in three forms:
    (1) They represent a file path
    (2) They represent a large block of data (e.g. the buffer in a read())
    (3) They represent a small block of data (e.g. gettimeofday()).
    (4) They represent the message itself
Question:

What component is responsible for this rewriting?

	The wrapper or other user code?
	Send() to kernel?
	The receiving system call?
	Something in between?
Could it be table-driven? If so, then the table could provide a place to 
 handle versioning...






More information about the Kernel mailing list