Dynamically self-adjusting polling mechanism
First Claim
1. A system for storing messages generated in an adapter card coupled to a host computer into a disk file controlled by the host computer, comprising:
- logic resident on the adapter card for generating the messages;
a fixed-size buffer pool in the host computer for receiving and storing the messages; and
at least one processor in the host computer programmed for executing a service application in user space in the host computer to periodically poll the buffer pool, retrieve the messages from the buffer pool, and store the messages in the disk file.
8 Assignments
0 Petitions
Accused Products
Abstract
A system and method is disclosed for preventing the loss of event messages due to message buffer overruns. A fixed vendor-specific buffer pool is loaded with log messages by firmware in an adapter. A service application periodically polls a device driver for messages in the buffer pool. The device driver responds with the number of messages stored in the buffer pool and the total number of buffers in the buffer pool. The service application then issues “get next message” requests to receive the stored messages. Once the buffer pool has been emptied, the service application writes the messages to a disk file. The service application then computes a percent utilization of the buffer pool, and if the percent utilization exceeds a predetermined threshold, an algorithm is employed for increasing the polling frequency. If the percent utilization is below the threshold, an algorithm is employed for decreasing the polling frequency.
56 Citations
47 Claims
-
1. A system for storing messages generated in an adapter card coupled to a host computer into a disk file controlled by the host computer, comprising:
-
logic resident on the adapter card for generating the messages;
a fixed-size buffer pool in the host computer for receiving and storing the messages; and
at least one processor in the host computer programmed for executing a service application in user space in the host computer to periodically poll the buffer pool, retrieve the messages from the buffer pool, and store the messages in the disk file. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. In a system for temporarily storing messages into a fixed-size buffer pool and periodically polling the buffer pool to empty the buffer pool and transfer the messages to a disk file controlled by a host computer, an adapter for generating the messages and assisting in storing the messages into the buffer pool and transferring them to the disk file, comprising:
-
an adapter card couplable to the host computer, comprising logic for generating the messages, and a device driver installable into kernel space in the host computer for allocating the fixed-size buffer pool in the host computer upon initialization of the device driver and for managing a storing and retrieval of the messages into the buffer pool; and
a storage medium readable by the host computer containing a service application loadable into user space in the host computer and executable by the host computer for periodically polling the buffer pool, transferring the messages from the buffer pool and storing the messages in the disk file. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34)
-
-
35. A method for storing adapter card messages into a disk file controlled by a host computer, comprising:
-
allocating a fixed-size buffer pool in the host computer for receiving and storing the messages; and
executing a service application in user space in the host computer to periodically poll the buffer pool, retrieve and remove the messages from the buffer pool, and store the messages in the disk file. - View Dependent Claims (36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47)
-
Specification