Como o meu PC sabe que tipo de RAM está instalado?
Há tantas coisas que um computador moderno faz que nós simplesmente damos por garantido, mas às vezes é divertido espiar sob o capô e ver como tudo funciona. Hoje estamos investigando como exatamente o seu computador sabe que tipo e quantidade de RAM você instalou.
A sessão de perguntas e respostas de hoje nos é oferecida por cortesia do SuperUser - uma subdivisão do Stack Exchange, um agrupamento de sites de perguntas e respostas conduzido pela comunidade..
A questão
Leitor de SuperUser Celeritas quer saber como seu computador pode detectar instantaneamente que tipo de RAM está dentro:
Como o Mac OS X pode dizer que tipo de RAM está na máquina? Por exemplo, eu estava trabalhando em um que tinha RAM DDR3 @ 1600MHz e achei que não era possível conhecer a RAM sem abrir o gabinete fisicamente e olhar para ele. Como isso pode ser feito em outros sistemas??
Obviamente, é bastante útil para o sistema operacional saber a que tipo de RAM ele tem acesso, mas por qual mecanismo ele determina essas informações??
As respostas
O colaborador do SuperUser, UltraSawBlade, oferece a seguinte explicação:
Os sticks de RAM têm um pequeno chip chamado de Serial Presence Detect, que contém informações como capacidade, horários preferidos, fabricante e até mesmo um número de série..
As informações do SPD podem ser acessadas pelos sistemas operacionais usando o barramento i2c (que também inclui elementos como sensores de temperatura). Eu acho que você pode ler diretamente os SPDs do Linux usando vários utilitários i2c.
Esta imagem do artigo da Wikipédia tem uma boa imagem [vista acima].
Outros contribuidores oferecem maneiras para o usuário final acessar as informações da i2c por conta própria. AthomSfere escreve:
No Windows:
wmic memoryChip obter /?
Fornecerá várias informações de RAM que você pode solicitar diretamente no prompt de comando.
Por exemplo,
o memorychip wmic obtém o número serial
Dá o número de série. Você também pode usar
Rapidez
,Modelo
as vezes,Fabricante
e mais.WMI é o método do Windows de consultar dados SMBIOS. Apple, Linux, Windows e qualquer outra pessoa que queira rodar na maioria dos hardwares feitos precisam suportar SMBIOS em algum nível, por diferentes razões.
Você pode usar SMBIOS (por exemplo, através de WMI ou WMIC no Windows) para também coletar informações sobre o disco rígido, informações de rede (é uma placa 10/100 ou 10/100/1000?).
Para dar um passo adiante, cada fabricante tem um código para endereços MAC em NICs. RAM também tem um código de fabricantes. Então tudo que você precisa fazer para obter seu código, por exemplo meus 2 x2GB neste laptop são 830B, é construir um banco de dados para os fabricantes (830B pode ser uma marca e então revendido também!) E também quais modelos significam o quê. É assim que funciona o CPUz, acredito - consultas básicas e um banco de dados realmente completo e atual.
Para mais exemplos de como acessar essas informações nas máquinas Windows, Linux e OS X, confira todas as respostas dos contribuidores aqui.
Tem algo a acrescentar à explicação? Soe fora nos comentários. Quer ler mais respostas de outros usuários do Stack Exchange com experiência em tecnologia? Confira o tópico de discussão completo aqui.