<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://didawiki.cli.di.unipi.it/lib/exe/css.php?s=feed" type="text/css"?>
<rss version="2.0">
    <channel xmlns:g="http://base.google.com/ns/1.0">
        <title>DidaWiki - lcs:lcs07:esercitazioni</title>
        <description></description>
        <link>https://didawiki.cli.di.unipi.it/</link>
        <lastBuildDate>Mon, 06 Apr 2026 12:58:02 +0000</lastBuildDate>
        <generator>FeedCreator 1.8</generator>
        <image>
            <url>https://didawiki.cli.di.unipi.it/lib/exe/fetch.php/wiki/dokuwiki.svg</url>
            <title>DidaWiki</title>
            <link>https://didawiki.cli.di.unipi.it/</link>
        </image>
        <item>
            <title>Esercitazione 1</title>
            <link>https://didawiki.cli.di.unipi.it/doku.php/lcs/lcs07/esercitazioni/esercitazione1</link>
            <description>Esercitazione 1

Esercizio 0: Getting started -- Preprocessing, compilazione e linking

0.1) Compilare ed eseguire il seguente programma:


#include &lt;stdio.h&gt;
#include &lt;math.h&gt;

int main (void) {
  double x=3.0;

  printf(&quot;Radice = %f\n&quot;,sqrt(x));
  return 0;
}</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Sat, 10 Feb 2007 04:58:40 +0000</pubDate>
        </item>
        <item>
            <title>Esercitazione 2</title>
            <link>https://didawiki.cli.di.unipi.it/doku.php/lcs/lcs07/esercitazioni/esercitazione2</link>
            <description>Esercitazione 2

Esercizio 0 : getting started

Scrivere uno script bash gettingStarted che stampi il suo nome, il numero degli argomenti ed i primi tre argomenti (se esistono). Come


bash:~$ ./gettingStarted mio tuo suo
Script ./gettingStarted con 3 argomenti
Primo parametro mio
Scondo parametro tuo
Terzo parametro suo
Ciao Mondo
bash:~$</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 26 Feb 2007 15:13:55 +0000</pubDate>
        </item>
        <item>
            <title>Esercitazione 3</title>
            <link>https://didawiki.cli.di.unipi.it/doku.php/lcs/lcs07/esercitazioni/esercitazione3</link>
            <description>Esercitazione 3

Esercizio 1: ridefiniamo &#039;cd&#039;

Ridefinire il builtin cd usando una funzione cd in modo che con 0 o 1 parametri si comporti come il
builtin cd mentre con 2 parametri, ad esempio:


cd old new


sostituisca tutte le occorrenze di old nella working directory corrente con</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Fri, 23 Mar 2007 12:56:53 +0000</pubDate>
        </item>
        <item>
            <title>Esercitazione 4</title>
            <link>https://didawiki.cli.di.unipi.it/doku.php/lcs/lcs07/esercitazioni/esercitazione3sc</link>
            <description>Esercitazione 4

Questa esercitazione tratta le system call che operano su file.

Per gli esercizi 1, 2, 3, 4 DEVE essere prodotto un opportuno makefile con target per la creazione di oggetti ed eseguibili, e per l&#039;esecuzione del test automatico del codice prodotto.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 19 Mar 2007 08:53:47 +0000</pubDate>
        </item>
        <item>
            <title>Esercitazione 5</title>
            <link>https://didawiki.cli.di.unipi.it/doku.php/lcs/lcs07/esercitazioni/esercitazione4</link>
            <description>Esercitazione 5

Questa esercitazione e&#039; relativa alle system call per la gestione dei processi. 
Per eseguire un comando usare le funzioni della famiglia exec ed (eventualmente) una fork. 

Esercizio 0: Sulle volpi

Cosa stampa il seguente main?


int main (void) {
  printf(&quot;The quick brown fox jumped over &quot;);
  fork();
  printf(&quot;the lazy dogs\n&quot;);
  return 0;
}</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Fri, 16 Mar 2007 13:35:52 +0000</pubDate>
        </item>
        <item>
            <title>Esercitazione 6</title>
            <link>https://didawiki.cli.di.unipi.it/doku.php/lcs/lcs07/esercitazioni/esercitazione5</link>
            <description>Esercitazione 6

Questa esercitazione si concentra sui thread POSIX e sulle SC relative che abbiamo presentato.

Esercizio 1: Produttore e consumatore

Scrivere un programma C con due thread: produttore e consumatore. Il thread produttore genera una sequenza di numeri casuali e li inserisce in una coda condivisa. Il thread consumatore estrae i numeri dalla coda e li stampa sullo standard output.
In particolare, il thread produttore deve eseguire un ciclo infinito in cui genera un numero casuale</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Fri, 16 Mar 2007 13:37:13 +0000</pubDate>
        </item>
        <item>
            <title>Esercitazione 7: Pipe</title>
            <link>https://didawiki.cli.di.unipi.it/doku.php/lcs/lcs07/esercitazioni/esercitazione7</link>
            <description>Esercitazione 7: Pipe

Esercizio 0: Produttore e consumatore con pipe

Scrivere un programma C che implementi un processo produttore che genera N numeri casuali, li passa ad un processo consumatore usando una pipe senza nome e poi termina. Il consumatore deve stampare ciascun numero ricevuto sullo standard output e terminare a sua volta.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 16 Apr 2007 11:11:00 +0000</pubDate>
        </item>
        <item>
            <title>Esercitazione 8</title>
            <link>https://didawiki.cli.di.unipi.it/doku.php/lcs/lcs07/esercitazioni/esercitazione8</link>
            <description>Esercitazione 8

Esercizio 0: Un server ed un client

Scrivere due programmi C che realizzano un server ed un client che intergiscono con socket AF_UNIX come nell&#039;esempio visto a lezione, Il server, creata la connessione, si mette in attesa di un messaggio da parte del client che contiene</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Fri, 04 May 2007 09:25:36 +0000</pubDate>
        </item>
        <item>
            <title>Esercitazione 9: segnali</title>
            <link>https://didawiki.cli.di.unipi.it/doku.php/lcs/lcs07/esercitazioni/esercitazione9</link>
            <description>Esercitazione 9: segnali

Esercizio 0: Gestire SIGINT e SIGTERM

Personalizzare SIGINT e SIGTERM in modo da stampare un breve msg di saluto prima di terminare il processo. Fare in modo che il gestore utilizzi solo funzioni garantite safe e che l&#039;arrivo contemporaneo dei due segnali non interrompa il gestore.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Mon, 30 Apr 2007 08:47:00 +0000</pubDate>
        </item>
        <item>
            <title>Sommario lezioni ed esercitazioni</title>
            <link>https://didawiki.cli.di.unipi.it/doku.php/lcs/lcs07/esercitazioni/start</link>
            <description>Sommario lezioni ed esercitazioni

Importante:

	*  Gli argomenti delle lezioni non ancora svolte sono suscettibili di modifica. Controllate sempre la versione piu&#039; aggiornata.
	*  I link alle soluzioni delle esercitazioni verranno attivati solo dopo che l&#039;esercitazione e&#039; stata effettuata.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
            <pubDate>Fri, 11 May 2007 15:03:28 +0000</pubDate>
        </item>
    </channel>
</rss>
