31.05.2013 Views

Il sistema operativo Windows XP - Apogeo

Il sistema operativo Windows XP - Apogeo

Il sistema operativo Windows XP - Apogeo

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Come il <strong>sistema</strong> <strong>operativo</strong> di UNIX, la maggior parte del <strong>sistema</strong> è scritta in C ed in C++. La<br />

maggior parte del codice, dipendente dal processore, è isolata in una libreria di collegamento dinamico<br />

(DLL), chiamata strato di astrazione hardware (hardware-abstraction layer: HAL). Una DLL è<br />

una file che è mappato nello spazio degli indirizzi del processo in modo che qualsiasi funzione<br />

nella DLL sembri far parte del processo. Gli strati superiori del kernel di <strong>Windows</strong> <strong>XP</strong> dipendono<br />

dalle interfacce HAL piuttosto che dall’hardware sottostante, realizzando la portabilità di <strong>Windows</strong><br />

<strong>XP</strong>. HAL manipola l’hardware direttamente, isolando il resto di <strong>Windows</strong> <strong>XP</strong> dalle differenze<br />

hardware fra le piattaforme in cui funziona.<br />

Anche se per ragioni di mercato, <strong>Windows</strong> 2000 veniva consegnato solo per piattaforme<br />

compatibili con Intel IA32, è stato anche provato, prima del rilascio, su piattaforme IA32 e DEC<br />

Alpha per assicurare la portabilità. <strong>Windows</strong> <strong>XP</strong> funziona su processori IA32 compatibili e IA64.<br />

Microsoft riconosce l'importanza dello sviluppo e della prova su multipiattaforme, poiché, dal<br />

punto di vista pratico, mantenere la portabilità è una questione di usarlo o perderlo.<br />

2.7 Supporto Internazionale<br />

<strong>Windows</strong> <strong>XP</strong> è pure progettato per un uso internazionale e multinazionale, fornisce supporto per<br />

differenti lingue locali tramite API di supporto al linguaggio nazionale (national-languagesupport<br />

API: NLS). L’API NLS fornisce procedure specializzate al formato della data, dell’ora ed<br />

alla moneta corrente in conformità con gli usi nazionali. I confronti di stringhe sono particolarizzati<br />

per tener conto dei vari insiemi di caratteri alfabetici. UNICODE è il codice di carattere nativo di<br />

<strong>Windows</strong> <strong>XP</strong> che supporta anche i caratteri ANSI convertendoli in UNICODE prima di manipolarli<br />

(conversione da 8 bit a 16 bit). Le stringhe di testo del <strong>sistema</strong> sono mantenute nei file di risorsa<br />

che si possono sostituire per particolarizzare il <strong>sistema</strong> nei differenti linguaggi; più lingue locali si<br />

possono usare contemporaneamente, il che è importante per persone multilingui e nel campo degli<br />

affari.<br />

3 Componenti di Sistema<br />

L'architettura di <strong>Windows</strong> <strong>XP</strong> è un <strong>sistema</strong> stratificato di moduli, come si vede in Figura 1. Gli<br />

strati principali sono HAL, il kernel e il codice eseguibile che funzionano in modo protetto e una<br />

collezione di sottosistemi e di servizi che funzionano in modalità utente. I sottosistemi in modalità<br />

utente si dividono in due categorie: sottosistemi di ambiente che emulano differenti sistemi operativi<br />

ed i sottosistemi di protezione (protection subsystems) che forniscono funzioni di sicurezza. Uno<br />

dei principali vantaggi di questo tipo di architettura è che le interazioni fra moduli sono mantenute<br />

semplici. <strong>Il</strong> resto di questo paragrafo descrive questi strati e sottosistemi.<br />

3.1 Strato di astrazione dell’hardware<br />

HAL è lo strato del software che nasconde le differenze hardware tra i livelli superiori del <strong>sistema</strong><br />

<strong>operativo</strong> per aiutare a rendere portabile <strong>Windows</strong> <strong>XP</strong>. HAL esporta un'interfaccia di macchina<br />

virtuale che viene usata dal dispatcher del kernel, dal codice eseguibile e dai driver del dispositivo.<br />

5

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!