Thursday, September 2, 2010

Debugging Tools For Windows: Determine the BIOS Version and Other Useful Information

I saw another forum post where a fellow community member was able to determine the BIOS version and release date for a system based on debugging a small memory dump. Since the debugger command to find this information wasn't included in the post, I hammered the search engines for a few minutes and came up with essentially nothing about finding the BIOS release date and version in a small memory dump. Next, I combed through the help documentation provided with WinDbg and ended up using the classic search feature included in most compiled HTML documents.
To provide a demonstration for identifying the BIOS version, I crashed my system this morning and then used the resulting dump to experiment with various debugger commands to attempt to determine the BIOS version, release date, and system make/model. I stumbled upon the !sysinfo extension debugger command and looked at the accompanying documentation. From a crash dump perspective, you can get useful information in a long form and a short form, both are demonstrated below. The !sysinfo machineid command displays BIOS information and motherboard information fairly compactly, while the !sysinfo smbios command dumps the full content of the SMBIOS table and displays other useful information about the processors, physical memory, and a couple of other onboard devices.
Another neat trick is that this information can be gained from a live system without needing to reboot into debugging mode using LiveKD.

The short version:

0: kd> !sysinfo machineid 
Machine ID Information [From Smbios 2.3, DMIVersion 35, Size=2618] BiosMajorRelease = 2
BiosMinorRelease = 6
BiosVendor = Dell Inc.
BiosVersion = 2.6.0
BiosReleaseDate = 05/19/2008
SystemManufacturer = Dell Inc.
SystemProductName = Precision WorkStation 390
BaseBoardManufacturer = Dell Inc.
BaseBoardProduct = 0GH911 BaseBoardVersion = A00

The long version:

0: kd> !sysinfo smbios 
[SMBIOS Data Tables v2.3]
[DMI Version - 35]
[2.0 Calling Convention - No]
[Table Size - 2618 bytes]

[BIOS Information (Type 0) - Length 24 - Handle 0000h]
Vendor Dell Inc.
BIOS Version 2.6.0
BIOS Starting Address Segment f000
BIOS Release Date 05/19/2008
BIOS ROM Size 100000
BIOS Characteristics
07: - PCI Supported
09: - Plug and Play Supported
10: - APM Supported
11: - Upgradeable FLASH BIOS
12: - BIOS Shadowing Supported
15: - CD-Boot Supported
16: - Selectable Boot Supported
19: - EDD Supported
21: - Toshiba J-Floppy Supported
26: - Print Screen Device Supported
27: - Keyboard Services Supported
28: - Serial Services Supported
29: - Printer Services Supported
48: - System Vendor Reserved
49: - System Vendor Reserved
50: - System Vendor Reserved
51: - System Vendor Reserved
52: - System Vendor Reserved
BIOS Characteristic Extensions
00: - ACPI Supported
01: - USB Legacy Supported
04: - LS120-Boot Supported
08: - BIOS Boot Specification Supported
09: - Fn-Key NET-Boot Supported
10: - Specification Reserved
BIOS Major Revision 2
BIOS Minor Revision 6
EC Firmware Major Revision 255
EC Firmware Minor Revision 255
[System Information (Type 1) - Length 27 - Handle 0100h]
Manufacturer Dell Inc.
Product Name Precision WorkStation 390
Version [String Not Specified]
Serial Number
UUID 00000000-0000-0000-0000-000000000000
Wakeup Type Power Switch
SKUNumber [String Not Specified]
Family [String Not Specified]
[BaseBoard Information (Type 2) - Length 8 - Handle 0200h]
Manufacturer Dell Inc.
Product 0GH911
Version A00
Serial Number
[System Enclosure (Type 3) - Length 13 - Handle 0300h]
Manufacturer Dell Inc.
Chassis Type Tower
Version [String Not Specified]
Serial Number
Asset Tag Number
Bootup State Warning
Power Supply State Safe
Thermal State Safe
Security Status None
[Processor Information (Type 4) - Length 40 - Handle 0400h]
Socket Designation Microprocessor
Processor Type Central Processor
Processor Family beh - Specification Reserved
Processor Manufacturer Intel
Processor ID f6060000fffbebbf
Processor Version [String Not Specified]
Processor Voltage 92h - 1.8V
External Clock 1066MHz
Max Speed 5200MHz
Current Speed 2400MHz
Status Enabled Populated
Processor Upgrade ZIF Socket
L1 Cache Handle 0700h
L2 Cache Handle 0701h
L3 Cache Handle 0704h
Serial Number [String Not Specified]
Asset Tag Number [String Not Specified]
Part Number [String Not Specified]
[Cache Information (Type 7) - Length 19 - Handle 0700h]
Socket Designation [String Not Specified]
Cache Configuration 0180h - WB Enabled Int NonSocketed L1
Maximum Cache Size 0020h - 32K
Installed Size 0020h - 32K
Supported SRAM Type 0001h - Other
Current SRAM Type 0001h - Other
Cache Speed 0ns
Error Correction Type None
System Cache Type Data
Associativity 8-way Set-Associative
[Cache Information (Type 7) - Length 19 - Handle 0701h]
Socket Designation [String Not Specified]
Cache Configuration 0281h - Varies Enabled Int NonSocketed L2
Maximum Cache Size 1000h - 4096K
Installed Size 1000h - 4096K
Supported SRAM Type 0001h - Other
Current SRAM Type 0001h - Other
Cache Speed 0ns
Error Correction Type Multi-Bit ECC
System Cache Type Unified
Associativity 16-way Set-Associative
[Cache Information (Type 7) - Length 19 - Handle 0704h]
Socket Designation [String Not Specified]
Cache Configuration 0282h - Varies Enabled Int NonSocketed L3
Maximum Cache Size 0000h - 0K
Installed Size 0000h - 0K
Supported SRAM Type 0001h - Other
Current SRAM Type 0001h - Other
Cache Speed 0ns
Error Correction Type Multi-Bit ECC
System Cache Type Unified
Associativity Unknown
[Onboard Devices Information (Type 10) - Length 6 - Handle 0a02h]
Number of Devices 1
01: Type Ethernet [enabled]
01: Description Broadcom 5751 NetXtreme Gigabit Controller
[Onboard Devices Information (Type 10) - Length 6 - Handle 0a03h]
Number of Devices 1
01: Type Sound [enabled]
01: Description High Definition Audio Controller
[OEM Strings (Type 11) - Length 5 - Handle 0b00h]
Number of Strings 1
1 www.dell.com
[Physical Memory Array (Type 16) - Length 15 - Handle 1000h]
Location 03h - SystemBoard/Motherboard
Use 03h - System Memory
Memory Error Correction 05h - Single-bit ECC
Maximum Capacity 8388608KB
Memory Error Inf Handle [Not Provided]
Number of Memory Devices 4
[Memory Device (Type 17) - Length 27 - Handle 1100h]
Physical Memory Array Handle 1000h
Memory Error Info Handle [No Errors]
Total Width 64 bits
Data Width 64 bits
Size 1024MB
Form Factor 09h - DIMM
Device Set [None]
Device Locator DIMM_1
Bank Locator [String Not Specified]
Memory Type 12h - DDR
Type Detail 0080h - Synchronous
Speed 533MHz
Manufacturer 2CFFFFFFFFFFFFFF
Serial Number
Asset Tag Number
Part Number 16HTF12864AY-53EB1
[Memory Device (Type 17) - Length 27 - Handle 1101h]
Physical Memory Array Handle 1000h
Memory Error Info Handle [No Errors]
Total Width 64 bits
Data Width 64 bits
Size [Not Populated]
Form Factor 09h - DIMM
Device Set [None]
Device Locator DIMM_3
Bank Locator [String Not Specified]
Memory Type 12h - DDR
Type Detail 0080h - Synchronous
Speed 533MHz
Manufacturer FFFFFFFFFFFFFFFF
Serial Number
Asset Tag Number
Part Number
[Memory Device (Type 17) - Length 27 - Handle 1102h]
Physical Memory Array Handle 1000h
Memory Error Info Handle [No Errors]
Total Width 64 bits
Data Width 64 bits
Size 1024MB
Form Factor 09h - DIMM
Device Set [None]
Device Locator DIMM_2
Bank Locator [String Not Specified]
Memory Type 12h - DDR
Type Detail 0080h - Synchronous
Speed 533MHz
Manufacturer 2CFFFFFFFFFFFFFF
Serial Number
Asset Tag Number
Part Number 16HTF12864AY-53EB1
[Memory Device (Type 17) - Length 27 - Handle 1103h]
Physical Memory Array Handle 1000h
Memory Error Info Handle [No Errors]
Total Width 64 bits
Data Width 64 bits
Size [Not Populated]
Form Factor 09h - DIMM
Device Set [None]
Device Locator DIMM_4
Bank Locator [String Not Specified]
Memory Type 12h - DDR
Type Detail 0080h - Synchronous
Speed 533MHz
Manufacturer FFFFFFFFFFFFFFFF
Serial Number
Asset Tag Number
Part Number
[Memory Array Mapped Address (Type 19) - Length 15 - Handle 1301h]
Starting Address 00000000h
Ending Address 001fffffh
Memory Array Handle 1000h
Partition Width 01
[Memory Device Mapped Address (Type 20) - Length 19 - Handle 1400h]
Starting Address 00000000h
Ending Address 001fffffh
Memory Device Handle 1100h
Mem Array Mapped Adr Handle 1301h
Partition Row Position 01
Interleave Position 01
Interleave Data Depth 01
[Memory Device Mapped Address (Type 20) - Length 19 - Handle 1402h]
Starting Address 00000000h
Ending Address 001fffffh
Memory Device Handle 1102h
Mem Array Mapped Adr Handle 1301h
Partition Row Position 01
Interleave Position 02
Interleave Data Depth 01
Any source

No comments:

Post a Comment