• Non ci sono risultati.

Prova Pratica di Laboratorio di Sistemi Operativi 20 giugno 2012

N/A
N/A
Protected

Academic year: 2021

Condividi "Prova Pratica di Laboratorio di Sistemi Operativi 20 giugno 2012"

Copied!
1
0
0

Testo completo

(1)

Prova Pratica di Laboratorio di Sistemi Operativi 20 giugno 2012

Esercizio 0 (“Se copiate, vi cacciamo”)

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: Linguaggio C (obbligatorio): (24 punti)

Scrivere un programma chiamato spy che tenga sotto controllo una directory (il cui pathname viene passato come unico paramentro), e segnali, stampandone il nome, ogni file che viene creato in tale directory.

Si faccia uso della interfaccia inotify (leggere la pagina di manuale).

Attenzione: il buffer per gli eventi deve avere dimensione superiore a quella della struttura inotify_event altrimento non c'e' spazio per il campo name.

Esercizio 2: completamento spy (6 punti)

Si completi l'esercizio 1: se il nuovo file e' eseguibile, il file deve essere eseguito e cancellato. (e' sempre vietato l'uso di system, popen e simili).

Esercizio 3: Script bash o Python: (10 punti):

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 come parametro.

e.s. sizere 'l[az]x' 444

significa che la somma delle ampiezze dei file di tre lettere alfabetiche minuscole che iniziano per l finiscono per x, e' di 444 byte.

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

Consegnare lo script e il sorgente del programma C, in attachment separati, entro il tempo a disposizione, via e-mail a: 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:

Se volete che il vostro lavoro venga giudicato, lasciate aperta la vostra sessione (incluso il vostro editor) e lasciate il laboratorio. Verrete richiamati uno alla volta per una breve discussione sul vostro elaborato.

Riferimenti

Documenti correlati

Se volete che il vostro lavoro venga giudicato, lasciate aperta la vostra sessione (incluso il vostro editor) e lasciate il laboratorio. Verrete richiamati uno alla volta per una

Scrivere un programma python o uno script bash che conti il numero dei file eseguibili presenti nella directory passata come parametro catalogandoli per tipo di interprete. (se il

All'attivazione scrive nel file il proprio pid e aspetta un segnale sigusr1.Quando riceve il segnale legge Anche in questo esercizio occorre usare solo la signalfd e non la signal o

mytar crea il file indicato come secondo parametro e registra in esso tutti i file regolari presenti nella directory (ddd nell'esempio).. Ogni

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,

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

Scrivere uno script bash o un programma python che presi in input un file e una directory fornisca la lista dei file nella directory e in tutto il sottoalbero generato che hanno

lancian deve essere completato in modo che lo standard output di tutti le copie venga unificato ed emesso come standard output del programma lancian, in modo ordinato: l'intero