|
Con questo numero di
PC Open, inauguriamo un secondo corso di lezioni (dopo il progetto
Webmaster) dedicato a Windows. L’obiettivo di questo percorso
formativo è trasferire ai lettori le competenze e gli strumenti
per capire a fondo i meccanismi di Windows. La prima delle sette
lezioni è strutturata in tre capitoli.
In questo primo capitolo faremo una rapida escursione
attraverso i blocchi di Windows XP e nei successivi esamineremo
la sequenza di avvio (boot) del sistema e le procedure di installazione.
Non scenderemo troppo in dettaglio: le informazioni che presentiamo
sono la base per capire e usare meglio XP e il trampolino per approfondimenti
tramite altre pubblicazioni, libri e corsi.
In questa occasione non facciamo distinzione tra le versioni Home
e Professional, che differiscono di poco, soprattutto nelle aree
della sicurezza e del supporto NTFS, ma non nel kernel (nucleo)
del sistema. Più avanti trovate comunque una tabella che
riassume le differenze tra le due versioni di XP.
Come MS-DOS, Unix, Linux e Mac OS, per citarne
solo alcuni, Windows è un sistema operativo,
ovvero il software di base che permette al software applicativo
di utilizzare le risorse hardware e software del computer. Un sistema
operativo (OS) si occupa di compiti come la gestione della memoria,
delle periferiche, degli utenti, dei programmi in esecuzione (generalmente
strutturati in processi, thread - percorsi paralleli di esecuzione
di un processo - e moduli di uso comune), dei file e directory,
delle comunicazioni in rete e di quant’altro serve per consentire
agli utenti un uso più facile e sicuro del sistema locale
e delle risorse di rete.
Un moderno OS ha un’interfaccia grafica per
facilitare l’interazione con gli utenti, è multiutente
(più utenti possono eseguire programmi contemporaneamente),
è multiprocessing (supporta più CPU),
è multitasking (esegue più programmi
contemporaneamente distribuendo equamente l’uso delle risorse)
ed è multithreading (i processi, ovvero
i programmi in esecuzione, possono essere suddivisi in sezioni -
thread, o “fili” di esecuzione - eseguite simultaneamente
per sfruttare meglio i processori e le altre risorse hardware. Windows
XP risponde a questi criteri, anche se la versione Home è
monoprocesore e la multiutenza è limitata all’esecuzione
di applicazioni in sottofondo, visto che un solo utente alla volta
utilizza mouse, tastiera e schermo.
Da NT a 2000 e a XP c’è stata un’evoluzione, con elementi comuni e importanti progressi. Per esempio, NT è ancora efficace per un server, ma l’assenza di Plug and Play (riconoscimento e configurazione automatica delle periferiche) e lo scarso supporto multimediale hanno limitato l’impiego di NT Workstation alle applicazioni da ufficio. Windows 2000 supporta il Plug and Play, ma è ancora piuttosto rigido e poco adatto per i giochi e le applicazioni non aziendali. Con XP l’architettura è al completo e ogni tipo di utente può finalmente abbandonare le versioni 9x e ME con le relative inefficienze, instabilità, fragilità e insicurezza.
Windows XP sfrutta alcuni dei meccanismi di protezione
dei processori Intel; sulla scia di NT e 2000, la sicurezza è
uno dei cardini del sistema operativo, quindi esiste un muro pressoché
invalicabile che separa le applicazioni fidate, eseguite in kernel
mode al massimo livello di protezione, da quelle non sicure,
che vengono eseguite in user mode (bassa protezione).
Un altro principio architettonico è la struttura modulare
di XP, composta da un complesso di file separati che agevolano aggiornamenti
ed estensioni. Possiamo suddividere questi file, dal centro alla
periferia, in quattro strati: nucleo, driver, servizi e utility.
Quattro strati

Una visione ultrasemplificata
dell'architettura di Windows
Il nucleo comprende i file GDI.EXE, GDI32.EXE,
KRNL386.EXE, KERNEL32.DLL, USER.EXE e USER32.DLL, contenuti nella
directory System32; non è l’intero OS ma sono i moduli
centrali, utilizzati da tutto il resto del sistema.
I device driver sono i moduli software che servono
a XP per utilizzare i dispositivi hardware presenti nel sistema.
Per ogni dispositivo vengono installati uno o più driver
che garantiscono un funzionamento sicuro, anche in presenza degli
accessi multipli tipici di un ambiente multitasking. I componenti
hardware e i relativi driver sono visibili in Gestione Periferiche
sotto Gestione computer. Come i moduli del nucleo, anche i driver
sono eseguiti in kernel mode; possono causare il crash del sistema
se, in assenza di un driver certificato da Microsoft per XP, insistete
nell’installare un driver inadatto o difettoso.
In tal caso appare il classico schermo blu (chiamato familiarmente
“blue screen of death” o BSOD) con il messaggio di errore.
I driver non interagiscono direttamente con i device bensì
con uno strato intermedio, l’Hardware Abstraction
Layer (HAL.DLL); infatti un driver in XP è svincolato
dal tipo di macchina, per es. un PC di vecchio tipo, uno con supporto
ACPI (Advanced Configuration and Power Interface,
la specifica più recente per la gestione dell’energia
e della configurazione dei dispositivi hardware), mono o multiprocessore,
portatile. Durante il setup viene installato, tra gli HAL disponibili
sul CD di XP, quello che il programma di installazione ritiene appropriato
per il PC; quando il setup “sbaglia” (e XP non riparte),
si può specificare manualmente il tipo di PC, come vedremo
più avanti raccontando un’installazione “impossibile”.
I servizi sono applicazioni eseguite solitamente
in background (senza interazione con l’utente) che implementano
funzioni importanti (ma esterne al nucleo) del sistema operativo.
Sono elencati in Strumenti di amministrazione, Servizi. La maggior
parte dei servizi funziona in kernel mode.
Le utility sono applicazioni che permettono all’utente
di interagire con il sistema operativo, tramite interfaccia grafica
o, a volte, in modo testo. Esempi sono le Utility di sistema (per
esempio System Information) che trovate sotto Programmi, Accessori,
oppure Gestione disco che trovate sotto Gestione computer, Archiviazione.
Le utility sono eseguite in user mode.
|