| CPC G06F 13/16 (2013.01) [G06F 2213/16 (2013.01)] | 20 Claims |

|
1. A method of processing input/output (IO) between system software executing in a computer and a storage device, comprising:
sending, from the system software, IO commands to the storage device;
handling, by the system software, IO completion messages from the storage device; in an interrupt mode;
determining, while processing the IO commands, a first value for a measure of IO operations per second (IOPs) of the storage device;
determining, by a device driver of the system software, that a first condition is met, the first condition being that the measure of IOPs satisfies a threshold for enabling a polling mode;
determining, by the device driver, that a second condition is met, the second condition being that a timer, which was previously started in the interrupt mode, has not expired; and
maintaining, by the device driver, the interrupt mode in response to the second condition despite the first condition.
|