Claims Analysis
Total Claims: 27
Claim 1
Independent Claim
312 words
In a computer system comprising a host computer coupled to an intelligent controller, said host computer including a virtual memory, said virtual memory including an I/O segment, a method for transferring data between a plurality of tasks being executed in the host computer and a corresponding plurality of tasks being executed in the controller, each pair of corresponding tasks in the host computer and the controller having a logical connection therebetween, said method comprising the steps of: said host computer allocating to each connection one or more memory buffers for holding said data; said host computer providing for each connection an output queue for queueing descriptions of output buffers containing data ready for transfer from the host computer to the controller; said host computer providing for each connection a buffer queue for queueing descriptions of input buffers available for transfer of data from the controller to the host computer; for each host computer task having data for transfer to said controller, said host computer writing the data to a selected output buffer, writing a description of the selected output buffer on the associated output queue, and notifying the controller of activity on the associated output queue; for each controller task having data for transfer to said host computer, said controller reading a description of a selected input buffer from the associated buffer queue; for each data transfer, said controller forwarding the description of the selected output buffer or the selected input buffer from the controller to the host computer; for each data transfer, said host computer mapping the selected output buffer or the selected input buffer to the I/O segment of virtual memory; said controller reading the selected output buffer through said I/O segment; and said controller writing to the selected input buffer through said I/O segment and notifying the associated task that data has been written in the selected input buffer.
Claim 2
Dependent Claim
312 words
In a computer system comprising a host computer coupled to an intelligent controller, said host computer including a virtual memory, said virtual memory including an I/O segment, a method for transferring data between a plurality of tasks being executed in the host computer and a corresponding plurality of tasks being executed in the controller, each pair of corresponding tasks in the host computer and the controller having a logical connection therebetween, said method comprising the steps of: said host computer allocating to each connection one or more memory buffers for holding said data; said host computer providing for each connection an output queue for queueing descriptions of output buffers containing data ready for transfer from the host computer to the controller; said host computer providing for each connection a buffer queue for queueing descriptions of input buffers available for transfer of data from the controller to the host computer; for each host computer task having data for transfer to said controller, said host computer writing the data to a selected output buffer, writing a description of the selected output buffer on the associated output queue, and notifying the controller of activity on the associated output queue; for each controller task having data for transfer to said host computer, said controller reading a description of a selected input buffer from the associated buffer queue; for each data transfer, said controller forwarding the description of the selected output buffer or the selected input buffer from the controller to the host computer; for each data transfer, said host computer mapping the selected output buffer or the selected input buffer to the I/O segment of virtual memory; said controller reading the selected output buffer through said I/O segment; and said controller writing to the selected input buffer through said I/O segment and notifying the associated task that data has been written in the selected input buffer.
Claim 3
Dependent Claim
52 words
A method for transferring data as defined in claim 1 wherein the step of said host computer providing an output queue for queueing descriptions of output buffers includes the step of said host computer queueing pointers to virtual data pointers to said output buffers and physical data pointers to said output buffers.
Claim 4
Dependent Claim
52 words
A method for transferring data as described in claim 2 wherein the step of said host computer providing a buffer queue for queueing descriptions of input buffers includes the step of said host computer queueing pointers to virtual data pointers to said input buffers and physical data pointers to said input buffers,
Claim 5
Dependent Claim
87 words
A method for transferring data as described in claim 3 wherein the step of said controller forwarding the description of the buffer from the controller to the host includes the steps of said controller writing the virtual data pointer and the physical data pointer of the selected input buffer or the selected output buffer in a specified interrupt variable block of the host computer and interrupt the host computer to request mapping of the output buffer or the input buffer to the I/O segment of virtual memory.
Claim 6
Dependent Claim
95 words
A method for transferring data as defined in claim 1 further including the steps of said host computer providing for each connection a return queue for queuing descriptions of output buffers available for receiving data from the associated host computer task, said host computer reading a description of the selected output buffer from the return queue when the associated host computer task has data ready for transfer, and said controller placing a description of the selected output buffer on the return queue after the data has been transferred from the host computer to the controller.
Claim 7
Dependent Claim
80 words
A method for transferring data as defined in claim 5 further including the step of said host computer providing for each connection an input queue for queueing descriptions of input buffers into which data has been transferred from the controller and wherein the step of said controller notifying the associated task that data has been written in the selected input buffer includes the step of said controller writing a description of the selected input buffer on the associated input queue.
Claim 8
Dependent Claim
51 words
A method for transferring data as defined in claim 6 further including the step of said host computer transferring the description of the selected input buffer from the input queue to the buffer queue after the associated task has been notified that data has been written in the selected input buffer.
Claim 9
Dependent Claim
61 words
A method for transferring data as defined in claim 1 wherein the step of said host computer providing an output queue for queueing descriptions of output buffers includes the step of said host computer queueing pointers to extended control blocks, each containing a virtual data pointer to a specified output buffer and a physical data pointer to the specified output buffer.
Claim 10
Dependent Claim
61 words
A method for transferring data as defined in claim 8 wherein the step of said host computer providing a buffer queue for queueing descriptions of input buffers includes the step of said host computer queueing pointers to extended control blocks, each containing a virtual data pointer to a specified input buffer and a physical data pointer to the specified input buffer.
Claim 11
Dependent Claim
198 words
In a computer system comprising a host computer coupled to an intelligent controller, said host computer including a virtual memory, said virtual memory including an I/O segment, a method for transferring data from a plurality of tasks being executed in the host computer to a corresponding plurality of tasks being executed in the controller, each pair of corresponding tasks in the host computer and the controller having a connection therebetween, said method comprising the steps of: said host computer allocating to each connection one or more memory buffers for holding said data; for each host computer task having data for transfer to said controller, said host computer writing the data in a selected output buffer; said host computer notifying the controller that data has been written in the selected output buffer and providing a description of the selected output buffer; said controller notifying the host computer when the controller is ready for data transfer and providing a description of the selected output buffer; said host computer, in response to the notification from the controller, mapping the selected output buffer to the I/O segment of virtual memory; and said controller reading the selected output buffer through the I/O segment.
Claim 12
Dependent Claim
198 words
In a computer system comprising a host computer coupled to an intelligent controller, said host computer including a virtual memory, said virtual memory including an I/O segment, a method for transferring data from a plurality of tasks being executed in the host computer to a corresponding plurality of tasks being executed in the controller, each pair of corresponding tasks in the host computer and the controller having a connection therebetween, said method comprising the steps of: said host computer allocating to each connection one or more memory buffers for holding said data; for each host computer task having data for transfer to said controller, said host computer writing the data in a selected output buffer; said host computer notifying the controller that data has been written in the selected output buffer and providing a description of the selected output buffer; said controller notifying the host computer when the controller is ready for data transfer and providing a description of the selected output buffer; said host computer, in response to the notification from the controller, mapping the selected output buffer to the I/O segment of virtual memory; and said controller reading the selected output buffer through the I/O segment.
Claim 13
Dependent Claim
112 words
A method for transferring data as defined in claim 10 wherein the step of said host computer notifying the controller that has been written in the selected output buffer and providing a description of the selected output buffer includes the steps of said host computer providing for each connection an output queue for queueing descriptions of output buffers containing data ready for transfer from the host computer to the controller, said host computer writing the description of the selected output buffer on the associated output queue, and said host computer notifying the controller that an item is on the associated output queue if the associated output queue went from empty to nonempty.
Claim 14
Dependent Claim
61 words
A method for transferring data as defined in claim 11 wherein the step of said host computer providing an output queue for queueing descriptions of output buffers includes the step of said host computer queueing pointers to extended control blocks, each containing a virtual data pointer to a specified output buffer and a physical data pointer to the specified output buffer.
Claim 15
Dependent Claim
95 words
A method for transferring data as defined in claim 11 further including the steps of said host computer providing for each connection a return queue for queueing descriptions of output buffers available for receiving data from the associated host computer task, said host computer reading a description of the selected output buffer from the return queue when the associated host computer task has data ready for transfer, and said controller placing a description of the selected output buffer on the return queue after the data has been transferred from the host computer to the controller.
Claim 16
Dependent Claim
189 words
In a computer system comprising a host computer coupled to an intelligent controller, said host computer including a virtual memory, said virtual memory including an I/O segment, a method for transferring data from a plurality of tasks being executed in the controller to a corresponding plurality of tasks being executed in the host computer, each pair of corresponding tasks in the host computer and the controller having a connection therebetween, said method comprising the steps of: said host computer allocating to each connection one or more memory buffers for holding said data; said host computer providing for each connection descriptions of input buffers available for transfer of data from the controller to the host computer; said controller notifying the host computer when the controller is ready for data transfer and providing a description of a selected input buffer; said host computer, in response to the notification from the controller, mapping the selected input buffer to the I/O segment of virtual memory; and said controller writing to the selected input buffer through said I/O segment and notifying the associated task that data has been written in the selected input buffer.
Claim 17
Dependent Claim
189 words
In a computer system comprising a host computer coupled to an intelligent controller, said host computer including a virtual memory, said virtual memory including an I/O segment, a method for transferring data from a plurality of tasks being executed in the controller to a corresponding plurality of tasks being executed in the host computer, each pair of corresponding tasks in the host computer and the controller having a connection therebetween, said method comprising the steps of: said host computer allocating to each connection one or more memory buffers for holding said data; said host computer providing for each connection descriptions of input buffers available for transfer of data from the controller to the host computer; said controller notifying the host computer when the controller is ready for data transfer and providing a description of a selected input buffer; said host computer, in response to the notification from the controller, mapping the selected input buffer to the I/O segment of virtual memory; and said controller writing to the selected input buffer through said I/O segment and notifying the associated task that data has been written in the selected input buffer.
Claim 18
Dependent Claim
85 words
A method for transferring data as defined in claim 14 wherein the step of said host computer providing for each connection descriptions of input buffers available for transfer of data from the controller to the host computer includes the steps of said host computer providing for each connection a buffer queue for queueing descriptions of input buffers available for transfer of data from the controller to the host computer, and said controller reading a description of the selected input buffer from the associated buffer queue.
Claim 19
Dependent Claim
61 words
A method for transferring data as defined in claim 15 wherein the step of said host computer providing a buffer queue for queueing descriptions of input buffers includes the step of said host computer queueing pointers to extended control blocks, each containing a virtual data pointer to a specified input buffer and a physical data pointer to the specified input buffer.
Claim 20
Dependent Claim
88 words
A method for transferring data as defined in claim 16 wherein the step of said controller notifying the host computer when the controller is ready for data transfer and providing a description of a selected input buffer includes the steps of said controller writing the virtual data pointer and the physical data pointer of the selected input buffer in a specified interrupt variable block of the host computer and interrupting the host computer to request mapping of the selected input buffer to the I/O segment of virtual memory.
Claim 21
Dependent Claim
80 words
A method for transferring data as defined in claim 17 further including the step of said host computer providing for each connection an input queue for queueing descriptions of input buffers into which data has been transferred from the controller and wherein the step of said controller notifying the associated task that data has been written in the selected input buffer includes the step of said controller writing a description of the selected input buffer on the associated input queue.
Claim 22
Dependent Claim
363 words
In a computer system comprising a host computer coupled to an intelligent controller, said host computer including a virtual memory, said virtual memory including an I/O segment, a method for transferring data between a plurality of tasks being executed in the host computer and a corresponding plurality of tasks being executed in the controller, each pair of corresponding tasks in the host computer and the controller having a connection therebetween, said method comprising the steps of: said host computer allocating to each connection one or more memory buffers for holding the data to be transferred; said host computer providing for each connection an output queue of descriptions of output buffers containing data ready for transfer from the host computer to the controller; said host computer providing for each connection a buffer queue of descriptions of input buffers available for transfer of data from the controller to the host computer; said host computer providing for each connection a return queue of descriptions of output buffers available for transfer of data from the host computer to the controller; said host computer providing for each connection an input queue of descriptions of input buffers containing data that has been transferred from the controller to the host computer; for each host computer task having data for transfer to the controller, said host computer reading a description of a selected output buffer from the return queue, writing data to the selected output buffer, writing a description of the selected output buffer on the associated output queue, and notifying the controller of activity on the associated output queue; for each controller task having data for transfer to the host computer, said controller reading a description of a selected input buffer from the associated buffer queue; for each data transfer, said controller notifying the host computer when the controller is ready for data transfer and providing a description of the selected buffer to be utilized for data transfer; in response to the notification from the controller, said host computer mapping the selected buffer into the I/O segment of virtual memory; and said controller performing the data transfer to or from the selected buffer through the I/O segment of virtual memory.
Claim 23
Dependent Claim
363 words
In a computer system comprising a host computer coupled to an intelligent controller, said host computer including a virtual memory, said virtual memory including an I/O segment, a method for transferring data between a plurality of tasks being executed in the host computer and a corresponding plurality of tasks being executed in the controller, each pair of corresponding tasks in the host computer and the controller having a connection therebetween, said method comprising the steps of: said host computer allocating to each connection one or more memory buffers for holding the data to be transferred; said host computer providing for each connection an output queue of descriptions of output buffers containing data ready for transfer from the host computer to the controller; said host computer providing for each connection a buffer queue of descriptions of input buffers available for transfer of data from the controller to the host computer; said host computer providing for each connection a return queue of descriptions of output buffers available for transfer of data from the host computer to the controller; said host computer providing for each connection an input queue of descriptions of input buffers containing data that has been transferred from the controller to the host computer; for each host computer task having data for transfer to the controller, said host computer reading a description of a selected output buffer from the return queue, writing data to the selected output buffer, writing a description of the selected output buffer on the associated output queue, and notifying the controller of activity on the associated output queue; for each controller task having data for transfer to the host computer, said controller reading a description of a selected input buffer from the associated buffer queue; for each data transfer, said controller notifying the host computer when the controller is ready for data transfer and providing a description of the selected buffer to be utilized for data transfer; in response to the notification from the controller, said host computer mapping the selected buffer into the I/O segment of virtual memory; and said controller performing the data transfer to or from the selected buffer through the I/O segment of virtual memory.
Claim 24
Dependent Claim
61 words
A method for transferring data as defined in claim 19 wherein the step of said host computer providing an output queue for queueing descriptions of output buffers includes the step of said host computer queueing pointers to extended control blocks, each containing a virtual data pointer to a specified output buffer and a physical data pointer to the specified output buffer.
Claim 25
Dependent Claim
61 words
A method for transferring data as defined in claim 20 wherein the step of said host computer providing a buffer queue for queueing descriptions of input buffers includes the step of said host computer queueing pointers to extended controls blocks, each containing a virtual data pointer to a specified input buffer and a physical data pointer to the specified input buffer.
Claim 26
Dependent Claim
221 words
In a computer system comprising a host computer coupled to an intelligent controller, said host computer including a virtual memory, said virtual memory including an I/O segment, a method for transferring data between a plurality of tasks being executed in the host computer and a corresponding plurality of tasks being executed in the controller, each pair of corresponding tasks in the host computer and the controller having a connection therebetween, said method comprising the steps of: said host computer allocating too each connection one or more virtual memory buffers for holding the data to be transferred; said host computer providing to the controller descriptions of buffers containing data ready for transfer from the host computer to the controller and descriptions of buffers available for transfer of data from the controller to the host computer; said controller notifying the host computer when the controller is ready for transfer of data and providing a description of the buffer to be utilized for data transfer; said host computer, in response to the notification from the controller, mapping the buffer to be utilized for data transfer into the I/O segment of virtual memory based on the description provided by the controller; and said controller transferring the data to or from the buffer to be utilized for data transfer through the I/O segment of virtual memory.
Claim 27
Dependent Claim
221 words
In a computer system comprising a host computer coupled to an intelligent controller, said host computer including a virtual memory, said virtual memory including an I/O segment, a method for transferring data between a plurality of tasks being executed in the host computer and a corresponding plurality of tasks being executed in the controller, each pair of corresponding tasks in the host computer and the controller having a connection therebetween, said method comprising the steps of: said host computer allocating too each connection one or more virtual memory buffers for holding the data to be transferred; said host computer providing to the controller descriptions of buffers containing data ready for transfer from the host computer to the controller and descriptions of buffers available for transfer of data from the controller to the host computer; said controller notifying the host computer when the controller is ready for transfer of data and providing a description of the buffer to be utilized for data transfer; said host computer, in response to the notification from the controller, mapping the buffer to be utilized for data transfer into the I/O segment of virtual memory based on the description provided by the controller; and said controller transferring the data to or from the buffer to be utilized for data transfer through the I/O segment of virtual memory.