Claims Analysis
Total Claims: 19
Claim 1
Independent Claim
166 words
Apparatus for exchanging information between a port driver operating system program and a port adapter, said apparatus comprising: (A) singly-linked queue means located in host memory for inserting and removing said information exchanged between said driver and said port adapter, said queue means having a beginning portion and an end portion and further comprising: carrier means for storing said information for exchange between said driver and said port adapter; first stopper means for referencing said end portion of said queue means and including indicator means adapted to be asserted for distinguishing said stopper means from said carrier means; and means for referencing said beginning portion of said queue means; (B) means for inserting said carrier means at said end portion of said queue means; and (C) means for removing said carrier means from said beginning portion of said queue means so that said information contained in said carrier means is exchanged between said driver and said port adapter without the use of an external synchronization mechanism.
Claim 2
Dependent Claim
166 words
Apparatus for exchanging information between a port driver operating system program and a port adapter, said apparatus comprising: (A) singly-linked queue means located in host memory for inserting and removing said information exchanged between said driver and said port adapter, said queue means having a beginning portion and an end portion and further comprising: carrier means for storing said information for exchange between said driver and said port adapter; first stopper means for referencing said end portion of said queue means and including indicator means adapted to be asserted for distinguishing said stopper means from said carrier means; and means for referencing said beginning portion of said queue means; (B) means for inserting said carrier means at said end portion of said queue means; and (C) means for removing said carrier means from said beginning portion of said queue means so that said information contained in said carrier means is exchanged between said driver and said port adapter without the use of an external synchronization mechanism.
Claim 3
Dependent Claim
40 words
The apparatus of claim 1 wherein said removing means comprises: means for examining said indicator means to distinguish said carrier means from said first stopper means; and means for retrieving said information when said indicator means identifies said carrier means.
Claim 4
Dependent Claim
25 words
The apparatus of claim 2 wherein said retrieving means comprises means for reading said information by one of said port adapter and said port driver.
Claim 5
Dependent Claim
46 words
The apparatus of claim 3 wherein said inserting means comprises: means for allocating second stopper means in said host memory; and means for transforming said first stopper means into said carrier means, such that said second stopper means identifies said end portion of said queue means.
Claim 6
Dependent Claim
48 words
The apparatus of claim 4 wherein said transforming means comprises: means for altering a forward pointer located in said first stopper means to point to said second stopper means; and means for asserting said indicator means to complete transformation of said first stopper means into said carrier means.
Claim 7
Dependent Claim
50 words
The apparatus of claim 5 wherein said altering means comprises means for writing an address of said forward pointer by one of said port adapter and said port driver; and said asserting means comprises means for writing said indicator means by one of said port adapter and said port driver.
Claim 8
Dependent Claim
16 words
The apparatus of claim 2 wherein said indicator means is also located within said carrier means.
Claim 9
Dependent Claim
276 words
In a host computer including a central processing unit (CPU), a host memory and an port adapter having a buffer memory, singly-linked queue apparatus for use in exchanging information between a port driver operating system program executed by said CPU and said port adapter, said singly-linked queue apparatus comprising: a plurality of message entries located in said host memory each including a carrier containing a valid address referencing a next one of said entries and said information for exchange between said driver and said port adapter; a queue header located in one of said host memory and said buffer memory, said queue header including a head pointer containing a valid address referencing a first one of said entries; a first stopper entry containing a first pointer having a first indicator adapted to be asserted and distinguishable from said valid addresses contained in said carriers of said plurality of message entries, said first stopper entry referenced by a valid address contained in one of a last of said carriers of said plurality of message entries and said head pointer; a second stopper entry containing a second pointer having a second indicator adapted to be asserted and distinguishable from said valid addresses contained in said carriers of said plurality of message entries; means for altering said first pointer of said first stopper entry to reference said second stopper entry; and means for asserting said first indicator to transform said first stopper entry into one of said plurality of message entries so that said information contained in said message entries are presented for exchange between said driver and said port adapter without the use of an external synchronization mechanism.
Claim 10
Dependent Claim
276 words
In a host computer including a central processing unit (CPU), a host memory and an port adapter having a buffer memory, singly-linked queue apparatus for use in exchanging information between a port driver operating system program executed by said CPU and said port adapter, said singly-linked queue apparatus comprising: a plurality of message entries located in said host memory each including a carrier containing a valid address referencing a next one of said entries and said information for exchange between said driver and said port adapter; a queue header located in one of said host memory and said buffer memory, said queue header including a head pointer containing a valid address referencing a first one of said entries; a first stopper entry containing a first pointer having a first indicator adapted to be asserted and distinguishable from said valid addresses contained in said carriers of said plurality of message entries, said first stopper entry referenced by a valid address contained in one of a last of said carriers of said plurality of message entries and said head pointer; a second stopper entry containing a second pointer having a second indicator adapted to be asserted and distinguishable from said valid addresses contained in said carriers of said plurality of message entries; means for altering said first pointer of said first stopper entry to reference said second stopper entry; and means for asserting said first indicator to transform said first stopper entry into one of said plurality of message entries so that said information contained in said message entries are presented for exchange between said driver and said port adapter without the use of an external synchronization mechanism.
Claim 11
Dependent Claim
52 words
The singly-linked queue apparatus of claim 8 wherein: said altering means comprises means for writing an address of said first pointer by one of said port adapter and said port driver; and said asserting means comprises means for writing said first indicator by one of said port adapter and said port driver.
Claim 12
Dependent Claim
45 words
The singly-linked queue apparatus of claim 9 wherein said information for exchange between said driver and said port adapter is contained in a queue buffer of each of said message entries, and wherein said carrier further contains a queue buffer pointer to said queue buffer.
Claim 13
Dependent Claim
204 words
In a host computer including a central processing unit (CPU), a host memory and an port adapter, a method for exchanging information between a port driver operating system program executed by said CPU and said port adapter, said method comprising the steps of: storing said information in message entries of a singly-linked queue for exchange between said driver and said port adapter; referencing an end of said queue with a first stopper entry characterized as an entry beyond a last of said message entries, said first stopper entry containing an invalid address; distinguishing said first stopper entry from said message entries with an indicator adapted to be asserted, said indicator located in each of said message entries and said first stopper entry; referencing a beginning of said queue, said beginning identifying an element of information in a first of said message entries to be exchanged; inserting said last of said message entries at said end of said queue referenced by said first stopper entry; and removing said first of said message entries from said beginning of said queue so that said information contained in said message entry is exchanged between said driver and said port adapter without the use of an external synchronization mechanism.
Claim 14
Dependent Claim
204 words
In a host computer including a central processing unit (CPU), a host memory and an port adapter, a method for exchanging information between a port driver operating system program executed by said CPU and said port adapter, said method comprising the steps of: storing said information in message entries of a singly-linked queue for exchange between said driver and said port adapter; referencing an end of said queue with a first stopper entry characterized as an entry beyond a last of said message entries, said first stopper entry containing an invalid address; distinguishing said first stopper entry from said message entries with an indicator adapted to be asserted, said indicator located in each of said message entries and said first stopper entry; referencing a beginning of said queue, said beginning identifying an element of information in a first of said message entries to be exchanged; inserting said last of said message entries at said end of said queue referenced by said first stopper entry; and removing said first of said message entries from said beginning of said queue so that said information contained in said message entry is exchanged between said driver and said port adapter without the use of an external synchronization mechanism.
Claim 15
Dependent Claim
45 words
The method of claim 11 wherein said step of removing further comprises the steps of: examining said indicator to distinguish said first of said message entries from said first stopper entry; and retrieving said information when said indicator identifies said first of said message entries.
Claim 16
Dependent Claim
28 words
The method of claim 12 wherein said step of retrieving further comprises the step of reading said indicator by one of said port adapter and said port driver.
Claim 17
Dependent Claim
48 words
The method of claim 13 wherein said step of inserting further comprises the steps of: allocating a second stopper entry in said host memory; and transforming said first stopper entry into another of said message entries, such that said second stopper entry identifies said end of said queue.
Claim 18
Dependent Claim
56 words
The method of claim 14 wherein said step of transforming further comprises the steps of: altering a forward pointer located in said first stopper entry to point to said second stopper entry; and asserting said indicator of said first stopper entry to complete transformation of said first stopper entry into said another of said message entries.
Claim 19
Dependent Claim
44 words
The method of claim 15 wherein said steps of altering comprises writing an address of said forward pointer by one of said port adapter and said port driver; and asserting comprises writing said indicator by one of said port adapter and said port driver.