Mange programvarelisenser er ganske begrensende når det gjelder hvordan, og hvor du kan installere et program, men hvor gode er disse programmene til å bestemme hvilken type enhet de er installert på? Dagens SuperUser-spørsmål og svar har svaret på en nysgjerrig leserspørsmål.
Dagens spørsmål og svar-økt kommer til oss med tillatelse fra SuperUser - en underavdeling av Stack Exchange, en samfunnsdrevet gruppe av spørsmål og svar-nettsteder.
Foto med tillatelse fra Robert (Flickr) .
Spørsmålet
SuperUser-leser Abhi vil vite om programvare faktisk kan skille mellom en stasjonær datamaskin og en bærbar datamaskin:
En lisens for CPU-intensiv programvare som Pix4D sier at den kan installeres på to enheter, men med en tilstand. Når du leser det med små bokstaver, ser det ut til at en enhet kan være en fullbehandlet stasjonær / arbeidsstasjon, mens den andre må være en bærbar eller mobil enhet.
Hvordan vet programvaren hvilken type enhet den er installert på? Er det gaver i maskinvarespesifikasjonene for å bestemme noe slikt (dvs. tilstedeværelsen av et batteri)?
Gitt at programvaren er fullt funksjonell på begge enhetene, ville denne tilstanden blitt irrelevant hvis jeg bare kjøper en high-end bærbar PC som er like rask som skrivebordet?
Kan programvare faktisk skille mellom en stasjonær datamaskin og en bærbar datamaskin?
Svaret
SuperUser-bidragsytere abnev og Technik Empire har svaret for oss. Først opp, abnev:
På Linux kan du kjøre følgende kommando:
- sudo dmidecode –strenger chassis-type
På en bærbar PC vil dette returnere bærbar PC, bærbar PC, bærbar eller sub-bærbar PC (avhengig av produsent).
For Windows, se følgende TechNet-dokumentasjon for å bestemme datamaskinens understellstype: Identifisere Chassis Type på en datamaskin
Etterfulgt av svaret fra Technik Empire:
For å legge til det andre svaret her angående Linux, kan Windows-programvare også få tilgang til denne informasjonen gjennom forskjellige angitte WinAPI-metoder / objekter. Et slikt eksempel er Win32_ComputerSystem , som blant andre har medlemmer som:
![]()
Mulige verdier inkluderer:
![]()
Når det gjelder hvordan Windows vet dette, selv om jeg ikke kan si med sikkerhet fordi jeg for tiden mangler både Windows-kildekoden og noen offisielle dokumentasjonskoblinger, vil jeg si at det er et enkelt spørsmål om maskinvare-ID-ene i datamaskinen som gir denne informasjonen til operativsystemet system.
Siden Windows har et enormt partnernettverk som sender driverne direkte til Microsoft (for driveroppdateringer via Windows Update og "standard" -drivere som skal inkluderes med installasjonsmedier), er det ganske enkelt for Windows å finne ut nøyaktig hva slags datamaskin du har det. installert på. Bare ved CPU-ID alene kan du avgjøre om det er en stasjonær datamaskin eller en bærbar datamaskin.
Har du noe å legge til forklaringen? Lyd av i kommentarene. Vil du lese flere svar fra andre teknologikyndige Stack Exchange-brukere? Sjekk ut hele diskusjonstråden her .