next up previous contents
Next: Handler in Kernel Up: Mapped Network Interface Previous: Mapped Network Interface

Handler at User Level

 

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.

  figure147
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.



Rolf Riesen
Wed Jan 22 22:24:20 MST 1997