Just Let It Flow

June 2, 2009

Stats Life

Filed under: Windows — adeyblue @ 2:16 am

As a corollary to the import survey from last time, I decided to go slightly deeper and more up to date by providing some more system32 stats on the current Win 7 release candidate. As there doesn’t seem to be a collective “What’s New in Windows 7” page on MSDN yet, and due to undocumented functions, will probably never be a complete official changeset, I’ve also compiled a list of all modules that have changed exports one in glorious[1] CSS technicolor.

So on with the show:

Modules: 2379 (30% more than Server 2008 SP1)
Exported Functions: 93425
Total Number of Imports: 307544
Modules Exporting DllMain: 96
Ordinal Only exports: 26702
Unsanitized Stdcall exports (Name@Number): 1054
C++ decorated exports: 20440
Unimported Exports: 72749

The 5 biggest importers (both static and delayed):

Shell32.dll        1949 functions
ieframe.dll        1508
explorerframe.dll  1332
wmp.dll            1291
mmc.exe            1144

Just static imports:

explorerframe.dll  1232 functions
shell32.dll        1199
ieframe.dll        1190
mspaint.exe        1020
mmc.exe             973

The 10 biggest exporters:

mfc42.dll      6400 functions
mfc42u.dll     6397	   
mfc40.dll      5523	   
mfc40u.dll     5517	   
dui70.dll      3261	   
msvcp71.dll    2903	   
msvcp60.dll    2290	   
ntoskrnl.exe   2184	   
ntdll.dll      1989	 
msvcrt.dll     1396
Most Popular Imports:
msvcrt.dll   - _initterm (1815 modules)	   
msvcrt.dll   - _amsg_exit (1812)	   
msvcrt.dll   - _XcptFilter (1808)	   
kernel32.dll - GetTickCount (1775)	   
kernel32.dll - QueryPerformanceCounter (1774)
kernel32.dll - GetSystemTimeAsFileTime (1770)
kernel32.dll - SetUnhandledExceptionFilter (1767)
kernel32.dll - UnhandledExceptionFilter (1767)
kernel32.dll - Sleep (1755)
kernel32.dll - GetCurrentThreadId (1733)

And perhaps the most “valuable” of the productions, a summary of the changes from Server 2008 SP1 including added/removed exports and added/removed modules with full export lists. I realize a comparison with Vista SP1 would be more apt, but I don’t have access to a copy of that so Server 2008 will have to do. If you’re using IE you’ll have to be patient, the document does take a long time to render, when the status bar indicates “done” it really isn’t, it’s still rendering so give it a minute.

The Access 2000 database I made which contains import, export, and module data for NT4 SP’s 1,3 and 6, 98 SE, Server 2000 SP4, XP SP’s 0,1,2 and 3, Server 2003 SP’s 0 and 2, Server 2008 SP1, and the 7 RC is available for download from the Windows Platform Changes page.

Happy Querying 🙂

[1] Claims of gloriousness may be slightly fabricated

Powered by WordPress