Is space for symbol table allocated from heap?

C

curious

It will be great if some one can explain in detail about structure of
process in memory...where is symbol table etc..located?
 
G

Gordon Burditt

It will be great if some one can explain in detail about structure of
process in memory...where is symbol table etc..located?

If the program is static-linked, who says the symbol table is
anywhere in memory? If the program has been stripped, who says
the symbol table exists at all?

Gordon L. Burditt
 
C

curious

So, can u please explain the concept of symbol table and when does it
exist and where?
 
I

Ico

curious said:
So, can u please explain the concept of symbol table and when does it
exist and where?

1) Do some searching first (e.g. google), there is a *lot* of info available
about this subject

2) This is mostly off-topic. Please ask the question at an appropriate
newsgroup or mailing list discussing your platform or compiler.
 
W

Walter Roberson

It will be great if some one can explain in detail about structure of
process in memory...where is symbol table etc..located?

That can vary between two different versions of the same compiler
for the same system. There is no standard other than that which
might happen to be imposed by a particular operating system.

When symbol tables exist, they are usually not kept as part of the
process: they are usually kept as part of the file that stores the
executable. The structure of the files that store executables can
vary from version to version of the same operating system. There is
no one standard.

There are a some on-disk symbol table formats that OS developers tend
to implement so that they do not have to reinvent the functionality
and to make it easier to borrow debuggers such as 'gdb'. One of those
more common on-disk symbol table formats is known as "dwarf".

There are some on-disk executable image formats that OS developers
tend to implement so that they do not have to reinvent functionality
and to make it easier to borrow debuggers and compilers. Some of
the more common on-disk executable image formats are ELF and COFF.

The format of a symbol table on-disk or of an executable image on-disk
might be -very- different than the structure of an executing process.


The entire concept of "symbol table" and "executable image" on-disk
is outside of the C standard. For more information, you need to look
at the documentation for particular systems you are interested in.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,537
Members
45,022
Latest member
MaybelleMa

Latest Threads

Top