HPlogo Interprocess Communication: Programmer's Guide: HP 3000 MPE/iX Computer Systems

Chapter 6 Software Interrupts

» 

Technical documentation

Complete book in PDF
» Feedback

 » Table of Contents

 » Index

NOWAIT I/O requires an application to "poll" to see if the requested I/O has completed. Each time the check is made, there is some overhead, whether the I/O has completed or not.

The application is faced with a difficult trade-off. The more often the application polls, the greater the overhead, and the poorer its overall performance becomes. If it polls less frequently, this increases the delay between when the I/O can complete and when the application completes it, thus reducing performance.

One solution to this dilemma is to use software interrupts. When software interrupts are enabled, MPE/iX signals the application when to complete the I/O. There is no need for repeated polling; the application completes the I/O only when signaled, so the I/O always completes on the first try.

Software interrupts are a special case of NOWAIT I/O. The difference is that MPE/iX interrupts the process when the I/O can be completed; the process does not need to poll to determine whether the I/O can be completed.

Most of the discussion about NOWAIT I/O also applies to software interrupts. Like NOWAIT I/O, a call to IOWAIT or IODONTWAIT is needed to complete an I/O request.

Feedback to webmaster