After reading some stuff it seems I can map the SMBIOS memory and parse it. I have no idea on how to go about this. I can't use any managed code as I would like this to be compilable under any OS.
Does anyone have any code examples how to go about this?
On most systems, it is not mapped into user-mode accessible memory, so you need to call some system API.
On Windows, you can call GetSystemFirmwareTable.