public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
From: Peter Graf <p.graf@itknet.de>
To: ecos-discuss@sources.redhat.com
Subject: Re: [ECOS] sscanf() vs. fgetc()
Date: Thu, 12 Jul 2001 03:45:00 -0000	[thread overview]
Message-ID: <3.0.5.32.20010712123601.0090f2e0@128.128.128.220> (raw)
In-Reply-To: <86sng24g1c.fsf@halftrack.hq.acn-group.ch>

Hi Robin,

>> But when I use sscanf() in the old thread, it hangs.
>> Even if the new process completes fgetc(), because characters are received,
>> the old process won't get any further.
>
>I suppose that only one thread at a time can read characters from a serial
>port. When a thread wants to read, it probably has to obtain a mutex, then it
>checks a condition such as input buffer not empty or waits on a condition
>variable bound to this condition. When some characters come in, the condition
>variable gets signalled and the thread with the higher priority runs and
>consumes the available characters. Therefore, another thread with a lower
>priority will never get a chance to see a non-empty buffer, or in one word:
>starvation.

You are obviously right, but:

My sscanf() does access a *string*, which is absolutely not related to the
*serial port* read by fgetc().

Peter

  parent reply	other threads:[~2001-07-12  3:45 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-07-11 14:09 [ECOS] Linux over RedBoot Venkat Mynampati
2001-07-11 14:36 ` Jonathan Larmour
2001-07-11 14:53 ` Gary Thomas
2001-07-11 20:32   ` Fabrice Gautier
2001-07-11 23:37     ` Jesper Skov
2001-07-12  5:11       ` Gary Thomas
2001-07-12  5:30         ` Fabrice Gautier
2001-07-12  5:39           ` Gary Thomas
2001-07-12  5:45             ` Jesper Skov
2001-07-12  1:54 ` [ECOS] sscanf() vs. fgetc() Peter Graf
2001-07-12  3:23   ` Peter Graf
2001-07-12  3:28   ` Robin Farine
2001-07-12  3:42     ` Jonathan Larmour
2001-07-12  5:02       ` Robin Farine
2001-07-12  3:45     ` Peter Graf [this message]
2001-07-12  4:00   ` Jonathan Larmour
2001-07-12  5:57     ` Peter Graf
2001-07-12  6:13       ` Jonathan Larmour
2001-07-12  7:43         ` Peter Graf
2001-07-12 11:17           ` Robin Farine
2001-07-12 11:55             ` Jonathan Larmour
2001-07-13  2:33               ` Peter Graf
2001-07-13  2:33             ` Peter Graf

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3.0.5.32.20010712123601.0090f2e0@128.128.128.220 \
    --to=p.graf@itknet.de \
    --cc=ecos-discuss@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).