Patent ID: 8595396

Claim:
In a device coupled to a host computer, a method for dynamically acquiring program software code from the host computer for execution in the device, the method comprising: receiving, from the host computer, proposals for at least two competing portions of the program software code for downloading to said device from the host computer, sending, to the host computer, for each of said proposals for the at least two competing portions of the program software code, successive negative acknowledgements, so that as long as a negative acknowledgement is sent for a code portion of the program software code, said code portion of the program software code is not received at said device, selecting one of the proposals for the at least two competing portions of the program software code as a selected portion of the program software code to be received among said at least two competing portions of the program software code, wherein said negative acknowledgements are stopped being sent for the selected portion of the program software code, so that only said selected portion of the program software code is received, while reception of any other available code portion of the program software code competing with said selected portion of the program software code is prevented, and storing the selected and received portion of the program software code at said device on a computer readable storage medium for subsequent execution in the device.