Gli studenti il cui piano di studi prevede Sistemi Operativi a 12 CFU dovranno realizzare, oltre a quanto riportato nella specifica, un server in grado di collezionare i dati acquisiti dai diversi client.

Swordx server

Realizzare un server in C, denominato swordxd in grado di collezionare le informazioni statistiche ricevute dai client.

L'applicazione swordxd viene eseguita con i parametri:

swordxd (–port|-p) <port> (–inet|-i) <address> (–output|-p) <output_file>

Dopo l'avvio il server riceverà connessioni sulla porta <port> e sull'interfaccia <address>. I client che si connetteranno invieranno una sequenza di righe della seguente forma:

<parola> <contatore>\n

Ad ogni nuova connessione il server aggiornerà le informazioni statistiche collezionate ed aggiornerà il file <output_file> (il formato del file di output è lo stesso di quello prodotto da swordx descritto nella specifica).

Swordx

Sarà possibile indicare il server a cui una particolare istanza di swordx dovrà inviare le informazioni utilizzando le seguenti opzioni:

swordx (–host|-h) <hostname> (–port|p) <port>