Is there a way to programmatically find the north bridge on the chipset, the names of the south bridge and other information about the hardware on the windows?

Is there a way to programmatically find the north bridge system chipset, south bridge names, and other hardware information on the windows? I do not think WMI provides this information. I am trying to figure out how tools like hwinfo and cpuinfo find this information.

+6
source share
1 answer

Usually, people use this material through WMI, but it cannot provide useful information many times, even providing β€œincorrect” information, because sometimes it relies on information provided by the supplier from the BIOS (via SMBIOS), which often comes up empty or incorrect. instead of communicating with specific hardware.

I already went through this experience to get information about RAM. WMI provided incorrect BIOS information, and I found that the RAM chips came with a special SPD (Serial Presence Detect) chip that I needed to communicate with. My employer eventually chose the CPUID API.

Here the author of CPU-Z talks a bit about this in an interview:

http://www.techpowerup.com/mobile/reviews/Interviews/Franck_Delattre/1.html

To get this information, you need to find a way to interact with the PCI configuration space in kernel mode using the driver, or go to an alternative API that will do this for you.

Here are some links that I made during this time:

http://www.codeproject.com/Articles/35378/Access-Physical-Memory-Port-and-PCI-Configuration

http://support.microsoft.com/?scid=kb;en-us;253232&x=3&y=13

http://www.hollistech.com/Resources/Misc%20articles/getbusdata.htm

http://www.osronline.com/showThread.CFM?link=176210#T4

Also, I think it's worth mentioning the SetupDi features in Windows, which sometimes can provide information that WMI cannot.

+3
source

Source: https://habr.com/ru/post/920614/


All Articles