摘要 |
A method and apparatus for data transfer completion notification to a processor is presented. Input/output (I/O) devices individually or severally have associated with them command linked lists, located in system memory. In each command linked list a processor or memory controller has placed command elements. A subset of the command elements includes elements that are specifically to be used to report status of data transfers. Each command element in this subset of command elements includes a pointer which points to a status entry. Status entries, when updated by an I/O device, are placed in a status linked list also located in memory. An I/O device may have its own linked list or may share a single status linked list with several other devices. Status entries contain status information on transfers between an I/O device and memory locations. The insertion of status entries into a status linked list is done by hardware in an indivisible series of operations. Depending upon implementation, the hardware may then give asynchronous notification to the processor that a new element has been added to the second linked list. This notification will cause an interrupt to the currently running process in the processor. |