Il funzionamento del client-server in un sistema locale

Quasi tutti i sistemi operativi utilizzano, per il funzionamento dei vari processi, dei meccanismi basati sul modello client-server. Lo stesso kernel si comporta come server quando gestisce le chiamate alle primitive di sistema da parte dei processi in esecuzione.

Più in generale in un sistema operativo, per alcuni tipi di servizi, sono espressamente previsti dei processi server, gli unici in grado di eseguire una certa operazione. Spesso questi processi hanno accesso esclusivo ad una risorsa e devono, appunto, servire le richieste dei processi client.



Ad esempio, nei sistemi Windows è presente uno spooler, unico processo in tutto il sistema a poter utilizzare la stampante. Per poter stampare, un processo non deve interfacciarsi con il driver della stampante (ed eseguire la sequenza del driver virtualizzato acquisizione-uso-rilascio) ma deve inviare i propri dati, attraverso i servizi offerti dal sistema, al processo spooler, il quale, tra l'altro, effettua lo scheduling dei documenti da stampare. Una volta inviati i dati allo spooler, il processo saprà non che la stampa è stata eseguita, ma che lo sarà certamente (a meno di intoppi). Avendo accesso esclusivo a tutte le stampanti di sistema, il driver della stampante non prevede procedure di acquisizione e rilascio.

Fonte: Contributori di Wikipedia, 'Sistema client/server', Wikipedia, L'enciclopedia libera, 16 gennaio 2011, 19:31 UTC, it.wikipedia.org. Modifiche: titolo indice 8. Testo pubblicato con licenza cc-by-sa.