This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: DSR Scheduling Problem


On 2006-01-14, Paul D. DeRocco <pderocco@ix.netcom.com> wrote:

>> I still maintain that your application is either broken or you
>> don't have enough CPU.  If one interrupts source requires so
>> much DSR time that others can't run, then there is simply
>> something wrong.  You seem to prefer a tx underrun error to an
>> rx overrun error.  I guarantee you're going to get one or the
>> other.  On the systems I work on, either is equally fatal, so
>> it is not the case that FIFO is better than LIFO.  Both work
>> equally well.
>
> If the transmitter has a hardware FIFO, and the software
> transmits one byte per interrupt,

Then the sofware is completely and utterly broken.  It doesn't
deserve to work.

> then presenting a block of data to it after an idle period
> will invoke the ISR/DSR a slew of times until the FIFO is
> full.

That's insane.  Nobody with a clue would write software like
that.  When you get a TX interrupt you write data to the tx
FIFO until it's full.

> This will happen even if the average interrupt rate is
> eventually throttled to a reasonable value by the serial
> transmission rate, once the FIFO is full. I don't know if that
> accounts for the 38ms in this person's situation, but if the
> FIFO is large it could certainly tie things up for a
> significant amount of time.

You're describing completely broken software.  It needs to be
fixed.

-- 
Grant Edwards                   grante             Yow!  That's a decision
                                  at               that can only be made
                               visi.com            between you & SY SPERLING!!


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


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