Claims Analysis
Total Claims: 8
Claim 1
Independent Claim
388 words
A process for providing data communication concurrently between a first computer and a second computer coupled together by a communication link, and between a third computer and said second computer, said second computer having a processor and an associated operating system, said process comprising the steps of: running an application on the processor and the associated operating system of said second computer; simultaneously running a different but related application on said first computer; initiating from the application running on said first computer a write command to write data from said first computer to a buffer pool memory in said second computer, said first computer initiating said write command without specific prior direction from said second computer to initiates said write command, said first computer application having a peer-to-peer relationship to said second computer application insofar as the ability of said first computer application to initiate said write command; fetching control information by the communication link from said second computer by direct memory access of a memory location containing said control information in said second computer without interrupting said processor, said control information identifying an available location, if any, in said buffer pool memory to receive said data; transmitting said write command in microcode to said processor of said second computer via said communication link to notify said processor of said write command; and if said buffer pool memory has an available location to receive said data, approving of said write command and transmitting said approval onto said communication link, said approving step being performed by said processor by stealing cycles from said processor without interrupting said associated operating system; writing said data from said first computer into said available location in said buffer pool memory via said communication link by direct memory access from said communication link based on said control information, whereby said processor and associated operating system do not control this writing step and no channel program is required, said second computer application subsequently reading said data from said buffer pool memory; and controlling by said second computer application and the associated operating system a data transfer between said second computer and said third computer in a master/slave relationship concurrently with the approving of said write command by said processor and while said data from said first computer is being written into said buffer pool memory.
Claim 2
Dependent Claim
388 words
A process for providing data communication concurrently between a first computer and a second computer coupled together by a communication link, and between a third computer and said second computer, said second computer having a processor and an associated operating system, said process comprising the steps of: running an application on the processor and the associated operating system of said second computer; simultaneously running a different but related application on said first computer; initiating from the application running on said first computer a write command to write data from said first computer to a buffer pool memory in said second computer, said first computer initiating said write command without specific prior direction from said second computer to initiates said write command, said first computer application having a peer-to-peer relationship to said second computer application insofar as the ability of said first computer application to initiate said write command; fetching control information by the communication link from said second computer by direct memory access of a memory location containing said control information in said second computer without interrupting said processor, said control information identifying an available location, if any, in said buffer pool memory to receive said data; transmitting said write command in microcode to said processor of said second computer via said communication link to notify said processor of said write command; and if said buffer pool memory has an available location to receive said data, approving of said write command and transmitting said approval onto said communication link, said approving step being performed by said processor by stealing cycles from said processor without interrupting said associated operating system; writing said data from said first computer into said available location in said buffer pool memory via said communication link by direct memory access from said communication link based on said control information, whereby said processor and associated operating system do not control this writing step and no channel program is required, said second computer application subsequently reading said data from said buffer pool memory; and controlling by said second computer application and the associated operating system a data transfer between said second computer and said third computer in a master/slave relationship concurrently with the approving of said write command by said processor and while said data from said first computer is being written into said buffer pool memory.
Claim 3
Dependent Claim
52 words
A process as set forth in claim 1 wherein said buffer pool memory is identified by a circular first-in first-out queue of addresses, and said data is written into one end of said buffer pool memory, the location of said end changing after said data is written into said buffer pool memory.
Claim 4
Dependent Claim
24 words
A process as set forth in claim 1 wherein said first computer is a personal computer, and said second computer has a System/370 architecture.
Claim 5
Dependent Claim
392 words
A computer system comprising: a first computer; a second computer having a processor and an associated operating system; a third computer; first means for communicating between said first computer and said second computer; second means for communicating between said second computer and said third computer; means for running an application on said processor and said associated operating system of said second computer; means for simultaneously running a different but related application on said first computer; means for initiating from the application running on said first computer a write command in microcode to write data from said first computer to a buffer pool in said second computer, said first computer initiating said write command without specific prior direction from said second computer to initiate said write command, said first computer application having a peer-to-peer relationship to said second computer application insofar as the ability of said first computer application to initiate said write command; said first communicating means including means for fetching control information from said second computer by direct memory access of a memory location containing said control information within said second computer without interrupting said processor, said control information identifying an available location, if any, in said buffer pool to receive said data; means for transmitting said write command microcode to said second computer via said first communicating means; and means for approving by said processor of said write command and transmitting said approval onto said first communicating means if said buffer pool has an available location to receive said data, said write command being approved by stealing cycles from said processor without interrupting the associated operating system; means for writing said data from said first computer into said available location in said buffer pool via said first communicating means by direct memory access from said first communicating means based on said control information if said buffer pool has an available location to receive said data, whereby said processor and associated operating system do not control the writing means, said second computer application subsequently reading said data from said buffer pool; and said second computer application including means for controlling a data transfer between said second computer and said third computer in a master/slave relationship concurrently with the approving of said write command by said processor and while said data from said first computer is being written into said buffer pool.
Claim 6
Dependent Claim
392 words
A computer system comprising: a first computer; a second computer having a processor and an associated operating system; a third computer; first means for communicating between said first computer and said second computer; second means for communicating between said second computer and said third computer; means for running an application on said processor and said associated operating system of said second computer; means for simultaneously running a different but related application on said first computer; means for initiating from the application running on said first computer a write command in microcode to write data from said first computer to a buffer pool in said second computer, said first computer initiating said write command without specific prior direction from said second computer to initiate said write command, said first computer application having a peer-to-peer relationship to said second computer application insofar as the ability of said first computer application to initiate said write command; said first communicating means including means for fetching control information from said second computer by direct memory access of a memory location containing said control information within said second computer without interrupting said processor, said control information identifying an available location, if any, in said buffer pool to receive said data; means for transmitting said write command microcode to said second computer via said first communicating means; and means for approving by said processor of said write command and transmitting said approval onto said first communicating means if said buffer pool has an available location to receive said data, said write command being approved by stealing cycles from said processor without interrupting the associated operating system; means for writing said data from said first computer into said available location in said buffer pool via said first communicating means by direct memory access from said first communicating means based on said control information if said buffer pool has an available location to receive said data, whereby said processor and associated operating system do not control the writing means, said second computer application subsequently reading said data from said buffer pool; and said second computer application including means for controlling a data transfer between said second computer and said third computer in a master/slave relationship concurrently with the approving of said write command by said processor and while said data from said first computer is being written into said buffer pool.
Claim 7
Dependent Claim
188 words
A computer system as set forth in claim 4 wherein: said first computer includes first transfer layer means, connected to said first communicating means, for converting said write command to said microcode and routing said data from said first computer to said second computer via said first communicating means; and first application interface means, connected to said first transfer layer means, for interfacing between said application running in aid first computer and said first transfer layer means, said first transfer layer means also having a roll-your-own interface for said application running in said first computer, each of said first application interface means and said roll-your-own interface capable of supporting said write command; and said second computer includes: second transfer layer means, connected to said first communicating means, for routing data and said approval to said first computer via said first communicating means; and second application interface means, connected to said second transfer layer means, for interfacing between said application running in said second computer and said second transfer layer means, said second transfer layer means also having a roll-your-own interface for said application running in said second computer.
Claim 8
Dependent Claim
29 words
A process as set forth in claim 1 wherein said second computer application controls said data transfer between said second computer and said third computer using a channel program.