logo università milano

Laboratorio di Algoritmi e Strutture Dati (edizione diurna)
Corso di laurea in informatica - AA 2012/2013

È online la pagina web per l'anno accademico 2013/2014

Accesso ai laboratori e software

Ogni studente che desideri accedere alle risorse di calcolo del SILab si deve identificare al sistema attraverso un account personale. E' stata predisposta in SILab (davanti all'ufficio) una postazione self-service per la creazione degli account; occorre utilizzare la propria tessera universitaria magnetica e il relativo PIN. Per altri dettagli potete fare riferimento alla pagina del SILab.

In particolare, l'aula tau dispone di 41 macchine, configurate in modo da essere avviate con uno di due sistemi operativi alternativi (dual boot): Windows e GNU/Linux Gentoo. All'avvio bisogna scegliere e indicare quale sistema operativo usare. Durante le lezioni in laboratorio useremo Linux, la prima lezione servirà come introduzione per chi non lo conosce o non è ancora abituato ad usarlo.

Chi di voi fosse nuovo a GNU/Linux e volesse provare ad utilizzarlo sul proprio computer può cominciare usando una distribuzione live, che non richiede necessariamente una procedura di installazione, o di modifica, della configurazione software del proprio computer. Ad esempio, potete usare la versione personalizzata di Ubuntu, disponibile sul sito del corso di Programmazione del Prof. Sebastiano Vigna. Si tratta di software libero, quindi potete copiarlo, distribuirlo e modificarlo liberamente.

Oltre al sistema operativo, il principale software di cui avrete bisogno è un compilatore, nel corso si farà riferimento al gcc, compilatore della GNU. Potete reperirlo per i vari sistemi operativi:

  • ogni distribuzione GNU/Linux che si rispetti lo include già;
  • anche Mac OS X lo include, è sufficiente installare gli Apple Development Tools (scaricabili gratuitamente);
  • sotto Windows si può usare ad esempio il software proposto dall'università del Colorado; in alternativa è possibile installare Cygwin, una sorta di emulatore per Windows degli strumenti GNU.

Inoltre, sarà necessario un editor di testo, come ad esempio:

Per poter accedere al web sotto Linux sono disponibili vari browser, ad esempio Mozilla Firefox, disponibile anche per Windows e installato in laboratorio per entrambi i sistemi operativi.

Come svolgere alcune operazioni di base

Come far comparire il desktop del docente sul vostro desktop

Una volta effettuato il login sotto Linux, è sufficiente digitare il seguente comando

vncviewer pctc-01:5901
Con F8 è quindi possibile accedere al menu delle azioni consentite.

Come editare un programma

Per editare il programma file.c, dopo esservi posizionati nella dierctory che contiene tale file, potete usare il comando

gedit file.c &
Ricordatevi sempre di salvare il sorgente prima di invocare il compilatore.

Come compilare un programma

Per compilare il programma file.c, dopo averlo editato e salvato nella directory corrente, usate il comando

gcc -Wall -o file file.c
Attenzione: il nome del file dopo l'opzione -o va riportato senza estenzione .c

Osservate che se nell'output del compilatore è presente la stringa error significa che il sorgente conteneva un errore grave e che il programma non è stato compilato, può essere che nella directory corrente si trovi un file eseguibile di nome file, ma esso è il risultato di una compilazione precedente; se viceversa è presente la stringa warning significa che il compilatore ha individuato un potenziale problema, ma che esso non ha precluso la possibilità di effettuare la compilazione. Se volete essere certi che la versione compilata corrisponda all'ultimo sorgente, cancellate prima il vecchio eseguibile, ad esempio con i comandi

rm -f file
gcc -Wall -o file file.c
Ovviamente, è bene modificare il programma finché la compilazione termini senza riportare alcun problema!

Come eseguire un programma

Per eseguire il programma file, dopo averlo compilato (ed esservi accertati che il compilatore non abbia rioprtato messaggi d'errore) usate il comando

./file
Se volete interrompere l'esecuzione di un programma potete premere ^c (ossia il tasto "control" contemporaneamente al tasto "c"), una combinazione dei tasti che invia un segnale al programma che, tranne in casi particolari, ne produce l'arresto.

Come usare tiegcc

In SILAB è stato istallato tiegcc, uno strumento di supporto all'apprendimento del linguaggio C, sviluppato da un ex studente del corso come progetto di tesi triennale. Per usarlo, è necessario innanzitutto esportare il path con il seguente comando

export PATH=/users/ms000123/tiegcc/bin:$PATH
A questo punto è possibile usare tiegcc per compilare. Ad esempio, per compilare un programma chiamato nome_file.c, basta usare il comando
tiegcc nome_file.c
Tiegcc invoca il compilatore gcc e se si verificano degli errori produce un messaggio del tipo:
punta il browser su file:///users/lonati/.tiegcc/out/tiegcc.html per controllare gli errori
Aprendo la pagina indicata con il browser, sarà possibile visualizzare l'elenco degli errori e alcuni suggerimenti su come correggerli.

Per altri suggerimenti...

... potete consultare questa pagina preparata dal Dott. Massimo Santini