Wiele licencji na oprogramowanie jest dość restrykcyjnych jeśli chodzi o to, w jaki sposób i gdzie można zainstalować program, ale jak dobre są te programy przy określaniu typu urządzenia, na którym są zainstalowane? Dzisiejszy post z pytaniami i odpowiedziami dla SuperUser zawiera odpowiedź na ciekawe pytanie czytelnika.
Dzisiejsza sesja pytań i odpowiedzi przychodzi do nas dzięki uprzejmości SuperUser - poddziału Stack Exchange, społecznościowego forum z pytaniami i odpowiedziami.
Zdjęcie dzięki uprzejmości Roberta (Flickr).
Czytnik SuperUser Abhi chce wiedzieć, czy oprogramowanie rzeczywiście potrafi odróżnić komputer stacjonarny od laptopa:
Licencja dla oprogramowania intensywnie obciążającego procesor, takiego jak Pix4D, mówi, że może być zainstalowany na dwóch urządzeniach, ale z jednym warunkiem. Czytając drobnym drukiem, wydaje się, że jedno urządzenie może być pełno-przetwarzającym pulpitem / stacją roboczą, podczas gdy drugie musi być laptopem lub urządzeniem mobilnym.
W jaki sposób oprogramowanie będzie wiedzieć, na jakim urządzeniu jest ono zainstalowane? Czy istnieją specyfikacje sprzętu określające coś takiego (np. Obecność baterii)?
Biorąc pod uwagę, że oprogramowanie jest w pełni funkcjonalne na obu urządzeniach, czy stan ten stałby się nieistotny, gdybym po prostu kupił wysokiej klasy laptop, który jest równie szybki jak komputer?
Czy oprogramowanie może rzeczywiście odróżnić komputer stacjonarny od laptopa?
Wspierani przez SuperUser i Technik Empire mają dla nas odpowiedź. Najpierw, abnev:
W systemie Linux możesz uruchomić następujące polecenie:
- sudo dmidecode - łańcuchowy typ podwozia
Na laptopie to zwróci laptopa, notebook, przenośny lub sub-notebook (w zależności od producenta).
W przypadku systemu Windows zapoznaj się z poniższą dokumentacją TechNet, aby określić typ obudowy komputera: Identyfikacja typu obudowy komputera
Poniżej znajduje się odpowiedź od Technik Empire:
Aby dodać do innej odpowiedzi tutaj w odniesieniu do systemu Linux, oprogramowanie Windows może również uzyskać dostęp do tych informacji za pośrednictwem różnych dostarczonych metod / obiektów WinAPI. Jednym z takich przykładów jest Win32_ComputerSystem, który między innymi ma członków takich jak:
Możliwe wartości to:
Jeśli chodzi o to, jak system Windows to wie, nie mogę powiedzieć z całą pewnością, ponieważ obecnie brakuje mi zarówno kodu źródłowego Windows, jak i oficjalnych linków do dokumentacji, powiedziałbym, że jest to prosta sprawa z identyfikatorem sprzętu w komputerze, który przekazuje te informacje system.
Ponieważ system Windows ma ogromną sieć partnerską, która przesyła sterowniki bezpośrednio do firmy Microsoft (aby aktualizacje sterowników za pośrednictwem usługi Windows Update i "standardowe" sterowniki były dołączane do nośnika instalacyjnego), system Windows może dość łatwo określić, jaki rodzaj komputera posiada użytkownik. zainstalowane na. Tylko przez sam identyfikator CPU można określić, czy jest to komputer stacjonarny, czy laptop.
Czy masz coś do dodania do wyjaśnienia? Dźwięk w komentarzach. Chcesz przeczytać więcej odpowiedzi od innych użytkowników Stack Exchange, którzy znają się na technologii? Sprawdź cały wątek dyskusji tutaj.