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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

È noioso e propenso agli errori scrivere codice per fare il marshal e trasmettere argomenti nel<br />

formato standard, eseguire l’unmarshal ed eseguire la procedura remota, eseguire il marshal e inviare<br />

risultati ottenuti, ed infine eseguire l’unmarshal e restituire l’esito al chiamante. Fortunatamente,<br />

tuttavia, molto di questo codice può essere generato automaticamente mediante una semplice<br />

descrizione degli argomenti per poi restituire i risultati.<br />

<strong>Windows</strong> <strong>XP</strong> fornisce il linguaggio per la definizione di interfacce Microsoft (Microsoft<br />

interface definition language) che descrive i nomi delle procedure remote, gli argomenti ed i<br />

risultati. <strong>Il</strong> compilatore del linguaggio genera le intestazioni dei file che dichiarano gli stub delle<br />

procedure remote, i tipi di dati per gli argomenti e i messaggi con il valore di ritorno; genera, pure,<br />

il codice sorgente per gli stub delle procedure, usate sul versante client, per eseguire l’unmarshal e<br />

per spedirle al server. Quando l'applicazione è collegata (linked), sono inclusi anche gli stub delle<br />

procedure e quando l'applicazione esegue lo stub dell’RPC, il codice generato gestisce il resto.<br />

6.3.7 Modello di oggetto comune<br />

<strong>Il</strong> modello dell'oggetto componente (component object model: COM) è un meccanismo di<br />

comunicazione tra processi che è stato sviluppato per <strong>Windows</strong>. Gli oggetti COM forniscono<br />

un'interfaccia ben definita per gestire i dati nell'oggetto. Per esempio, COM è l'infrastruttura usata<br />

dalla tecnologia di object linking and embedding (OLE) per inserire fogli di calcolo elettronici<br />

nei documenti di WORD. <strong>Windows</strong> <strong>XP</strong> possiede un'estensione distribuita denominata DCOM che<br />

può essere usata in una rete che utilizza RPC per fornire un metodo trasparente di sviluppo per le<br />

applicazioni distribuite.<br />

6.4 Reindirizzatori e server<br />

In <strong>Windows</strong> <strong>XP</strong>, un'applicazione può usare le API I/O per accedere ai file da un computer remoto<br />

come se fossero locali, una volta che quello remoto faccia funzionare un server CIFS come quello<br />

che si trova in <strong>Windows</strong> <strong>XP</strong> o nei sistemi precedenti di <strong>Windows</strong>. Un reindirizzatore (redirector)<br />

è un oggetto sul versante client che inoltra richieste I/O ai file remoti che verranno soddisfatte da<br />

un server. Per questioni di prestazioni e sicurezza, i reindirizzatori e i server funzionano in modalità<br />

kernel.<br />

In maggior dettaglio, l'accesso ad una file remoto avviene nel modo seguente:<br />

• L'applicazione chiama il gestore di I/O per richiedere che un file venga aperto con un nome del<br />

file nel formato standard UNC.<br />

• <strong>Il</strong> gestore di I/O costruisce un pacchetto di richiesta I/O, come è descritto nel Paragrafo<br />

3.3.5 di questo capitolo.<br />

• <strong>Il</strong> gestore di I/O riconosce che l'accesso è per un file remoto, e chiama il driver fornitore della<br />

convenzione di denominazione universale multipla (multiple universal-naming-convention<br />

provider: MUP).<br />

• MUP invia il pacchetto di richiesta di I/O in modo asincrono a tutti i reindirizzatori registrati.<br />

48

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

Saved successfully!

Ooh no, something went wrong!