Serial Presence Detect Information

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • foolsbar

    #1

    Serial Presence Detect Information

    Hi there,

    I'm trying to write a C# application that gets information from a
    machine such as operating system, memory, cpu etc. I'm using WMI for
    this, and it all seems to work fine apart from the fact that
    Win32_PhysicalM emory doesn't have any instances. I have therefore come
    to the conclusion that I need to try and access the memory information
    using the Serial Presence Detect (SPD) information on the EEPROM on the
    memory stick(s). However, I have absolutly no idea how to get this
    information.

    I have read the SPD spec document, but this just tells me which bytes
    contain which bits of information, and not how to access that
    information in the first place.

    Any pointers in the right direction would be much appreciated - or any
    code excerpts would be even better!! :)

    Thanks in advance

  • Willy Denoyette [MVP]

    #2
    Re: Serial Presence Detect Information


    "foolsbar" <foolsbar@yahoo .com> wrote in message
    news:1138704515 .707455.82640@g 47g2000cwa.goog legroups.com...
    | Hi there,
    |
    | I'm trying to write a C# application that gets information from a
    | machine such as operating system, memory, cpu etc. I'm using WMI for
    | this, and it all seems to work fine apart from the fact that
    | Win32_PhysicalM emory doesn't have any instances. I have therefore come
    | to the conclusion that I need to try and access the memory information
    | using the Serial Presence Detect (SPD) information on the EEPROM on the
    | memory stick(s). However, I have absolutly no idea how to get this
    | information.
    |
    | I have read the SPD spec document, but this just tells me which bytes
    | contain which bits of information, and not how to access that
    | information in the first place.
    |
    | Any pointers in the right direction would be much appreciated - or any
    | code excerpts would be even better!! :)
    |
    | Thanks in advance
    |

    Hmmm... Win32_PhysicalM emory should at least return the main mamory bank
    info (main board devices).
    As for all other memory devices, no instances are available if the device
    driver is not WMI compliant, and I don't know any of them being WMI
    compliant.

    Willy.



    Comment

    • foolsbar

      #3
      Re: Serial Presence Detect Information

      Just as an addition to this, I can get instances of
      Win32_PhysicalM emory on different machines, just not on the one I
      want!! I assume it's something to do with the BIOS not releasing the
      information to Windows, hence my need to try this alternative method.

      Comment

      • Willy Denoyette [MVP]

        #4
        Re: Serial Presence Detect Information


        "foolsbar" <foolsbar@yahoo .com> wrote in message
        news:1138706342 .423274.196200@ g47g2000cwa.goo glegroups.com.. .
        | Just as an addition to this, I can get instances of
        | Win32_PhysicalM emory on different machines, just not on the one I
        | want!! I assume it's something to do with the BIOS not releasing the
        | information to Windows, hence my need to try this alternative method.
        |

        If the Bios can't read or detect the SPD table, you won't be able to read it
        either. Anyway, a warning/error message should be given at boot time. Can
        you access the DIMM characteristics from the Bios set-up, are you sure the
        DIMM's are of the correct type?

        Willy.


        Comment

        • foolsbar

          #5
          Re: Serial Presence Detect Information

          Hi Willy,

          Thanks for keeping up with this! Just to clarify, Win32_PhysicalM emory
          is empty (i.e. no instances), but it appears the SPD table is not, as
          using CPU-Z (http://www.cpuid.org/cpuz.php) does give me the
          information I need. I just need to figure out how to access the SPD
          table, which at this stage is something I haven't got a clue how to do!!

          Comment

          • Willy Denoyette [MVP]

            #6
            Re: Serial Presence Detect Information


            "foolsbar" <foolsbar@yahoo .com> wrote in message
            news:1138719550 .153160.37930@f 14g2000cwb.goog legroups.com...
            | Hi Willy,
            |
            | Thanks for keeping up with this! Just to clarify, Win32_PhysicalM emory
            | is empty (i.e. no instances), but it appears the SPD table is not, as
            | using CPU-Z (http://www.cpuid.org/cpuz.php) does give me the
            | information I need. I just need to figure out how to access the SPD
            | table, which at this stage is something I haven't got a clue how to do!!
            |

            The info contained in Win32_PhysicalM emory is not what is in the SPD tables.
            The SPD is read by the Bios to set the memory timing at boot time to a safe
            and memory manufacturer supported value, but this value is never supplied to
            the user through WMI. How you can read the SPD from user code depends on the
            Bios and chipset manufacturer and is kept as a 'secret' (but of course there
            are leaks), all I know is that you can't read these tables from C#, and it's
            not what you are looking for anyway.

            Willy.



            Comment

            Working...