Shared memory ipc for drivers and system servers
(assigned to Jozef Svec)
Drivers and system processes like inet or vfs copy large chunks of data, e.g. network packets, disk blocks etc. As no process can access address space of another process, the kernel makes the copies for the processes. Current version of Minix contains an ipc server which makes shared memory possible. The goal of this project would be to change the drivers and servers to use the shared memory. This change would have a severe impication for the network drivers. On one hand it would be possible to have a faster communication between drivers and inet. On the other hand it violates the assumption that a faulty network driver can be easily restarted as the shared memory has to be set up correctly for the replacement driver. Also inet must not be corrupted by accessing the memory of the faulty driver while it's being replaced. Therefore a well designed solution is required.