This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: RFA: pause after sending S-records to ROM68K monitor


> Andrew Cagney <ac131313@cygnus.com> writes:
> 
>> Jim, while an inovative interpretation of baud, I don't know that the 
>> patch is either correct or robust.
> 
> 
> Well, okay.  Can you suggest a correct and robust implementation for
> downloading S-records to a monitor which provides no hardware
> handshaking on the serial line, and no handshaking in the protocol
> (say, by transmitting a `+' after each record)?
> 
> 
>> It sounds like you've got a latency problem while the patch you have is 
>> playing with the bandwidth knob.
> 
> 
> In the absence of any per-record feedback, I don't see any
> alternative.


I think you've got it half right  The time taken is something like:

	size-of-pipe * amount-of-data + round-trip

(I don't have my AST networks book handy to don't trust this). 
round-trip is loosely defined by remote_timeout.  As you note the baud 
loosely defines the transfer-rate.  This is if we assume 100% efficiency :-)

In your case, it is probably more exactly defined as:

	ABOVE - (current-time - start-time)

remember, if you are talking down a real serial port then the buffering 
will be zero and you only want to wait for round-trip time.

Using this, i'd expect something like

	if (remote_throughput (??better-name??) >= 0)
	  transfer_time = remote_throughput * sizeoftransfer;
	else
	  transfer_time = something made up from the baud-rate

	timeout = transfer_time - (current_time - start_time) + remote_timeout


Andrew



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]