Czy oprogramowanie może odróżnić laptop od komputera stacjonarnego?

42

Licencja na oprogramowanie intensywnie wykorzystujące procesor, takie jak Pix4D, mówi, że można je zainstalować na dwóch urządzeniach - ale pod warunkiem. Czytając drobniejszy druk, wydaje się, że jedno urządzenie może być w pełni przetwarzającą stacją roboczą / komputerem stacjonarnym, podczas gdy drugie musi być urządzeniem mobilnym / laptopem.

Skąd oprogramowanie to wiedziałoby? Czy w specyfikacjach sprzętowych są prezenty w celu ustalenia czegoś takiego, np. Obecność baterii?
Biorąc pod uwagę, że oprogramowanie jest w pełni funkcjonalne na obu komputerach, czy ten warunek nie stałby się nieistotny, jeśli kupię tylko wysokiej klasy laptop, który jest tak szybki jak stacja robocza?

Islay
źródło
W Urządzeniach i drukarkach możesz zobaczyć urządzenie, które reprezentuje Twój komputer. Jeśli jest to laptop, wyświetli się ikona laptopa. Nie jestem jednak pewien, czy inne oprogramowanie może lub będzie wykorzystywać te informacje.
ecube
17
Obecność baterii jest prawdopodobnie dobra, ale jestem pewien, że niektóre zasilacze UPS również by się liczyły jako baterie.
user253751
2
Myślę, że Pix4D nie sprawdza, jakiego typu sprzętu używa. Po prostu rozdaje dwie różne licencje. W jednej licencji dozwolony jest tylko „tryb przetwarzania szybkiej kontroli”, podczas gdy druga jest pełną licencją.
user797717,
1
Oprogramowanie może być w stanie zebrać te informacje z systemu operacyjnego - jeśli nie, sugerowałbym, że obecność przycisku pokrywy (tj. Wykrywanie laptopa, gdy pokrywa jest zamknięta) jest prawdopodobnie martwym rozdaniem dla laptopów. oczywiście nie obejmuje to wszystkich, ponieważ dostajesz phablety / all-in-one i inne.
jammypeach
2
Czy oprogramowanie próbuje nawet je egzekwować? A może to tylko system honoru?
whatsisname

Odpowiedzi:

54

W systemie Linux możesz uruchomić następujące polecenie:

sudo dmidecode --string chassis-type

Na laptopie zwróci „Laptop”, „Notebook” „Portable” lub „Sub Notebook” (w zależności od producenta).

W systemie Windows zapoznaj się z następującą dokumentacją, aby określić typ obudowy komputera:

Identyfikacja typu podwozia komputera

abnev
źródło
21
Heh, to pudełko do pizzy naprawdę mnie zdezorientowało, dopóki nie przeczytałem tego en.wikipedia.org/wiki/Pizza_box_form_factor
ecube
Miałem laptopa, który kiedyś tak się przedstawił. To był kawałek śmieci; p
Journeyman Geek
5
Zarówno mój komputer stacjonarny, jak i mój laptop określają się jako „Inne”. Oczekuję, że wielu poprawnie się zidentyfikuje.
ChrisInEdmonton
@ dma1324 Wow, 117 mips za mniej niż 100 000 $!
Michael
3
Mój Chromebook zidentyfikował się jako pulpit.
dramatyczny
13

Aby dodać do innej odpowiedzi tutaj: Linux, oprogramowanie Windows może również uzyskać dostęp do tych informacji poprzez różne dostarczone metody / obiekty WinAPI. Jednym z takich przykładów jest Win32_ComputerSystem , który między innymi ma członków takich jak:

PCSystemTypeEx

Data type: uint16
Access type: Read-only

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

Możliwe wartości obejmują:

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

Jeśli chodzi o sposób, w jaki system Windows to wie, chociaż nie mogę tego powiedzieć z całą pewnością, ponieważ obecnie brakuje mi zarówno kodu źródłowego systemu Windows, jak i jakichkolwiek oficjalnych łączy do dokumentacji, powiedziałbym, że jest to prosta kwestia identyfikatora sprzętu w komputerze, który przekazuje te informacje system operacyjny. Ponieważ system Windows ma ogromną sieć partnerów, która przesyła swoje sterowniki bezpośrednio do firmy Microsoft (w przypadku aktualizacji sterowników za pośrednictwem usługi Windows Update, „standardowe” sterowniki dołączane do nośników instalacyjnych), system Windows dość łatwo może dokładnie ustalić, jakiego rodzaju komputer zainstalowałeś to na. Wystarczy sam identyfikator procesora , abyś mógł bezpiecznie postawić zakład, czy komputer jest laptopem czy komputerem stacjonarnym.


źródło
Tak, ale skąd Windows to wie
Lekkość ściga się z Moniką
3
@PreferenceBean Jądro Windows pyta serwer Windows o identyfikatory sprzętowe, a serwer Windows pyta Linux? ;)
2
W odpowiedzi proszę
Lekkość ściga się z Moniką
6
CPUID jest silnie sugestywny; ale nie niezawodny. Komputery stacjonarne w małych obudowach czasami używają mobilnych procesorów, a także kilka „wysokiej klasy” laptopów do gier, które zostały zbudowane przy użyciu procesorów stacjonarnych.
Dan Neely
1
„Kod Dmidecode zgłasza informacje o sprzęcie systemu zgodnie z opisem w systemie BIOS zgodnie ze standardem SMBIOS / DMInongnu.org/dmidecode Prawie na pewno WMI otrzymuje informacje z tego samego miejsca. W końcu po to są standardy.
Ben
3

Istnieją różne wskazówki. Jednym z nich jest „typ systemu” w danych DMI. Innym jest to, czy system ma baterię. Jeszcze innym jest rodzaj procesora, mikroukładu, kontrolera wyświetlacza, wyświetlacza itp. Żadne z nich nie jest niezawodne, ale biorąc je razem, dość łatwo byłoby napisać klasyfikator, który zgrupowałby systemy w „prawie na pewno laptopa”, „prawie na pewno” komputer / stacja robocza ”i„ nieokreślony ”.

Ale uczciwe egzekwowanie licencji za pomocą metod technicznych / aktywacyjnych zwykle koncentruje się na zapobieganiu nadużyciom na dużą skalę. Nadużycia na małą skalę częściej będą rozpatrywane poprzez audyty, niezadowolonych pracowników ratujących szefów itp.

Biorąc pod uwagę, że oprogramowanie jest w pełni funkcjonalne na obu komputerach, czy ten warunek nie stałby się nieistotny, jeśli kupię tylko wysokiej klasy laptop, który jest tak szybki jak stacja robocza?

Jeśli możesz kupić laptopa, który jest tak szybki jak twoja stacja robocza, musisz mieć całkiem niską (lub starą) stację roboczą.

płyn do płukania
źródło
2

Kod użyty do napisania oprogramowania może określić, na jakim typie „podwozia” jest on obecnie uruchamiany.

Zobacz tę odpowiedź na przykład w języku C #. Może to ustalić, czy komputer jest jednym z następujących typów (niektóre z pozornych powtórzeń i / lub nieaktualne):

  • Inny
  • Nieznany
  • Pulpit
  • LowProfileDesktop
  • PizzaBox
  • MiniTower
  • Wieża
  • Przenośny
  • Laptop
  • Notatnik
  • Handheld
  • Stacja dokująca
  • Wszystko w jednym
  • SubNotebook
  • Oszczędzanie przestrzeni
  • Pudełko śniadaniowe
  • MainSystemChassis
  • ExpansionChassis
  • SubChassis
  • BusExpansionChassis
  • Obudowa urządzenia peryferyjnego
  • StorageChassis
  • RackMountChassis
  • SealedCasePC

Także o moim komentarzu mówiącym, że są one na pozór powtarzalne - to była moja opinia - po prostu patrząc na listę, wydaje się, że została stworzona ad hoc przez lata i nie wydaje się być MECE . Rzeczywiście, mam kilka przykładów ludzi mówiących, że potrzeba rozróżnienia niektórych z powyższych czynników kształtu nie jest już istotna ani zrozumiała (na przykład zobacz to krótkie podsumowanie podrozdziału .

William
źródło
technet.microsoft.com/en-us/library/ee156537.aspx Dla wartości podczas zapytania do WMI. Nie ma jednomyślnego konsensusu co do tego, gdzie rozgraniczenie występuje między „stacją roboczą” a „urządzeniem mobilnym”, ale sprzedawca powinien być w stanie określić, jakich kryteriów używa.
blaughw
3
Które to „pisanki”? Wszystkie te wyglądają jak rzeczywiste typy podwozia.
Cody Gray,
1
Microsoft ma zasadę, że absolutnie nie zezwala się na pisanki, więc może to być dla ciebie zaskakujące, ale żadne z nich nie jest pisankami.
Derek 朕 會 功夫
Nawet PizzaBox lub LunchBox?
William
Właśnie to opublikowałem na Wikipedii, a ty masz rację! To są prawdziwe typy podwozia lol - zaktualizuję moją odpowiedź
William