Det finns så många saker som en modern dator gör som vi helt enkelt tar för givet, men ibland är det kul att kika under huven och se hur allt fungerar. Idag undersöker vi hur exakt din dator vet vilken typ och mängd RAM du har installerat.
Dagens Fråga & Svar-session kommer till oss med tillstånd av SuperUser - en underavdelning av Stack Exchange, en community-driven gruppering av Q & A-webbplatser.
Frågan
SuperUser-läsaren Celeritas vill veta hur hans dator omedelbart kan upptäcka vilken typ av RAM-minne som finns inuti:
Hur kan Mac OS X berätta vilken typ av RAM som finns i maskinen? Till exempel arbetade jag med en som hade DDR3 RAM @ 1600MHz och jag trodde att det inte var möjligt att känna till RAM utan att fysiskt öppna fodralet och titta på det. Hur kan detta göras på andra system?
Det är uppenbart att det är ganska användbart för operativsystemet att veta vilken typ av RAM det har tillgång till, men med vilken mekanism bestämmer den informationen?
Svaren
SuperUser-bidragsgivare UltraSawBlade erbjuder följande förklaring:
RAM-pinnar har ett litet chip som kallas Serial Presence Detect , som innehåller information som kapacitet, föredragna tidpunkter, tillverkare och till och med ett serienummer.
SPD-information är tillgänglig för operativsystem som använder i2c-bussen (som också inkluderar saker som temperatursensorer). Jag tror att du direkt kan läsa SPD: er från Linux med olika i2c-verktyg.
Den här bilden från Wikipedia-artikeln har en bra bild av den [seen above].
Andra bidragsgivare erbjuder sätt som slutanvändaren kan komma åt i2c-informationen själva. AthomSfere skriver:
På Windows:
wmic memoryChip get /?Kommer att ge dig olika RAM-information som du kan be om direkt från kommandotolken.
Till exempel,
wmic memorychip få serienummerGer dig serienumret. Du kan också använda
Hastighet,Modellibland,Tillverkareoch mer.WMI är Windows-metoden att fråga SMBIOS data. Apple, Linux, Windows och alla andra som vill köra på de flesta tillverkade hårdvaror behöver stödja SMBIOS på någon nivå, av olika skäl.
Du kan använda SMBIOS (t.ex. via WMI eller WMIC i Windows) för att också samla in hårddiskinformation, nätverksinformation (är det ett 10/100 eller 10/100/1000 kort?).
För att ta det ett steg längre har varje tillverkare en kod för MAC-adresser på nätverkskort. RAM har också en tillverkarkod. Så allt du behöver göra för att få sin kod, till exempel mina 2 x2GB i den här bärbara datorn är 830B, är att bygga en databas för tillverkarna (830B kan vara ett varumärke och sedan säljas igen!) Och även vilka modeller betyder vad. Det är så CPUz fungerar tror jag - grundläggande frågor och en riktigt komplett och aktuell databas.
För fler exempel på hur du får åtkomst till denna information på Windows-, Linux- och OS X-maskiner, kolla in alla svar från bidragsgivare här .
Har du något att lägga till förklaringen? Ljud av i kommentarerna. Vill du läsa fler svar från andra tekniskt kunniga Stack Exchange-användare? Kolla in hela diskussionstråden här .