Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

windbg: private pdb symbols

what is the difference between (private pdb symbols) and (pdb symbols)?

like image 243
Bin Chen Avatar asked Oct 27 '09 11:10

Bin Chen


People also ask

What is the difference between public symbols and private symbols?

The public symbol data contains symbol decorations. When accessing private symbols, private symbol data is always used because these symbols are not included in the public symbol table. These symbols are never decorated.

What are private symbols?

Symbols such as data structure names, global variables visible in only one object file, local variables, and line number information are not always required for debugging, although they are useful for a more in-depth debugging session. These are called private symbols.

Which symbol is used to prefix the private variables?

In computer programming, a sigil (/ˈsɪdʒəl/) is a symbol affixed to a variable name, showing the variable's datatype or scope, usually a prefix, as in $foo , where $ is the sigil.


2 Answers

(private pdb symbols) are the full symbols with all the details.

(pdb symbols) are public symbols, i.e. the symbols you would export to third parties to assist debugging.

Please see this for additional details http://msdn.microsoft.com/en-us/library/ms789520.aspx

like image 101
Brian Rasmussen Avatar answered Nov 26 '22 23:11

Brian Rasmussen


Typically, public symbols are only enough to get a stack trace - function names, FPO data, etc.

Private is a superset of public and also contains global and local variables, types, and source line information. Private symbols provide a much richer debugging experience, but expose a lot of implementation details

like image 37
Michael Avatar answered Nov 26 '22 23:11

Michael