|
Posted by John Navas on 01/21/08 15:53
On Mon, 21 Jan 2008 15:46:26 +0000 (UTC), Ilya Zakharevich
<nospam-abuse@ilyaz.org> wrote in <fn2eoi$30du$1@agate.berkeley.edu>:
>[A complimentary Cc of this posting was sent to
>John Navas
><spamfilter1@navasgroup.com>], who wrote in article <u7d9p3polkgjj6menqu4lhpkhjlvcinf8l@4ax.com>:
>> >No. I do not see how the effect you describe can appear; device
>> >drivers should not be affected by the "system being busy"; an
>> >interrupt is an interrupt is an interrupt. I may be missing more
>> >technical details...
>>
>> The USB bus isn't interrupt-driven -- it's polled (as I wrote),
>
>Do not see any significant difference. The poller would set up a
>wake-up call, which would generate an interrupt. [And, BTW, why my
>PCI hardware view shows that USB controllers use interrupts?]
When the bus is busy with device 1, device 2 has to wait until device 1
is done. In addition, device 2 cannot use the bus until polled by the
host bus controller, which can be delayed for a number of reasons.
There is no instantaneous interrupt response.
>> which is why latency can be an issue.
>
>Could you explain how latency is related to polling?
Latency occurs because the device has to wait to be polled. It cannot
demand the bus instantly.
>> When the host is busy servicing device 1,
>> device 2 has to wait until the host is free (latency), which can be a
>> problem when streaming at high speed, as in the case of video.
>
>I do not see how this could be a problem - just do not use more than 1
>USB device...
That helps, but there can still be latency due to issues in the host
controller (which handles multiple ports) and software stack (which
handles all ports).
--
Best regards,
John Navas
Panasonic DMC-FZ8 (and several others)
Navigation:
[Reply to this message]
|