Windows NT

Da Wikipedia, l'enciclopedia libera.
Windows NT
Logo
Windows 8, l'ultima versione di Windows NT
Windows 8, l'ultima versione di Windows NT
Sviluppatore Microsoft Corporation
Famiglia SO Windows
Modello del sorgente Closed source
Release iniziale Windows NT 3.1 (27 luglio 1993)
Release corrente Windows 8.1 (6.3) (26 ottobre 2012)
Tipo di kernel Kernel ibrido, 32/64 bit
Piattaforme supportate IA-32, x86-64, Itanium
Licenza Proprietario (MS-EULA)
Stadio di sviluppo Attuale
Sito web Windows Homepage

Windows NT è una famiglia di sistemi operativi prodotti da Microsoft.

I sistemi operativi Windows NT sono stati pensati per le utenze aziendali, sia server che workstation, affiancando inizialmente i sistemi operativi Windows 3.x, ed in seguito Windows 9x, destinati invece a un'utenza domestica e all'office automation.

La sigla "NT" non ha un significato ufficiale, tuttavia viene comunemente interpretata come le iniziali di "New Technology"; altre interpretazioni vedono invece il significato di NeTwork, a indicar la sua natura di client orientato alla rete; nella sigla WNT si potrebbero vedere le iniziali del sistema VMS, dove ciascuna lettera viene incrementata d'una posizione nell'alfabeto latino: questa chiave di lettura, che evidenzierebbe i legami tra i due sistemi operativi sarebbe in parte avvalorata dal fatto che alla preparazione del sistema Microsoft parteciparono molti programmatori provenienti da Digital, tra i quali vi era anche il capo progetto dell'architettura VMS, che arrivarono quindi ad influenzare lo sviluppo di Windows NT[1].

Spesso il nome Windows NT viene associato a Windows NT 4.0.

Architettura di Windows NT[modifica | modifica sorgente]

Exquisite-kfind.png Per approfondire, vedi Architettura Windows NT.

Fin dalle origini Windows NT si ispira alla filosofia dei sistemi Unix e si differenzia nettamente dai sistemi basati su MS-DOS: l'impostazione è multiutente, multiprocesso (o multitasking), multiprocessore. Il file system (NTFS nelle sue varie versioni) gestisce adeguatamente la multiutenza, assegnando a ciascun file diritti di accesso specifici per ogni utente.

Kernel[modifica | modifica sorgente]

Il kernel di Windows NT è spesso erroneamente considerato di tipo microkernel, in realtà è di tipo ibrido. Infatti la definizione di microkernel prevede che solo i servizi essenziali debbano risiedere nel kernel, e tutti gli altri servizi del sistema operativo, inclusi la gestione della memoria e l'Input/output, dovrebbero operare in user mode in spazi di memoria separati.

Tuttavia per ragioni di prestazioni quasi nessun sistema operativo dispone di un microkernel puro (l'unica eccezione è Mach). In Windows NT molti servizi sono implementati in kernel mode, fra i quali il file system, la gestione della memoria e, a partire da Windows NT 4, anche la gestione della grafica. A livello di prestazioni e di sicurezza questo equivale ai kernel monolitici (ad esempio UNIX e Linux), ma permette una flessibilità maggiore.

Il kernel di Windows NT è interamente a 32 bit e dispone di uno scheduler preemptive (cioè che gestisce il rilascio anticipato dei processi, consentendo di liberare la CPU da un processo che la sta impegnando da troppo tempo). Inoltre, a differenza di Windows 9x, il kernel è completamente rientrante, a vantaggio delle prestazioni: infatti in Windows 9x quando un'applicazione richiede un servizio di sistema, che generalmente è a 16 bit e non è rientrante, l'applicazione impegna una sezione critica globale, rendendo di fatto monotask il sistema.

Le versioni del progetto Windows NT[modifica | modifica sorgente]

Windows NT 3.1

Il progetto Windows NT nasce nel 1988, e ha dato alla luce nel corso degli anni numerosi sistemi operativi:

Il primo progetto Windows NT
  • Windows NT 3.1, prima versione di Windows a 32 bit, è destinato a essere usato come server di rete. L'interfaccia grafica è quella di Windows 3.x (di cui prende anche il numero di versione). Uscito sul mercato il 27 luglio 1993, ha avuto un successo di mercato davvero modesto, ma può essere considerato il "padre" dei sistemi Windows moderni.
    La successiva versione 3.5, seguita a breve distanza dalla versione 3.51, segnarono l'inizio dell'ascesa di Microsoft in questo segmento di mercato, che negli anni seguenti avrebbe finito con il dominare a spese di Novell.
- La versione 3.1 venne distribuita non solo per piattaforme x86, ma anche DEC Alpha e MIPS (processori R4000).
- La versione 3.51 venne sviluppata anche per architetture PowerPC e SPARC, quest'ultima solo in versione "beta" e non venduta presso il mercato consumer. Intergraph effettuò il porting di questa versione per Clipper, ma decise di non distribuirla.
  • Windows NT 4.0, destinato a server e workstation, esce il 24 agosto 1996 ad un anno esatto da Windows 95 (il cui successore, però, sarà Windows 98) e ne prende l'interfaccia utente. Ha un buon successo di mercato come sistema server a spese dei sistemi Unix.
- La versione 4.0 è l'ultima piattaforma, ufficialmente supportata, ad essere sviluppata per processori diversi dal x86 (se escludiamo il futuro Itanium), includendo DEC Alpha, MIPS e PowerPC. Per DEC Alpha furono distribuiti anche tutti i Service Pack.
La seconda derivazione del progetto Windows NT
  • Windows 2000, (Windows NT 5.0), presenta notevoli riscritture di alcuni moduli del kernel (soprattutto per quanto riguarda la gestione dei protocolli di rete) e dell'interfaccia grafica. Ha notevole successo come sistema aziendale e server, anche se l'avvento di Linux ne riduce le quote di mercato in ambito server, soprattutto grazie all'avvento di Internet.
  • Windows XP (Windows NT 5.1), presenta come novità maggiore la rivisitazione dell'interfaccia utente ed è il primo sistema operativo della famiglia NT destinato anche all'utenza domestica, sostituendo la serie Windows 95/98/ME. È stato distribuito nell'ottobre 2001 in edizioni Home e Professional, ma le edizioni Server sono state distribuito successivamente (vedi subito sotto).
  • Windows Server 2003 (Windows NT 5.2), è la versione Server di Windows XP dal quale deriva e che segue sul mercato a distanza di un anno.
    Architettura (semplificata) di Windows NT
La terza derivazione del progetto Windows NT
  • Windows Vista (Windows NT 6.0), distribuito a novembre 2006 per gli abbonati MSDN, e a fine gennaio 2007 per i clienti retail e OEM. Nel corso del 2008 fu distribuita la versione Server, chiamata Windows Server 2008 e con nome in codice Windows Longhorn Server.
  • Windows 7 (Windows NT 6.1), precedentemente noto come Windows Vienna, distribuito il 22 ottobre 2009. Graficamente simile a Windows Vista, è considerato più performante e affidabile. La versione server, Windows Server 2008 R2, è il successore di Windows Server 2008, ed è conosciuto anche con il nome in codice di Windows 7 Server.
  • Windows 8 (Windows NT 6.2), distribuita il 26 ottobre 2012. Graficamente simile all'interfaccia di Windows Phone nel linguaggio di design Microsoft. Per la prima volta viene pubblicata una versione per l'architettura ARM chiamata Windows RT adatta per i tablet. La versione server, Windows Server 2012, è il successore di Windows Server 2008 R2, ed è conosciuta anche con il nome in codice di Windows 8 Server.
  • Windows Phone 8 (Windows NT 6.2), è la prima versione di Windows Phone destinata agli smartphone ad avere il kernel Windows NT, distribuita il 29 ottobre 2012. È l'evoluzione di Windows Phone 7.
  • Windows 8.1 (Windows NT 6.3), è l'ultima versione di Windows, precedentemente noto come Windows Blue, alcuni lo considerano solo un minor update, visto che lo sviluppo è durato solo un anno, distribuito a ottobre 2013. Viene distribuito un update chiamato Windows 8.1 Update o (Windows 8.1 Update 1 per la nomenclatura degli aggiornamenti di Windows Phone 8) che va a migliorare alcune lacune.
  • Windows Phone 8.1 (Windows NT 6.3), è l'ultima versione di Windows Phone, precedentemente noto come Windows Blue, è un major update per i telefoni nati con Windows Phone 8, la preview viene distribuita nell'aprile 2014.

Windows NT e i suoi legami con OS/2 e VMS[modifica | modifica sorgente]

Windows NT era originalmente basato su OS/2, un progetto congiunto tra Microsoft e la proprietaria IBM. La collaborazione cessò e IBM continuò a commercializzare la versione precedente di OS/2 mentre Microsoft rinominò la propria versione in Microsoft Windows NT, inserendo come API ad alto livello le Windows API di Windows 3.x adattate ai 32 bit.

Sin dall'inizio del progetto, gli sviluppatori di Windows NT erano un gruppo di programmatori fuoriusciti da Digital Equipment Corporation, tra i quali Dave Cutler, Dick Hustvedt e Peter Lipman che avevano sviluppato il sistema operativo OpenVMS di DEC presso la loro società New Technology. La loro esperienza su VMS si è in parte riflessa sulla struttura di NT. In un'intervista dopo il rilascio di Windows NT, Cutler disse, scherzando, che l'acronimo WNT era un gioco di parole con VMS, ottenuto spostando avanti ogni lettera di una posizione nell'ordine alfabetico, ovvero 'VMS+1' (al contrario di quanto fatto per il nome del computer HAL 9000 del film 2001: Odissea nello spazio che deriva da IBM). Secondo alcuni la sigla "NT", pur non avendo un significato ufficiale, deriva da "N-Ten", l'emulatore della CPU Intel i860 sulla quale era iniziato lo sviluppo del progetto.

In considerazione di questo, alcuni critici si chiesero se NT potesse essere veramente considerato una nuova tecnologia, in quanto la struttura del sistema era in realtà derivata da un sistema operativo per macchine VAX che risaliva al 1977. I processi, lo scheduler, la gestione delle priorità, il supporto multiprocessore sono molto simili, tanto che si dice che il libro VAX/VMS Internals and Data Structures della Digital Press sia un'ottima descrizione dei corrispondenti aspetti di Windows NT. Ecco una tabella di comparazione tra i due sistemi:

Tabella di confronto tra terminologia VMS e NT
VMS Windows NT
Interrupt Priority Level (IPL) Interrupt Request Level (IRQL)
Asynchronous System Trap (AST) Asynchronous Procedure Call (APC)
Fork Procedure Deferred Procedure Call (DPC)
I/O Request Packet (IRP) I/O Request Packet (IRP)
Bug Check Bug Check
System Service System Service
sys.exe ntoskrnl.exe
Paged Pool Paged Pool
Nonpaged Pool Nonpaged Pool
Look aside List Look aside List
Section Section
Mailbox Mailslot

Critiche[modifica | modifica sorgente]

Rispetto ai sistemi MS-DOS e Windows 9x, i sistemi NT hanno sempre richiesto quantità nettamente superiori di memoria RAM. Questo, negli anni novanta, era un problema comune a tutti i sistemi operativi di fascia alta (ad esempio OS/2).

Inizialmente l'affidabilità di NT era inferiore alle aspettative degli utenti ed alle dichiarazioni del produttore. Il blocco della macchina, caratterizzato dal celebre "schermo blu" (chiamato in gergo BSOD, Blue Screen of Death), avveniva con una frequenza eccessiva e presentandosi nelle situazioni più inaspettate. Il raffinamento del kernel e soprattutto il miglioramento dei device driver ha ridotto notevolmente questo problema.

Una caratteristica di Windows NT molto criticata è l'impossibilità di utilizzare il sistema operativo in maniera puramente testuale, essendo l'interfaccia grafica non escludibile. Per risolvere questo problema Microsoft ha implementato una modalità puramente testuale in Windows Server 2008.

Nelle prime versioni NT ha sofferto molto per il riconoscimento dell'hardware, perché mancava il supporto al Plug and play e pochi produttori di hardware rilasciavano device driver per i propri prodotti. Anche le capacità multimediali erano molto carenti. L'uscita di Windows 2000 ha ribaltato la situazione, grazie al miglior supporto Plug and play disponibile su piattaforma PC.

Per gli utenti professionali un aspetto snervante di NT è l'impossibilità di ritagliare adeguatamente il sistema operativo, togliendo tutto ciò che non è strettamente indispensabile, in base all'applicazione che gira su di esso, in modo da ottimizzare l'efficienza del sistema e rimuovere a priori le possibili falle alla sicurezza. Esiste in realtà una versione di Windows XP, detta Embedded Edition, che dà maggiore libertà nello scegliere ogni singolo componente da installare nel sistema. Questa versione però è dedicata più che altro all'integrazione di Windows in dispositivi hardware (un esempio classico sono i "chioschi informativi" basati su PC) ed è di scarsa utilità e di difficile attuazione per sistemi server o desktop.

Con l'introduzione di Windows Server 2008 è stata implementata la modalità Server Core: grazie a questa tipologia di installazione è possibile usufruire di una macchina Windows Server senza la tradizionale interfaccia grafica.

I vantaggi sono molteplici

  • Manutenzione ridotta: è possibile installare un server che svolga solo ed esclusivamente una funzione (AD DS, AD LDS, DHCP Server, DNS Server, File Services, Print Services, and Streaming Media Services).
  • Ridotta superficie d'attacco: l'installazione è minimale, quindi meno applicazioni che possono essere soggette a bug.
  • Meno spazio e memoria occupati: è possibile installare Windows in meno di un GB: meno applicazioni significano meno RAM occupata, con l'evidente vantaggio di poter installare più macchine virtuali, ognuna con una specifica funzione, su una stessa macchina fisica.

Bibliografia e riferimenti[modifica | modifica sorgente]

Note[modifica | modifica sorgente]

  1. ^ (EN) Windows NT and VMS: The Rest of the Story, WindowsIT Pro, 30 novembre 1998. URL consultato il 9 luglio 2014.

Voci correlate[modifica | modifica sorgente]

Microsoft Portale Microsoft: accedi alle voci di Wikipedia che trattano di Microsoft