O software pode diferenciar entre um computador desktop e um laptop?
Muitas licenças de software são bastante restritivas quando se trata de como e onde você pode instalar um programa, mas quão bons são esses programas para determinar em que tipo de dispositivo eles estão instalados? O post de perguntas e respostas do SuperUser de hoje tem a resposta para a pergunta de um curioso leitor.
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..
Foto cedida por Robert (Flickr).
A questão
Leitor de superusuário Abhi quer saber se o software pode realmente diferenciar entre um computador de mesa e um laptop:
Uma licença para software intensivo de CPU, como o Pix4D, diz que ele pode ser instalado em dois dispositivos, mas com uma condição. Lendo a boa impressão, parece que um dispositivo pode ser uma estação de trabalho / estação de trabalho de processamento completo, enquanto o segundo deve ser um laptop ou dispositivo móvel.
Como o software saberia que tipo de dispositivo está instalado? Há brindes nas especificações de hardware para determinar algo como isto (isto é, a presença de uma bateria)?
Dado que o software é totalmente funcional em ambos os dispositivos, essa condição se tornaria irrelevante se eu apenas comprasse um laptop de última geração que é tão rápido quanto o desktop??
O software pode realmente diferenciar entre um computador desktop e um laptop??
A resposta
Os contribuidores do SuperUser, abnev e Technik Empire, têm a resposta para nós. Primeiro, abnev:
No Linux, você pode executar o seguinte comando:
- sudo dmidecode -string tipo de chassi
Em um laptop, isso retornará laptop, notebook, portátil ou sub-notebook (dependendo do fabricante).
Para Windows, consulte a seguinte documentação do TechNet para determinar o tipo de chassi do computador: Identificando o tipo de chassi de um computador
Seguido pela resposta do Technik Empire:
Para adicionar à outra resposta aqui em relação ao Linux, o software Windows também pode acessar essas informações através de vários métodos / objetos WinAPI fornecidos. Um exemplo é o Win32_ComputerSystem, que, entre outros, tem membros como:
Valores possíveis incluem:
Quanto ao modo como o Windows sabe disso, embora eu não possa dizer com certeza porque atualmente não tenho o código-fonte do Windows e nenhum link de documentação oficial, eu diria que é uma simples questão da ID de hardware dentro do computador fornecer essas informações para o sistema operacional. sistema.
Como o Windows possui uma enorme rede de parceiros que envia seus drivers diretamente para a Microsoft (para atualizações de driver através do Windows Update e drivers “padrão” para incluir na mídia de instalação), é muito fácil para o Windows descobrir exatamente que tipo de computador você tem instalado em. Apenas pelo ID da CPU sozinho, você pode determinar se é um computador de mesa ou um laptop.
Tem algo a acrescentar à explicação? Som desligado 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.