- About Us
According to the project home page, dmidecode's purpose is to report "information about your system's hardware as described in your system BIOS according to the SMBIOS/DMI standard... This information typically includes system manufacturer, model name, serial number, BIOS version, asset tag as well as a lot of other details of varying level of interest and reliability depending on the manufacturer. This will often include usage status for the CPU sockets, expansion slots (e.g. AGP, PCI, ISA) and memory module slots, and the list of I/O ports (e.g. serial, parallel, USB)."
Alan Cox has since moved on to other things, and dmidecode has been rewritten and is now maintained by Jean Delvare. The code is used in a number of other programs, including most interestingly the Linux kernel.
In a perfect world, all manufacturers would write accurate and complete DMI table entries in the BIOS. Then people could do things like inventory all the PCs in the enterprise down to a tag number in the blink of an eye. Alas, we aren't anywhere near that in reality.
The amount and accuracy of information provided varies from manufacturer to manufacturer, and from model to model. Here's what dmidecode reports on the first few items in DMI on my homebuilt system:
# dmidecode 2.5 SMBIOS 2.2 present. 42 structures occupying 1115 bytes. Table at 0x000F0000. Handle 0x0000 DMI type 0, 19 bytes. BIOS Information Vendor: Phoenix Technologies, LTD Version: 6.00 PG Release Date: 07/25/2003 Address: 0xE0000 Runtime Size: 128 kB ROM Size: 512 kB Characteristics: ISA is supported PCI is supported PNP is supported APM is supported BIOS is upgradeable BIOS shadowing is allowed Boot from CD is supported Selectable boot is supported BIOS ROM is socketed EDD is supported 5.25"/360 KB floppy services are supported (int 13h) 5.25"/1.2 MB floppy services are supported (int 13h) 3.5"/720 KB floppy services are supported (int 13h) 3.5"/2.88 MB floppy services are supported (int 13h) Print screen service is supported (int 5h) 8042 keyboard services are supported (int 9h) Serial services are supported (int 14h) Printer services are supported (int 17h) CGA/mono video services are supported (int 10h) ACPI is supported USB legacy is supported AGP is supported LS-120 boot is supported ATAPI Zip drive boot is supported Handle 0x0001 DMI type 1, 25 bytes. System Information Manufacturer: VIA Technologies, Inc. Product Name: KT400A-8235 Version: Serial Number: UUID: Not Settable Wake-up Type: Power Switch Handle 0x0002 DMI type 2, 8 bytes. Base Board Information Manufacturer: http://www.abit.com.tw/ Product Name: KD7A(VIA KT400A-8235) Version: 1.x Serial Number: Handle 0x0003 DMI type 3, 13 bytes. Chassis Information Manufacturer: Type: Desktop Lock: Not Present Version: Serial Number: Asset Tag: Boot-up State: Unknown Power Supply State: Unknown Thermal State: Unknown Security Status: Unknown Handle 0x0004 DMI type 4, 32 bytes. Processor Information Socket Designation: Socket 7 Type: Central Processor Family: Duron Manufacturer: AMD ID: 81 06 00 00 FF FB 83 03 Signature: Family 6, Model 8, Stepping 1 Flags: FPU (Floating-point unit on-chip) VME (Virtual mode extension) DE (Debugging extension) PSE (Page size extension) TSC (Time stamp counter) MSR (Model specific registers) PAE (Physical address extension) MCE (Machine check exception) CX8 (CMPXCHG8 instruction supported) APIC (On-chip APIC hardware supported) SEP (Fast system call) MTRR (Memory type range registers) PGE (Page global enable) MCA (Machine check architecture) CMOV (Conditional move instruction supported) PAT (Page attribute table) PSE-36 (36-bit page size extension) MMX (MMX technology supported) FXSR (Fast floating-point save and restore) SSE (Streaming SIMD extensions) Version: AMD Athlon(tm) XP Voltage: 1.6 V External Clock: 135 MHz Max Speed: 2250 MHz Current Speed: 1667 MHz Status: Populated, Enabled Upgrade: ZIF Socket L1 Cache Handle: 0x000A L2 Cache Handle: 0x000B L3 Cache Handle: No L3 Cache
More on page 2...