Patent ID: 7363629

Claim:
A method comprising: adding a remote operation request of a first resource type sent to a remote processor from a local processor, as an entry in a first queue of remote operation requests of the first resource type awaiting execution in connection with a first resource in the remote processor; adding a remote operation request of a second resource type sent to the remote processor from the local processor, as an entry in a second queue of remote operations of the second resource type awaiting execution by a second resource in the remote processor; initiating execution of a remote operation request of the first resource type from the first queue using the resource of the first resource type of the remote processor; initiating execution of a remote operation request of the second resource type from the second queue using the resource of the second resource type of the remote processor; removing a remote operation request entry from the first queue; removing a remote operation request entry from the second queue; sending the local processor an acknowledgment that an additional remote operation request of the first resource type may be sent to the remote processor for execution; sending the local processor an acknowledgment that an additional remote operation request of the second resource type may be sent to the remote processor for execution; sending a remote operation request of a first resource type to the remote processor to be executed in connection with a first resource type of the remote processor; decrementing a first count of credits for each remote operation of the first resource type sent to the remote processor wherein each credit of said first count indicates a permissible remote operation which is permitted to be sent to be executed in connection with an associated resource of the first resource type of the remote processor; receiving an acknowledgment from the remote processor that another remote operation of the first resource type may be sent to the remote processor; incrementing the first count of credits for each acknowledgment from the remote processor that another remote operation of the first resource type may be sent to the remote processor; sending a remote operation request of a second resource type to the remote processor to be executed in connection with a second resource type of the remote processor; decrementing a second count of credits for each remote operation of the second resource type sent to the remote processor wherein each credit of said second count indicates a permissible remote operation which is permitted to be sent to be executed in connection with an associated resource of the second resource type of the remote processor; receiving an acknowledgment from the remote processor that another remote operation of the second resource type may be sent to the remote processor; and incrementing the second count of credits for each acknowledgment from the remote processor that another remote operation of the second resource type may be sent to the remote processor.