network imente network imente

articles » il versioning di Windows

sorry, this article is provided only in Italian

user-agent il versioning di Windows

published on 12/2/2007
read 2234 times

Windows è, come tutti "ben sanno", il nome della famiglia di sistemi operativi di maggior successo della Microsoft.

I sistemi operativi Windows hanno datata la loro nascita con Windows 1.0 nel 1985.
Successivamente la famiglia si è divisa in due rami coesistenti, la famiglia 9x e la famiglia NT: la prima era pensata per un mercato di utenza finale (le nostre case), la seconda, più stabile, per un mercato professionale (uffici e server).
Nelle varie fasi hanno quindi convissuto Windows 95 e Windows NT 4.0, Windows 98/ME e Windows 2000.

Con Windows XP la tecnologia alla base della famiglia NT venne integrata nel sistema, progettato per utenza comune; il suo "compagno" per il mercato server fu Windows Server 2003.
Windows Vista, l'ultimo sistema operativo Microsoft, è il successore diretto di Windows XP; sarà infatti Windows Server 2008 la naturale evoluzione di Windows Server 2003.


Windows nelle user-agent string

All'interno della user-agent string i sistemi Windows inseriscono una firma sostanzialmente standard, vediamo come è cambiata nel tempo.

SERIE 9x
Windows 3.1 Windows 3.1
Windows 16
Windows 95 Windows 95
Windows 9x
Windows 32
Windows 98 Windows 98
Windows ME Windows 9x 4.90
Windows 98; Win 9x 4.90
Windows ME
SERIE NT
Windows NT 3 Windows NT 3
Windows NT 4 Windows NT 4
Windows NT
Windows 2000 Windows NT 5.0
Windows XP Windows NT 5.1
Windows Server 2003 Windows NT 5.2
Windows Vista Windows NT 6.0
Windows Server 2008 / Windows 7 Windows NT 6.1

E' da notare che nella serie 9x le firme sono sempre non-standard e variano a seconda del sistema operativo; al contrario nella serie NT viene adottato un sistema che si basa sulla pura versione piuttosto che sul nome del sistema operativo.

Rari sono i casi in cui questa tabella non viene rispettata: ad esempio quando un programma (agente) invece di inserire la firma che Windows propone ne crea una propria; nello specifico, RSSOwl, un noto feed reader, inserisce, quando eseguito su sistema windows, esclusivamente la stringa Windows; in maniera altrettanto inconsueta Netscape Navigator invece di inserire Windows 95 o Windows 98 (per i rispettivi sistemi) inserisce in user-agent string le firme Win95 e Win98.


Windows a 64bit

Windows XP è stato il primo sistema operativo Microsoft ad essere rilasciato anche in versione a 64bit, così come tutti i sistemi operativi successivi (Windows Server 2003, Windows Vista).
Il metodo più diretto per identificare queste versioni è cercare la presenza della stringa x64 subito dopo la firma di windows.

es: Windows NT 6.0 = Windows Vista 32bit
es: Windows NT 6.0 x64 = Windows Vista 64bit


E' possibile poi identificare l'architettura hardware cercando nella stringa valori quali Win64; IA64 (processore Intel a 64bit), Win64; x64 (processore AMD a 64bit).

Se si identifica la presenza di un sistema che può essere a 64bit e di una architettura a 64bit ci sono buone probabilità che la versione di Windows sia effettivamente a 64bit.


L'irrisolvibile questione di Windows XP 64bit

Esiste però un caso in cui non v'è via d'uscita: Windows XP a 64bit.
Questo sistema è stato costruito basandosi sul codice di Windows Server 2003 e per qualche misterioso motivo ne ha ereditato anche la firma.

Windows XP a 64bit inserisce in user-agent string la firma Windows NT 5.2

In questo caso quindi è necessario fare una scelta basata sulle probabilità.
Personalmente considero Windows NT 5.2 sempre Windows 2003 e Windows NT 5.2 x64 sempre Windows XP 64bit.
In realtà ciò non è corretto e diventa una sostanziale approssimazione; la scelta si basa sulla diffusione del sistema operativo; se in futuro la diffusione di Windows 2003 sarà maggiore di Windows XP cambierò la mia scelta.


Simone Cingano

comments
10:46:50 07/02/2008
menphis
Complimenti per il lavoro fatto! Qualunque cosa tu decida di di fare un giorno in riferimento a questo progetto, non far sparire il sito!!!
#1
18:21:47 15/07/2008
Ottimo il tuo sito ma come la metti con Microsoft Windows 7? Non dovrebbe avere come stringa Windows NT 7.0? So che Windows 7 basa il suo cuore su Windows Vista... e come la metti con Microsoft Windows Server 2008 che tu indichi come NT 6.1? Comunque ottimo lavoro! Ciao!
#2
22:48:23 26/08/2008
Non lo so... come la metto? Attualmente dalle informazioni in mio possesso Windows Server 2008 avrà come versioning un bel NT 6.1 Per quanto riguarda Windows 7 (il famoso codice Vienna) non si sa ancora molto, anche se girano alcune versioni preliminari. Come dice il nome stesso sarà la versione 7, indi ne deduco sarà proprio NT 7.0. Grazie per l'interesse in ogni caso. A presto Simone
#3
13:09:37 20/03/2009
In questo momento sto usando la Build 7057 di Windows 7, e l'user agent restituito è proprio: Mozilla/5.0 (Windows; U; Windows NT 6.1; it; rv:1.9.1b3) Gecko/20090305 Firefox/3.1b3 (.NET CLR 3.5.30729) (si capisce che sto testando la compatibilità della beta di Casa Mozilla...). Pensate che l'agente cambierà con la versione definitiva o che questo empasse resterà anche dopo il rilascio?
#4
your name or nickname yout email (we will not publish it) your homepage codice di controllo (necessaria la visualizzazione delle immagini) please write what you see in the image into the textbox
home
back to home
articles archive
back to articles archive

last articles

il versioning di Windows
una breve panoramica del meccanismo di assegnazione delle versioni di windows e di come appaiono nelle user-agent string
cosa sono le user-agent string?
un'analisi breve ma esaustiva per comprendere la funzione e la storia delle stringhe user-agent
about your user-agent string
CCBot/1.0 (+http://www.commoncrawl.org/bot.html)
CCBot 1.0
Sconosciuto