• Non ci sono risultati.

Prova Pratica di Laboratorio di Sistemi Operativi 19 luglio 2010

N/A
N/A
Protected

Academic year: 2021

Condividi "Prova Pratica di Laboratorio di Sistemi Operativi 19 luglio 2010"

Copied!
1
0
0

Testo completo

(1)

Prova Pratica di Laboratorio di Sistemi Operativi 19 luglio 2010

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.

Esercizio1 Linguaggio C (obbligatorio): (20 punti) Scrivere un programma mergefifo che “misceli” l'input preso da due named pipe (passate come parametri) e dello standard input nello standard output. Il programma deve usare la system call poll.

Es:

mkfifo f1; mkfifo f2 mergefifo f1 f2

….

a questo punto tutto ciò che si scrive qui o da altri terminali in f1 o f2 deve comparire in output.

Esercizio2: Linguaggio C (15 punti):

Completare l'esercizio 1 con una gestione piu' completa della linea comando (tramite getopt_long).

In particolare si vuole che siano gestiti:

mergefifo -h mergefifo --help

che fornisce un semplice “usage”.

Il programma deve consentire di porre l'output in un file diverso dallo standard output tr amite un parametro -o oppure --out seguito dal nome del file.

Esercizio 3 Script: (10 punti): Lo script deve produrre l'elenco dei file che sono stati modificati in due sottoalberi cioe' per esempio:

diffy dir.v1 dir.v2

dove dir.v1 e dir.v2 sono due directory, deve produrre la lista dei file presenti nella stessa posizione relativa in dir.v1 e dir.v2 che hanno contenuto diverso.

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.

Nota importante: In tutti gli esercizi in C e' vietato l'uso delle funzioni di libreria “system” e “popen”.

Riferimenti

Documenti correlati

Scrivere un programma che per ogni file .c nella directory corrente chiami il compilatore gcc per generare il file oggetto (.o) a meno che esista gia' nella directory un file

deve creare il file 'file1' recuperando il contenuto dal file generato da myt2 dell'esercizio1 Esercizio 3: Script bash o Python: (10 punti):. Il comando che dovrete implementare

se dir1 contiene i file pippo, pluto e paperino e la directory paperopoli e quest'ultima contiene i file paperino, qui quo e qua, all'interno di dir2 divranno essere contenuti

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

Esercizio 1 Linguaggio C (obbligatorio): (25 punti) Scrivere il programma lanciatutto che esegua in modo concorrente tutti i file “eseguibili” della directory corrente passando

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

Esercizio2: (5 punti): Scrivere in C un programma che stampi quanti file, quanti link simbolici, file speciali, quante directory sono presenti nella directory corrente.. Esercizio