开发者

What's the difference between retail symbols and checked symbols?

开发者 https://www.devze.com 2023-02-28 17:46 出处:网络
Windows XP with Ser开发者_开发技巧vice Pack 3 x86 retail symbols, all languages (File size: 209 MB - Most customers want this package.)
  1. Windows XP with Ser开发者_开发技巧vice Pack 3 x86 retail symbols, all languages (File size: 209 MB - Most customers want this package.)
  2. Windows XP with Service Pack 3 x86 checked symbols, all languages (File size: 202 MB)

Quoted from here.

What's the difference between retail symbols and checked symbols?


In general, the difference between "retail" and "checked" is similar to a "release" versus "debug" build. Microsoft provides two different kernels, one compiled for regular use and one with extra debug information. The two different builds also have two different symbol tables.


If you are an IT or Computer Science student in college (or if you happen to have access to MSDN's e-Academy software), you will probably have access to the special debug/checked builds of Windows Vista/7. Some professionals in the software development and engineering industries may have installations of the special debug builds as well. Otherwise, whether you come across Home or Professional editions--even Enterprise and Business editions--it will most likely be the retail version. All of those versions will require the retail version of the debugging symbols. However, if you have a debug/checked build of Windows installed, you will need the checked debug symbols.

As Greg has explained, the debugging symbols are basically an address. As far as I understand, they're basically a proper name for a function or item in memory, so when a user is debugging a process or viewing a callstack, he or she will be able to see usable information instead of address offsets.

Greg answered this already as well, but I'll try to elaborate. The retail and debug builds of Windows need different versions of symbols because the operating system files are compiled differently to include more useful debugging information. This makes the addresses for the symbols move ever so slightly, so a different package is required to correctly identify everything in memory.

The one thing I'm confused by is why the checked symbol package is smaller. I would have figured it would be bigger. A guru might know the reason for that. Speaking of which, I'd like to make it clear that I'm no debugger. I'm just fascinated with the science behind it. Nonetheless, I hope this helped you out.

Good luck gdb.


For practical purposes, desription of both packages was given in microsoft article https://developer.microsoft.com/en-us/windows/hardware/download-symbols . For been precise,

"Almost all customers require the symbols for the retail version. If you are debugging a special version of Windows with extra debugging information, then you should download the symbols for the checked version."

In other words, most likely you need retail version.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号