This is the mail archive of the mailing list for the GDB 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]

Re: What's an annex? stratum?

Stan Shebs wrote:
Michael Eager wrote:
Looking at target.c, I see some terms which are less
than clear:  annex and stratum.  Could someone tell me
what these mean?
"Annex" is apparently an introduction of Andrew's from 2004, does kind of look like an address space addition, although not clear that it's fully implemented.

I'm assuming that the XML target description in the docs is similarly incomplete and/or obsolete.

There seems to be a fair amount of cruft in the code, and
even more in the documentation.  Sigh.

"Stratum" is an old concept, merely a way to talk about different levels of the target stack. In practice, the stacking concept isn't as clean as it must have seemed initially; sometimes you really want to run a target op in a vector down in the stack, sometimes you want to replace a target vector in the middle. So we introduce strata as a way to find a mid-stack target vector of a desired type. First big block comment in target.h goes into a bit more detail.

I read the comments, but it doesn't really say what the target stack is. I see the enum for different strata, giving a hierarchy.

I can see that you might layer a core file on top of an executable
file, so that searching for a symbol/address was passed down until
you found the one which contained it.  But how does thread/process/
download fit into this picture?

Michael Eager
1960 Park Blvd., Palo Alto, CA 94306  650-325-8077

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