• Non ci sono risultati.

Prova Pratica di Laboratorio di Sistemi Operativi – 20/9/2005

N/A
N/A
Protected

Academic year: 2021

Condividi "Prova Pratica di Laboratorio di Sistemi Operativi – 20/9/2005"

Copied!
1
0
0

Testo completo

(1)

Prova Pratica di Laboratorio di Sistemi Operativi – 20/9/2005

Esercizio 0 (“Se copiate, vi caccio”)

Rendete la vostra directory home inaccessibile ad altri utenti (sia in lettura che in esecuzione). Rimuovete tutti i file che vi appartengono dalla directory /public.

Esercizio 1 – (18 punti)

Scrivere un programma che faccia il ripetitore di segnali. Richiamato con il numero di un processo come argomento deve rispedire tutti i segnali che riceve al processo indicato come parametro (quelli “gestibili”, non ad esempio il segnale 9). Es:

$ ripeti 2525

rimandera' tutti i segnali ricevuti al processo 2525

Esercizio 2 – (10 punti)

Scrivere un programma che funzioni da “terminale” in grado di comunicare tramite due named pipe (fifo) con un programma gemello.

Es. dopo aver creato due fifo di nome f1 e f2 in una finestra si scrive:

$

fifoterm f1 f2 in un'altra finestra $ fifoterm f2 f1

tutto quello che si digita in una finestra deve comparire nella seconda e viceversa.

Ogni carattere letto in input deve essere posto su uno dei due fifo (diciamo quello indicata come secondo parametro) e cio' che viene letto dall'altro fifo viene posto in output

Suggerimenti (aprire le fifo con parametri O_RDWR | O_NONBLOCK, leggere il manuale di poll o di select).

Esercizio 3 – (10 punti)

Scrivere uno script che elenchi tutti i file contenuti nel sottoalbero determinato da una directory, ordinandoli per lunghezza del pathname: prima quelli che hanno pathname relativo piu' corto poi via via quelli che hanno path piu' lungo.

Esercizio 3 (“Consegnate! E’ ora!”):

Consegnare gli script e il sorgente del programma C, in attachment separati, entro il tempo a disposizione, via e-mail a:

montreso chiocciola cs.unibo.it o renzo chiocciola cs.unibo.it. Il subject del mail deve essere uguale a PROVAPRATICA, i nomi dei file in attachment devono contenere il vostro cognome (per evitare confusioni in fase di correzione).

INOLTRE:

Riferimenti

Documenti correlati

Il risultato del programma, stampato su standard output, deve essere un solo numero intero: la somma del numero di caratteri presenti nelle n-me colonne di tutti i file regolari,

Il risultato del programma, stampato su standard output, deve essere un solo numero intero: la somma del numero di caratteri presenti nelle n-me righe di tutti i file regolari,

l'ouput significa che se contiamo tutti i caratteri contenuti nella prima riga di tutti i file in mydir otteniamo 234 (mydir/file1 puo' avere 40 caratteri nella prima riga,

Scrivere un programma che stampi il numero di inode di ogni file presente in una direcotory passata come argomento (o della direcotry corrente se il programma viene chiamato

Lo script o il programma python da realizzare deve fornire l'occupazione totale in byte dei file della directory corrente che corrispondono alla espressione regolare passata

Alla fine il file passato come parametro deve mantenere il proprio contenuto ma le aree inutilizzate (blocchi da 1K completamente a 0) devono essere non allocati.. Per provare

Esercizio 3 Script: (10 punti): Occorre scrivere uno script bash che dato un file e la sua precedente versione a.old aggiorni il file a su una macchina remota.. Es:

Esercizio 3 Script: (15 punti): scrivere uno script bash che scandisca tutto un sottoalbero del file system e cambi la data di ultimo accesso di tutti i file acceduti oggi ponendola