Methods and apparatus for managing a buffer of events in the background
First Claim
1. A background event buffer manager (BEBM) for ordering and accounting for events in a data processing system having a processor, the BEBM comprising:
- a port for receiving event identifications (IDs) from a device;
a queuing function enabled for queuing event IDs received; and
a notification function for notifying the processor of queued event IDs;
wherein the BEBM handles ordering and accounting for the processor;
wherein the queuing function queues event IDs by type, and by event priority within type queues, and also associates an acknowledgment (ack) with each event; and
wherein the ack has multiple states, and acks for events first queued are set in a processor unaware state.
7 Assignments
0 Petitions
Accused Products
Abstract
A background event buffer manager (BEBM) for ordering and accounting for events in a data processing system having a processor includes a port for receiving event identifications (IDs) from a device, a queuing function enabled for queuing event IDs received, and a notification function for notifying the processor of queued event IDs. The BEBM handles all event ordering and accounting for the processor. The BEBM in preferred embodiments queues events by type with priority and by priority within type, and also handles sending acknowledgement to the device when processing on each event is concluded, and buffers the acknowledgement process. In particular embodiments the apparatus and method is taught as a packet processing router engine.
145 Citations
24 Claims
-
1. A background event buffer manager (BEBM) for ordering and accounting for events in a data processing system having a processor, the BEBM comprising:
-
a port for receiving event identifications (IDs) from a device; a queuing function enabled for queuing event IDs received; and a notification function for notifying the processor of queued event IDs;
wherein the BEBM handles ordering and accounting for the processor;wherein the queuing function queues event IDs by type, and by event priority within type queues, and also associates an acknowledgment (ack) with each event; and wherein the ack has multiple states, and acks for events first queued are set in a processor unaware state. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A data processing system, comprising:
-
a processor; a memory coupled to the processor; and a background event buffer manager BEBM coupled to the processor, the BEBM including a port for receiving event identifications (IDs) from a device, a queuing function enabled for queuing event IDs received, and a notification function for notifying the processor of queued event IDs; wherein the BEBM handles event ordering and accounting for the processors wherein the queuing function queues event IDs by type, and by even priority within type queues, and also associates an acknowledgement (ack) with each event; and wherein the ack has multiple states, and acks for events first queued are set in a processor unaware state. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A network packet router, comprising:
-
an input/output (I/O) device for receiving and sending packets on the network; a processor; a memory coupled to the processor; and a background event buffer manager BEBM coupled to the processor, the BEBM including a port for receiving event identifications (IDs) of arriving packets from the I/O device, a queuing function enabled for queuing event identifications IDs received, and a notification function for notifying the processor of queued event identifications IDs for processing; wherein the BEBM handles event ordering and account for the processors; wherein the queuing function queues event IDs by type, and by event priority within type queues, and also associates an acknowledgement (ack) with each event; and wherein the ack has multiple states, and acks for events first queued are set in a processor unaware state. - View Dependent Claims (14, 15, 16, 17, 18)
-
-
19. A method for ordering and accounting for events in a data processing system having a processor, the method comprising steps of:
-
(a) generating event identifications (IDs) by a device; (b) sending the event IDs to a background event buffering manager (BEBM) by the device; (c) queuing event IDs received by the BEBM; and (d) notifying the processor by the BEBM of events queued for processing, such that the BEBM handles all event ordering and accounting for the processors; wherein, in step (c), event IDs are queued by type, and by event priority within type queues, and an acknowledgement (ack) is associated with each event; and wherein in step (c), event IDs are queued by type, and by event priority within type queues, and an acknowledgement (ack) is associated with each event. - View Dependent Claims (20, 21, 22, 23, 24)
-
Specification