O software pode diferenciar entre um laptop e um desktop?


42

Uma licença para software com uso intenso de CPU como o Pix4D diz que pode ser instalado em dois dispositivos - mas com uma condição. Lendo a impressão mais fina, parece que um dispositivo pode ser uma estação de trabalho / desktop com processamento completo, enquanto o outro deve ser um dispositivo móvel / laptop.

Como o software saberia? Existem brindes nas especificações de hardware para determinar algo como isto, por exemplo, presença de uma bateria?
Dado que o software é totalmente funcional nas duas máquinas, essa condição não se tornaria irrelevante se eu comprasse um laptop de ponta que é tão rápido quanto a estação de trabalho?


Em Dispositivos e impressoras, você pode ver um dispositivo que representa seu PC. Se for um laptop, ele mostrará um ícone de laptop. Porém, não tenho certeza se outro software pode ou irá usar essas informações.
Ecesc #

17
A presença de uma bateria é provavelmente boa, mas tenho certeza de que alguns no-breaks também contam como baterias.
User253751

2
Eu acho que o Pix4D não verifica que tipo de hardware é usado. Apenas fornece duas licenças diferentes. Em uma das licenças, apenas o "modo de processamento de verificação rápida" é permitido, enquanto a outra é uma licença completa.
user797717

1
O software pode coletar essas informações do sistema operacional - caso contrário, sugiro que a presença de um botão de tampa (ou seja, o laptop sentindo quando a tampa está fechada) é provavelmente uma oferta inesgotável para laptops. é claro que isso não cobre tudo, pois você recebe phablets / all-in-ones e outros.
jammypeach

2
O software ainda tenta aplicá-lo? Ou é apenas um sistema de honra?
Whatsisname

Respostas:


54

No Linux, você pode executar o seguinte comando:

sudo dmidecode --string chassis-type

Em um laptop, isso retornará "Laptop", "Notebook" "Portable" ou "Sub Notebook" (dependendo do fabricante).

Para Windows, consulte a seguinte documentação para determinar o tipo de chassi do seu computador:

Identificando o tipo de chassi de um computador


21
Heh, que a caixa de pizza realmente me confundiu até que eu li este en.wikipedia.org/wiki/Pizza_box_form_factor
eCube

Eu tinha um laptop que se identificou como tal uma vez. Era um pedaço de lixo; p
Journeyman Geek

5
Tanto o meu desktop quanto o meu laptop se identificam como 'Outros'. Espero que muitos se identifiquem corretamente, veja bem.
ChrisInEdmonton

@ dma1324 Uau, 117 mips por menos de $ 100k!
Michael

3
Meu Chromebook se identificou como uma área de trabalho.
dramzy

13

Para adicionar à outra resposta aqui, re: Linux, o software Windows também pode acessar essas informações através de vários métodos / objetos fornecidos pelo WinAPI. Um exemplo é o Win32_ComputerSystem , que entre outros, possui membros como:

PCSystemTypeEx

Data type: uint16
Access type: Read-only

Type of the computer in use, such as laptop, desktop, or Tablet.

Os valores possíveis incluem:

Unspecified (0)
Desktop (1)
Mobile (2)
Workstation (3)
Enterprise Server (4)
SOHO Server (5)
Appliance PC (6)
Performance Server (7)
Slate (8)
Maximum (9)

Quanto ao modo como o Windows sabe disso, embora eu não possa dizer com certeza porque não tenho o código-fonte do Windows nem os links de documentação oficial atualmente, eu diria que é uma questão simples das IDs de hardware no computador, fornecendo essas informações para o sistema operacional. Como o Windows possui uma rede enorme de parceiros que envia seus drivers diretamente para a Microsoft (para atualizações de drivers via Windows Update, drivers "padrão" para incluir na mídia de instalação), é muito fácil para o Windows descobrir exatamente que tipo de computador você instalou sobre isso. Apenas pela CPU ID sozinho, você poderia fazer uma aposta bastante segura se a máquina é um laptop ou desktop.


Sim, mas como é que o Windows sabe
Leveza raças com Monica

3
@PreferenceBean O kernel do Windows pergunta ao servidor Windows sobre os IDs de hardware e o Windows Server pede linux? ;)

2
Na resposta, por favor
Lightness Races with Monica

6
O CPUID é fortemente sugestivo; mas não é infalível. Às vezes, os desktops com fator de forma pequeno usam CPUs móveis, e existem alguns "laptops" de jogos de ponta que foram criados usando CPUs de desktop.
Dan Neely

1
"O Dmidecode relata informações sobre o hardware do seu sistema, conforme descrito no BIOS do sistema, de acordo com o padrão SMBIOS / DMI " nongnu.org/dmidecode Quase certamente o WMI obtém as informações no mesmo local. Afinal, é para isso que servem os padrões.
187 Ben Ben

3

Existem várias dicas. Um é o "tipo de sistema" nos dados DMI. Outra é se o sistema possui ou não uma bateria. Outro é o tipo de processador, chipset, controlador de tela, tela etc. Nenhuma delas é infalível, mas, reunindo-as, seria muito fácil escrever um classificador que agrupasse os sistemas em "quase certamente um laptop", "quase certamente um área de trabalho / estação de trabalho "e" indeterminado ".

Mas, honestamente, a aplicação do licenciamento por meio de métodos técnicos / de ativação tende a se concentrar na prevenção de abusos em larga escala. O abuso em pequena escala é mais provável de ser tratado por meio de auditorias, funcionários descontentes denunciando seus chefes etc.

Dado que o software é totalmente funcional nas duas máquinas, essa condição não se tornaria irrelevante se eu comprasse um laptop de ponta que é tão rápido quanto a estação de trabalho?

Se você pode comprar um laptop tão rápido quanto a sua estação de trabalho, deve ter uma estação de trabalho muito baixa (ou antiga).


2

O código usado para escrever o software pode determinar em que tipo de "chassi" ele está sendo executado.

Veja esta resposta para um exemplo em C #. Isso pode determinar se o computador é um dos seguintes tipos (alguns são aparentemente repetidos e / ou desatualizados):

  • De outros
  • Desconhecido
  • Área de Trabalho
  • LowProfileDesktop
  • PizzaBox
  • MiniTower
  • Torre
  • Portátil
  • Computador portátil
  • Caderno
  • Portátil
  • DockingStation
  • Tudo em um
  • SubNotebook
  • SpaceSaving
  • Lancheira
  • MainSystemChassis
  • ExpansionChassis
  • SubChassis
  • BusExpansionChassis
  • PeripheralChassis
  • StorageChassis
  • RackMountChassis
  • SealedCasePC

Também sobre o meu comentário dizendo que eles são aparentemente repetitivos - isso era uma questão da minha opinião - apenas olhando a lista que parece ter sido criada ad hoc ao longo dos anos e não parece ser MECE . De fato, várias instâncias de pessoas dizendo que a necessidade de diferenciação entre alguns dos fatores de forma acima não é mais relevante ou compreendida (por exemplo, veja este breve resumo do sub-notebook .


technet.microsoft.com/en-us/library/ee156537.aspx Para os valores ao consultar o WMI. Não há um consenso sólido sobre onde está o delineamento entre "estação de trabalho" e "dispositivo móvel", mas o fornecedor deve poder indicar quais critérios eles usam.
blaughw

3
Quais são os "ovos de páscoa"? Todos esses parecem tipos de chassi reais para mim.
Cody Gray

1
A Microsoft tem uma política de absolutamente nenhum ovo de páscoa permitido, por isso pode ser surpreendente para você, mas nenhum deles é um ovo de páscoa.
Derek # 7/16

Mesmo uma PizzaBox ou LunchBox?
William William

Acabei de publicar na Wikipedia e você está correto! Esses são os tipos reais de chassis lol - i irá atualizar a minha resposta
William
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.