comp.lang.ada
 help / color / mirror / Atom feed
From: Niklas Holsti <niklas.holsti@tidorum.invalid>
Subject: Re: Size optimization for objects
Date: Thu, 11 Jul 2013 10:35:06 +0200
Date: 2013-07-11T10:35:06+02:00	[thread overview]
Message-ID: <b4791rF6i9hU1@mid.individual.net> (raw)
In-Reply-To: <63b8f2ef-5f9b-45b5-8d40-2eec7f32f11b@googlegroups.com>

On 13-07-10 13:57 , Rego, P. wrote:
>>> and the read size of bla.o is 611 bytes.
>> What do you mean by "read size"? Perhaps this is a typo, and you meant
>> to write "real size"?
>> If you mean the total size of the file bla.o (from the directory
>> listing, e.g "ls -l"), this is not a useful comparison, because the file
>> contains much more data than just the machine code: there are headers,
>> symbol tables, and other debug information -- among other things, the
>> information that "nm" uses to associate machine code addresses with
>> identifier symbols.
> 
> Yes, it is from directory listing. In this case, the 'size' provided
> by "ls -l" should be bigger, right?

Yes, if you consider only the size of the code ("text" segment). For
data, if the program contains uninitialized, statically allocated
variables, the file size can be smaller than the "memory image" size,
because the .o file only describes those variables (name, size, address
or offset) but does not provide values for the variables.

>>> Also, if I run 
>>>    nm --print-size --size-sort bla.exe > bla.txt
   ...
>>> but adding the second column, the result (in Excel I convert it
>>> to decimal before adding) is 8.61147E+12 and the real bla.exe
>>> size is 1512500 bytes, also very different.
>> Again, if by "real size" you mean the entire size of the file bla.exe,
>> the comparison it not useful, just as for bla.o: bla.exe contains a lot
>> more data than just the machine code.
> I don't think 8.61147E+12 is irrelevant.

The fact that this number is so absurdly large is relevant, and the fact
that it is larger than the size of the .o file may be relevant, unless
the number includes the size of uninitialized statically allocated data
-- see above.

Continued in reply to your next message...

-- 
Niklas Holsti
Tidorum Ltd
niklas holsti tidorum fi
      .      @       .


  parent reply	other threads:[~2013-07-11  8:35 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-28 19:49 Size optimization for objects Rego, P.
2013-06-29  7:10 ` Georg Bauhaus
2013-07-01 13:56   ` Rego, P.
2013-07-01 16:49     ` G.B.
2013-06-29  9:48 ` Jack Daniels
2013-07-01 13:58   ` Rego, P.
2013-06-30 11:34 ` rrr.eee.27
2013-07-01 14:35   ` Rego, P.
2013-07-01 15:28     ` Niklas Holsti
2013-07-01 16:35       ` Rego, P.
2013-07-01 18:21         ` Niklas Holsti
2013-07-02 20:32           ` Rego, P.
2013-07-06 16:06             ` Niklas Holsti
2013-07-10 11:57               ` Rego, P.
2013-07-10 11:58                 ` Rego, P.
2013-07-11  9:10                   ` Niklas Holsti
2013-07-18 14:09                     ` Rego, P.
2013-07-18 14:10                       ` Rego, P.
2013-07-11  8:35                 ` Niklas Holsti [this message]
2013-07-12  0:35                   ` Randy Brukardt
2013-07-18 15:16                     ` Rego, P.
2013-07-18 15:12                   ` Rego, P.
2013-07-18 17:57                     ` Niklas Holsti
2013-07-19  5:02                     ` Randy Brukardt
2013-07-19 13:20                       ` Eryndlia Mavourneen
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox