Understanding Dmi
You can use dmidecode to find a wealth of information about your hardware on a host of different operating systems, such as Linux, various BSD, Solaris and more. While there are other hardware detection utilities such as lshw, dmidecode stands out because of its reliance on reading the DMI table. But what is DMI?
DMI stands for Desktop Management Interface. The DMI table on a machine contains a host of information that’s not readily available elsewhere, or at all. For instance, you’ll be hard-pressed to find a tool which can identify the serial number or asset number of a particular component. The Linux kernel relies on information such as this to correctly identify the motherboard and other components on your system and thus install the correct drivers.
If you’re looking to upgrade an older machine, you can use the data provided by the DMI table to identify the fastest supported processor, or the maximum amount of RAM you can use with the existing motherboard – which is particularly useful if you’re not sure what the exact model of the motherboard is and therefore can’t look it up on the manufacturer’s website.
Unlike the other utilities which can also be used to probe your system, the DMI table only provides information about existing core hardware components in your system, such as the processor, RAM, motherboard and so on. This means you can’t use it for identifying a USB pen drive or the manufacturer of a plug-in webcam, for example. For this purpose, you would be better off with the good ol’ dmesg.