This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: gets() and task scheduling stopped
On Thu, 2002-01-10 at 22:23, Gary Thomas wrote:
> > I know it's a bit late, but I wonder if we should have defined
> > CYGACC_COMM_IF_GETC_NONBLOCK instead of CYGACC_COMM_IF_GETC so the looping
> > is done outside of the ROM monitor. Maybe we should, and switch to that?
>
> Yes, that would help. There would still be [short] periods where things
> are turned off, but overall the system would keep running.
As noted in the Bug, I disagree with this. The drivers available via VV
are intended for debugging and/or diagnostics output in a
non-interruptible fashion. If proper multi-threaded/interrupt-enabled
behavior is desired, a driver intended for such IO should be used.
IMO the app should use an IO device driver - we should not try to make
designated diag routines almost-work as replacement for device drivers.
Changing the behavior as suggested will just entice people to try and
use diag routines instead of proper device drivers (because it's
easier).
Jesper