This is the mail archive of the insight@sourceware.org mailing list for the Insight project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Extending Insight


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]