From: Joel Brobecker <brobecker@adacore.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: gdb-patches@sourceware.org
Subject: Re: [RFA/Ada] Implement Ada tasking support
Date: Tue, 23 Sep 2008 18:30:00 -0000 [thread overview]
Message-ID: <20080923182943.GA3729@adacore.com> (raw)
In-Reply-To: <uskrqohzd.fsf@gnu.org>
> > An Ada task carries with it a lot of semantic information thanks
> > to the Ada Task Control Block (the ATCB).
>
> So it is a kind of thread on steroids?
You can say that. However:
> Can there ever be more or less than exactly one thread per Ada task?
An Ada task *usually* lives on a thread, but nothing prevents
the implementation to implement this differently. For instance,
we used the FSU threads for a while, and I think the scheduling
was done using signals, rather than using the system thread library.
So this is not something required by the language.
> We could extend the thread commands to display that additional info if
> available.
I am trying to find a way to mix the two that I wouldn't find really
confusing. Also, there isn't always a 1:1 correspondance between
an entry in the thread list and the entries in the Ada task list.
I think it's on Solaris (or is it GNU/Linux?) where you have multiple
entries in the thread list even though you really have one logical
thread (from the software point of view). I think this is because
the thread list shows everything that the system reports, LWPs, threads,
kernel threads sometimes, etc. Also, you might sometimes have Ada tasks
that appear in the task list as "Terminated" - it is possible that
the underlying thread no longer exist. The Ada task list has this nice
property that it sits at the software-level, whereas the thread list
sits more at the system level. That's why I was saying that the two
concepts (threads vs Ada tasks) serve different purposes.
> I'm trying to establish whether they are irreconcilable. If they can
> live together, I'd suggest to merge them.
I think these are very interesting questions. In my opinion, they are,
for the various reasons explained above. But perhaps you have some
suggestions that might answer my concerns?
--
Joel
next prev parent reply other threads:[~2008-09-23 18:30 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-09-22 23:33 Joel Brobecker
2008-09-23 3:20 ` Eli Zaretskii
2008-09-23 15:07 ` Joel Brobecker
2008-09-23 18:06 ` Eli Zaretskii
2008-09-23 18:30 ` Joel Brobecker [this message]
2008-09-23 19:17 ` Eli Zaretskii
2008-09-23 19:00 ` Tom Tromey
2008-09-23 18:24 ` Eli Zaretskii
2008-09-23 19:22 ` Tom Tromey
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=20080923182943.GA3729@adacore.com \
--to=brobecker@adacore.com \
--cc=eliz@gnu.org \
--cc=gdb-patches@sourceware.org \
/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