12 Luglio 2000

 

PROVA SCRITTA di FONDAMENTI DI INFORMATICA

Ingegneria elettronica

 

Un dispositivo di rete D e’ costituito da N porte, ciascuna utilizzabile sia per ricevere che per trasmettere messaggi del tipo:

Struct messaggio

  {

int destinazione;

char *dati;

int selezione ;

  }

dove destinazione indica la porta di uscita su cui deve essere inoltrato il messaggio e dati e’ una stringa di testo contenente le informazioni del messaggio.

 

Il dispositivo D deve monitorare in continuazione le sue porte per smistare correttamente i messaggi in ingresso.

Sono presenti altri due processi.

Il processo A si occupa di osservare in continuazione le porte dispari (1, 3, 5, …) da cui estrae i messaggi in uscita e li inserisce in base al campo selezione all’interno di un albero binario di ricerca.

Il processo B osserva in continuazione le porte pari (2, 4, 6, …) e, sempre in base al campo selezione, provvede ad inserire i messaggi in uscita all’interno di una lista doppiamente concatenata.

 

Definire la struttura dati e codificare il programma in linguaggio C.