Figure 2.4 shows the flow of execution under these circumstances. While polling the network interface on an architecture that allows user access to the interface is the simplest way to low latency, we assume that an incoming message interrupts the currently running process. This interrupt is necessary to guarantee response time and corresponds to the two other architectures described in this section.

Figure 2.4: Mapped Network Interface: An arriving message
interrupts the currently running application to activate
the handler. The handler can receive and send messages
without trapping into the kernel. A single trap is
necessary at the completion of the handler to return
execution control to the interrupted application.
An incoming message interrupts the currently running process. The kernel invokes a generic handler that reads the message into a buffer. The handler runs in non-privileged mode and accesses the network interface directly. Depending on the message content, the generic handler then calls the appropriate specific handler. This is a simple function call and does not require the saving and restoring of a context.
The handler is the same as in the previous examples, except that no traps into the kernel are necessary to send messages. A single trap at the end is needed to restore the originally running process.