debug nic_drv

Norman Feske norman.feske at ...1...
Fri Apr 26 11:32:59 CEST 2013


Hi Keqin,

>      Thank you for the information. This optimization seems very important, I'm
> willing to follow your work. But I'm afraid I do not fully understand how the
> entire system working. Where can I get some detailed documentations about how
> does gdb_monitor work and how does fiasco.OC or Genode map memory for each app?
> I have been read several docs on the Genode website but still puzzled.

Indeed, the inner workings of GDB monitor requires a profound
understanding of how Genode works. So maybe, from your perspective, it
is not the most suitable topic to start right now. Anyway, I'd like to
give to some pointers to start an investigation.

In Genode, the address-space layout of each process is represented by a
Region-Manager session (RM session) provided by core. A RM session is
similar to a page table but works on a higher level of abstraction. The
RM service is briefly described in the documentation:


http://genode.org/documentation/architecture/core#RM_-_managing_address_space_layouts

However, this description to a bit sparse, in the mailing-list archive,
you will find better coverage. I.e., the following thread is insightful:


http://sourceforge.net/mailarchive/forum.php?thread_name=007b01cc29fc%24d2b64600%247822d200%24%25tian%40samsung.com&forum_name=genode-main

The GDB monitor works by virtualizing the RM service that is normally
provided by core using a local implementation. So all interactions of
the debugging target with core can be monitored (and manipulated) by GDB
monitor. We call this technique process-level virtualization. The
concept is described in the release notes of version 11.11:


http://genode.org/documentation/release-notes/11.11#GDB_debugging_via_application-level_virtualization

To get the big picture, it is certainly worthwhile to also skim over the
surrounding text. The release notes are actually the best resource of
documentation about Genode. To get an overview of all the topics
covered, you may review the respective introduction sections of the
least recent (let's say 8) releases. If a mentioned topic catches your
interest, you can decide read the specific section. Btw, all release
notes are present in the 'doc/' directory of Genode. So you can grep for
the topics of your particular interest.

Have fun with exploring!

Cheers
Norman

-- 
Dr.-Ing. Norman Feske
Genode Labs

http://www.genode-labs.com · http://genode.org

Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth




More information about the users mailing list