How can we look to into a class file for that, is there some tools ? or simply with cat / pico ?
On Thu, Jun 25, 2009 at 11:26 PM, Dan Bornstein <[email protected]> wrote: > > On Wed, Jun 24, 2009 at 11:54 AM, Marek > Urbaniak<[email protected]> wrote: > > I have a question regarding Google I/O 2008 presentation about Dalvik > > internals. One thing is not completely clear to me: implicit labeling > > (slide #21). It is listed as one reason why memory is saved in Dex > > format. Could anyone explain, what exactly does it mean in this > > context? > > As an example first of *explicit* labeling, if you look inside a > .class file, you will find that many parts of it are represented as > tagged attributes, where the tag identifies the attribute, say, as a > method body, a default field value, a line number table, etc. Those > attribute tags are generally two-byte references to constant pool > entries for string constants, and though two bytes may not sound like > much, they add up. Similarly, each entry in the constant pool for a > .class is preceded by a byte identifying its type, and these also add > up. > > In the dex format, on the other hand, in representing the vast > majority of data, such labeling is omitted, because the format itself > implies the type of data being represented. Bytecode arrays are known > to be bytecode arrays because they are pointed at from a known offset > in a method structure; and that method structure is known to be a > method structure, since it is referred to at the right point in a > class definition structure; and that class definition structure is > known to be a class definition structure, because it is within the > class definition array pointed at by the dex file header. It's all > implicit; no tagging required. > > The dex format does provide an "escape valve" for arbitrary tagged > data in the form of annotations. Dex annotations are used to represent > annotations as written in the original source code, but they are also > used for a couple of things that are represented as tagged attributes > in .class files. For example, metadata about inner classes is > represented in dex files using the annotation mechanism. > > You can refer to the dex format spec for more details, under > <dalvik/docs> in the source. > > Cheers, > > -dan > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Android Discuss" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-discuss?hl=en -~----------~----~----~----~------~----~------~--~---
