From: "Brandon Diamond" <theevilgeek@gmail.com>
To: insight@sourceware.org
Subject: Extending Insight
Date: Mon, 03 Mar 2008 04:15:00 -0000 [thread overview]
Message-ID: <145797ba0803022015vea67cf7y7d2a5605e110c850@mail.gmail.com> (raw)
Hello,
My name is Brandon, and I'm currently an undergraduate CS major at
Brown University. As part of some course improvement work for an OS
class at Brown, I'm looking to build a few GDB extensions to allow
students to explore our kernel more intuitively at "debug-time" (i.e.,
explore the page tables, page directories, system registers [CR3,
CR2], shared pages and so forth). Previously, I had worked with a
partner to convert our toy OS ("Weenix") to run on the Xen hypervisor;
this has allowed us to utilize GDB to debug the kernel. The next step
would be to organize the information GDB gives us into a more useful
view.
In researching this project, I stumbled upon a few screenshots of
Insight-- and boy did it look great! Having multiple floating windows
to fill with assembly, source code, memory, and so on would be a huge
improvement on its own (especially over the TUI)-- if I could write a
plugin to do the extra visualization I had in mind (i.e., displaying
the page tables as a tree, among others) it would be absolutely
perfect.
Alas, it seems that Insight does not come with a plugin interface and
that adding new windows would require a fair amount of C & Tcl. The
good news is that I'm quite familiar with C; the bad news is that I've
never written Tcl before. Thus, it is with a great deal of hope that I
pose the following questions (I'd be extremely grateful for any
pointers or advice any developers on the list might be able to offer!)
- With a strong background in C and a virtually non-existent background in Tcl,
- Would it be possible to implement additional windows containing
varied UI components within a reasonable amount of time?
- Could it be done in 1-3 weeks?
- Would a working knowledge of TCL suffice, or would I have to go
pro? (if I could get by with minimal knowledge, is there a quick-start
tutorial that you'd recommend?)
- Is the Insight source & design amenable to these modification--
or would this be a huge undertaking? (i.e., I'd have to read all of
the code to even get started and break a bunch of abstractions in so
doing)
Finally, if Insight is the wrong place for me to start, does anyone
know of a similar project that I might have a better chance of
extending?
Thank you VERY much for your help!
Sincerely,
Brandon Diamond
next reply other threads:[~2008-03-03 4:15 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-03-03 4:15 Brandon Diamond [this message]
2008-03-03 17:45 ` Keith Seitz
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=145797ba0803022015vea67cf7y7d2a5605e110c850@mail.gmail.com \
--to=theevilgeek@gmail.com \
--cc=insight@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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).