Apparatus and method for managing work and completion queues using head and tail pointers

   
   

An apparatus and method for managing work and completion queues using head and tail circular pointers. With the apparatus and method, queue head and tail pointers are maintained in the channel interface and the host channel adapter. The head and tail pointers in the host channel adapter include a queue pointer table index and a queue page index for identifying a position within the queue. For work queues, the tail pointer in the channel interface is used to identify a next position where a work queue entry may be written. The head pointer in the channel interface is used only to determine whether the work queue is full or not. The head pointer in the host channel adapter is used to identify a next work queue entry for processing by the host channel adapter. The tail pointer in the host channel adapter is used by the host channel adapter to determine if the queue is empty. For completion queues, the head pointer in the channel interface is used to identify a next completion queue entry to be processed. The tail pointer in the host channel adapter is used to identify a next position in the completion queue to which the host channel adapter may post a completion queue entry.

Um instrumento e um método para controlar o trabalho e a conclusão enfileiram-se usando ponteiros da circular da cabeça e da cauda. Com o instrumento e o método, os ponteiros da cabeça da fila e da cauda são mantidos na relação de canaleta e no adaptador de canaleta do anfitrião. Os ponteiros da cabeça e da cauda no adaptador de canaleta do anfitrião incluem um índice da tabela do ponteiro da fila e um índice da página da fila para identificar uma posição dentro da fila. Para filas do trabalho, o ponteiro da cauda na relação de canaleta é usado identificar uma posição seguinte onde uma entrada da fila do trabalho possa ser escrita. O ponteiro principal na relação de canaleta é usado determinar somente se a fila do trabalho é completamente ou não. O ponteiro principal no adaptador de canaleta do anfitrião é usado identificar uma entrada seguinte da fila do trabalho para processar pelo adaptador de canaleta do anfitrião. O ponteiro da cauda no adaptador de canaleta do anfitrião está usado pelo adaptador de canaleta do anfitrião determinar se a fila estiver vazia. Para filas da conclusão, o ponteiro principal na relação de canaleta é usado identificar uma entrada seguinte da fila da conclusão a ser processada. O ponteiro da cauda no adaptador de canaleta do anfitrião é usado identificar uma posição seguinte na fila da conclusão a que o adaptador de canaleta do anfitrião pode afixar uma entrada da fila da conclusão.

 
Web www.patentalert.com

< Process cartridge

< Method and apparatus for query-specific bookmarking and data collection

> Optical waveguide element and method of fabrication thereof

> Method and apparatus for a user extensible event structure

~ 00109