9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Bhanu Nagendra Pisupati <bpisupat@cs.indiana.edu>
To: 9fans@9fans.net
Subject: Re: [9fans] JTAG
Date: Wed,  3 Nov 2010 01:57:25 -0400	[thread overview]
Message-ID: <alpine.LRH.2.00.1011030106470.30905@tank.cs.indiana.edu> (raw)
In-Reply-To: <mailman.17024.1288718605.1513.9fans@9fans.net>

> I am not sure this fits into a /proc kind of interface because
> JTAG lets you access the bare hardware. Nemo has just pointed to me
> that a process is not the
> same as a running kernel, and maybe the abstraction does not fit that
> well.

Often cross debugging of embedded systems does not take place on a
per process basis. Breakpoints for instance are set at the address within
flash where the relevant code resides, and gets hit whenver code at that
address gets executed (irrespective of executing process). This assumes
that the code executes in place within flash - things get a bit more
complicated when the code is copied to RAM and then executed.

Therefore all you need to do to facilitate cross debugging is to provide some means to
access registers/memory, control execution, set breakpoints and so on. You
don't typically need to enable this on a per process basis.

> Could one (is is this the plan) to generate a /proc like virtual file system
> for jtag so acid will then work over jtag?

As part of our research work, we had some success exploring a
similar sort of idea to facilitate cross debug embedded code.
The model we used is as follows:

debugger <-- RS232 link --> 9P virtual filesystem <-- JTAG --> ARM7
HOST SIDE                                 EMBEDDED SIDE

A 9P virtual filesystem (implemented on the embedded side) encapsulates
JTAG based debug interface for an ARM7 device. The PC side debugger
mounts this filesystem, and uses it to perform typical debugging
tasks such as access register/memory valus, control execution and so on
without having to deal with any JTAG messiness.

For anybody who's curious to learn more:
http://www.cs.indiana.edu/pub/techreports/TR647.html/embed.html




       reply	other threads:[~2010-11-03  5:57 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <mailman.17024.1288718605.1513.9fans@9fans.net>
2010-11-03  5:57 ` Bhanu Nagendra Pisupati [this message]
2010-11-02 16:45 Bakul Shah
2010-11-02 17:23 ` Nick LaForge
2010-11-02 20:00 ` Gorka Guardiola
  -- strict thread matches above, loose matches on Subject: below --
2010-11-02  6:32 Bhanu Nagendra Pisupati
2010-11-02  9:30 ` Gorka Guardiola
2010-11-02 10:28   ` Steve Simon
2010-11-02 16:01     ` Gorka Guardiola
2010-11-02 19:00     ` Eric Van Hensbergen
2010-10-26 17:49 Jeff Sickel
2010-10-26 18:20 ` Skip Tavakkolian
2010-10-26 18:31   ` Bruce Ellis
2010-10-26 18:49 ` Steve Simon
2010-10-26 19:10   ` EBo
2010-10-26 19:28     ` EBo
2010-10-26 22:05       ` Gorka Guardiola
2010-10-26 22:17         ` EBo

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=alpine.LRH.2.00.1011030106470.30905@tank.cs.indiana.edu \
    --to=bpisupat@cs.indiana.edu \
    --cc=9fans@9fans.net \
    /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 NNTP newsgroup(s).