In informatica NetWare è un sistema operativo di rete sviluppato da Novell, che consente la connessione in rete di computer, siano essi DOS, Windows, Unix o Mac OS.

NetWare ebbe grande successo negli anni ottanta come primo vero sistema operativo di rete compatibile con i comuni PC IBM compatibili ed MS-DOS. Il sistema necessitava di un server dedicato o semidedicato, il cui disco fisso andava formattato esclusivamente per NetWare, e aveva il suo punto di forza nel software per i client, particolarmente leggero e stabile, compatibile con diverse piattaforme.

Tra i numerosi meriti di NetWare c'è quello di aver introdotto sul mercato di larga scala i concetti di condivisione delle informazioni e di lavoro in rete, divenuti ormai comuni per tutte le aziende moderne ed anche l'aver contribuito alla diffusione di standard dei sistemi di rete che ancor oggi sopravvivono, come le schede di rete con tecnologia Ethernet.

Il sistema NetWare sopravvive in numerose aziende ancora oggi, sebbene sia stato sostituito da Open Enterprise Server (OES).

Storia NetWare si sviluppò partendo da un concetto molto semplice: condivisione dei invece che dei dischi. Nel 1983, quando venne progettata la prima versione di NetWare, tutti gli altri prodotti competitori erano basati sul concetto di fornire un accesso diretto ai dischi condivisi. L'approccio alternativo di Novell venne approvato da IBM nel 1984 e ciò aiutò a promuovere il prodotto.

Con NetWare lo spazio su disco veniva condiviso in forma di volumi NetWare, paragonabili ai volumi DOS. I client con MS-DOS avrebbero eseguito uno speciale programma Terminate and Stay Resident (TSR) che permetteva loro di mappare una lettera di disco locale ad un volume NetWare. I client dovevano autenticarsi ad un server per poter avere il permesso di mappare i volumi, e l'accesso poteva essere ristretto in base al nome utente. Similarmente potevano connettersi a delle stampanti condivise sul server dedicato, e stampare come se la stampante fosse connessa localmente. NetWare conquistò una posizione dominante sul mercato nella prima metà degli anni novanta, sviluppando il suo protocollo IPX/SPX di derivazione Xerox XNS e lo standard Local Area Network (LAN).

Alla fine degli anni novanta, con il boom della connettività Internet, il protocollo TCP/IP divenne dominante anche sulle LAN. Novell aveva introdotto un limitato supporto per il TCP/IP con le versioni 3.x (circa 1992) e 4.x (circa 1995), consistente principalmente di servizi FTP, servizi di stampa LPR/LPD in stile UNIX (disponibile con NetWare 3.x), e un server web sviluppato da Novell (in NetWare 4.x). Il supporto nativo al TCP/IP per i servizi di file e stampa normalmente associati a Novell venne introdotto con NetWare 5.0 (distribuita nel 1998).

Mentre alcuni attribuiscono il ritardo di Novell nell'adozione del TCP/IP come protocollo nativo alla perdita di quote di mercato da parte di NetWare, è possibile dire che fu Novell a lasciarsi mettere fuori mercato. Durante la prima metà degli anni ottanta Microsoft introdusse un suo sistema LAN con LAN Manager, basato sul protocollo NetBEUI. I primi tentativi di lottare con NetWare non ebbero successo, ma questo cambiò con l'inclusione di un migliorato supporto di rete in Windows for Workgroups, e successivamente con il successo di Windows NT e Windows 95. NT, in particolare, offriva servizi simili a quelli offerti da NetWare, ma su un sistema che poteva essere usato come un desktop, e connesso direttamente ad altri desktop Windows dove NetBEUI era quasi universale.

L'avanzata di NetWare L'uso diffuso e la crescita di NetWare iniziarono nel 1985 con il lancio simultaneo di NetWare 286 2.0a e del processore Intel 80286 a 16 bit. La CPU 80286 presentava una modalità protetta a 16 bit che forniva accesso fino a 16MB di RAM, con un multitasking efficiente e affidabile. Prima dell'80286, i server con architettura IBM PC erano basati sui processori Intel 8086/8088 a 8 bit, che erano limitati a 640k di RAM ed erano sprovvisti del multitasking preemptive.

La combinazione tra caratteristiche dell'80286, limite di 16MB per la RAM e limite di 256MB per i volumi NetWare, permise per la prima volta di avere reti locali economiche basate su server. Il limite dei 16MB di RAM fu di particolare importanza, dato che rendeva disponibile abbastanza RAM per il caching dei dischi, con un conseguente miglioramento delle prestazioni. Questa divenne la chiave per le prestazioni di Novell e permise anche la costruzione di reti più grandi.

Un'altra importante differenza di NetWare 286 fu che era indipendente dall'hardware, contrariamente ai sistemi di server concorrenti della 3Com. I server NetWare potevano essere assemblati usando qualsiasi sistema con CPU 80286 o superiore, un qualsiasi hard disk MFM, RLL o SCSI e una qualsiasi scheda di rete a 8 o 16 bit.

Novell progettò anche un software client semplice e compatto che permetteva alle stazioni DOS di connettersi ad un server e accedere ai suoi dischi condivisi. Anche se i server NetWare introdussero un nuovo file system proprietario, questo appariva alle workstation come un normale volume DOS compatibile, assicurando la funzionalità di tutti i programmi DOS esistenti.

I primi anni NetWare si basava sul lavoro di consulenza della SuperSet Software, un gruppo fondato dagli amici Drew Major, Dale Neibauer e Kyle Powell, cui si aggiunse in seguito Mark Hurst. Questo lavoro si basava su un progetto da loro iniziato alla Brigham Young University di Provo (Utah) a partire dall'ottobre 1981.

Nel 1983 Ray Noorda ingaggiò il lavoro del team SuperSet. A questo venne originariamente assegnato di creare un sistema di condivisione dei dischi per CP/M, per aiutare a mettere in rete l'hardware CP/M che Novell vendeva all'epoca. In privato il team era convinto che CP/M fosse una piattaforma condannata e se ne uscì invece con un sistema di condivisione file di successo per gli appena nati PC IBM-compatibili. Il gruppo scrisse anche un applicativo chiamato Snipes, un gioco in modalità testo che usarono per testare la nuova rete e dimostrarne le capacità. Snipes fu la prima applicazione di rete mai scritta per un personal computer commerciale, e viene riconosciuta come uno dei precursori di molti popolari giochi multi-utente come Doom e Quake.

Questo sistema operativo di rete (NOS) venne in seguito chiamato Novell NetWare. NetWare si basava sul NetWare Core Protocol (NCP), che è un protocollo a pacchetti che consente al client di inviare richieste e ricevere risposte da un server NetWare. Inizialmente l'NCP era legato direttamente al protocollo IPX/SPX, il che significava che nativamente NetWare poteva comunicare solo usando IPX/SPX.

Il primo prodotto a portare il nome NetWare venne distribuito nel 1983. Venne chiamato Netware 68 (alias S-Net); girava sul processore Motorola 68000 e usava una topologia di rete a stella. Venne sostituito nel 1985 da NetWare 86 versione 1.5, che era scritto per l'Intel 8086. Dopo l'uscita del processore Intel 80286, nel 1986 Novell distribuì NetWare 286. La stessa cosa avvenne con l'uscita dell'Intel 80386; Novell distribuì NetWare 386 nel 1989. In seguito Novell consolidò la numerazione delle versioni di NetWare, con NetWare 286 che divenne 2.x, e NetWare 386 che divenne NetWare 3.x.

NetWare 286 2.x NetWare versione 2 era notoriamente difficile da configurare, dato che il sistema operativo era fornito come un insieme di moduli oggetto compilati che richiedevano di essere configurati e linkati. Ad aumentare questo inconveniente c'era il fatto che questo processo era progettato per essere eseguito usando più dischetti, il che rendeva il tutto lento e inaffidabile.

Qualsiasi cambiamento al sistema operativo richiedeva un re-linking del kernel e un riavvio del sistema, per il quale erano necessari almeno 20 cambiamenti di dischetto. NetWare veniva amministrata usando delle utilità in modalità testo come SYSCON. Il file system usato da NetWare 2 era il NetWare File System 286, o NWFS 286, che supportava volumi fino a 256 MB. NetWare 2 riconosceva solo la modalità protetta dell'80286, limitando il suo supporto della RAM a 16MB o meno. Un minimo di 2MB era richiesto per l'avvio del sistema operativo; tutta la RAM aggiuntiva era usata per FAT, DET e caching dei file. Poiché la modalità protetta a 16 bit dell'80286 venne implementata su tutti i successivi processori Intel della famiglia x86, NetWare 286 versione 2.x era in grado di girare su 80286 o su qualsiasi successivo processore compatibile.

NetWare 2 implementava già diverse caratteristiche ispirate dai sistemi mainframe e minicomputer, che non erano disponibili in altri sistemi operativi dell'epoca. Le caratteristiche di System Fault Tolerance (SFT) comprendevano la verifica standard di lettura dopo la scrittura (SFT-I) con rimappatura "al volo" dei blocchi danneggiati (all'epoca i dischi non avevano questa caratteristica codificata al loro interno) e il RAID1 software (mirroring dei dischi, SFT-II). Opzionalmente, il Transaction Tracking System (TTS) proteggeva i file dagli aggiornamenti incompleti. Per i singoli file, ciò richiedeva solo l'impostazione di un attributo del file. Le transazioni su più file e i rollback controllati erano possibili programmando le API del TTS.

NetWare 2.x supportava due modalità di operazione: dedicata e non-dedicata. In modalità dedicata, il server usava un boot loader che eseguiva i file net$os.exe del sistema operativo. Tutta la memoria veniva allocata a NetWare; sul server non girava il DOS. Nella modalità non-dedicata, sul server veniva avviato DOS 3.3 o superiore, usando un floppy disk bootabile o una partizione DOS sul disco rigido. Il DOS era limitato a 640k, dato che non era possibile usare alcun gestore di memoria. Tutta la RAM estesa veniva allocata a NetWare 2.x, e il processore ripartiva il tempo di elaborazione tra programmi DOS e NetWare. Il time slicing veniva ottenuto usando gli interrupt di tastiera. Questa caratteristica richiedeva una stretta aderenza al modello di progetto dell'IBM PC, altrimenti le prestazioni venivano influenzate negativamente. In piccole reti da 2 a 5 utenti, la modalità non-dedicata era molto popolare, anche se era più suscettibile a lockup dovuti a problemi dei programmi DOS. NetWare 3.x e le versioni successive supportarono solo la modalità dedicata.

NetWare 3.x A partire da NetWare 3.x, venne aggiunta la modalità protetta a 32 bit, che permetteva al sistema operativo di eliminare il limite dei 16mb di memoria di NetWare 2.x. Ciò spianò la strada al supporto di hard disk più grossi, dato che NetWare 3.x teneva in cache (copiava) per intero nella RAM la File Allocation Table (FAT) e la directory entry table (DET), ottenendo prestazioni migliorate.

NetWare versione 3 facilitò sviluppo e amministrazione grazie alla modularizzazione. Ogni funzionalità era controllata da un modulo software chiamato NetWare Loadable Module (NLM), caricato o all'avvio o quando necessario. Divenne così possibile aggiungere funzionalità come software anti-virus, software di backup, database e web server, supporto per i nomi estesi dei file (i nomi file standard erano limitati a otto caratteri più una estensione di tre lettere, come per MS-DOS) o per i file in stile Macintosh.

NetWare continuava ad essere amministrata usando utility in modalità testuale. Il file system introdotto da Netware 3.x e usato di default fino a Netware 5.x era il Netware File System 386, o NWFS 386, che estese significativamente la capacità dei volumi (1 TB, con file fino a 4 GB) e poteva gestire fino a 16 segmenti di volume che potevano estendersi su più dischi fisici. I segmenti di volume potevano essere aggiunti mentre il server era in uso e il volume montato, permettendo al server di venire espanso senza interruzioni.