Strumenti Utente

Strumenti Sito


informatica:sol:laboratorio16:esercitazionia:esercitazione7

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Prossima revisione
Revisione precedente
informatica:sol:laboratorio16:esercitazionia:esercitazione7 [12/04/2016 alle 07:29 (9 anni fa)] – creata Massimo Torquatiinformatica:sol:laboratorio16:esercitazionia:esercitazione7 [13/04/2016 alle 13:15 (9 anni fa)] (versione attuale) Massimo Torquati
Linea 1: Linea 1:
 +====== Esercitazione 7 ======
  
-Esercizio 1+System calls (SC) che operano su directory e SC per la creazione ed attesa di terminazione di processi (fork, wait, waitpid). Per gli esercizi proposti si richiede di realizzare un Makefile. 
 + 
 +===== Esercizio 1 ===== 
 + 
 +Scrivere un programma C che dati come argomenti una lista di file o directory stampa per ogni file: il nome del file, il numero dell'inodo, il tipo di file (-,l,d,s,...) la machera di bit di protezione (es. rw-r--r--),  l'user identifier (uid), il group identifier (gid), la size ed il tempo dell'ultima modifica.  
 +Per convertire il tempo di ultima modifica in un formato stampabile usare la funzione di libreria ''ctime''. Usare ''getpwuid'' e ''getgrgid'' per convertire uid e gid nei nomi corrispondenti. 
 + 
 +===== Esercizio 2 =====
  
 Scrivere un programma C chiamato 'lsdir' che, dato come argomento un nome di directory, visita ricorsivamente tutto il sottoalbero di file e directory che ha come root la directory passata come argomento e stampi sullo standard output le informazioni nel seguente formato: Scrivere un programma C chiamato 'lsdir' che, dato come argomento un nome di directory, visita ricorsivamente tutto il sottoalbero di file e directory che ha come root la directory passata come argomento e stampi sullo standard output le informazioni nel seguente formato:
Linea 14: Linea 22:
 </code> </code>
 Durante la visita dell'albero di directory non cosiderare le directory ''.'' e ''..''. Durante la visita dell'albero di directory non cosiderare le directory ''.'' e ''..''.
 +
 +===== Esercizio 3 =====
 +
 +Scrivere un programma che prende un intero N come argomento e crea N processi zombies. Lanciare il programma in background e visualizzare gli zombies con il comando ''ps -A -ostat,pid,ppid | grep Z''
 +
 +===== Esercizio 4 =====
 +
 +Scrivere un programma C che prende come argomento un intero N>1. L'intero N rappresenta il numero di processi figli che devono essere creati in totale.  I processi vanno creati come segue: il processo main stampa il suo pid e crea un figlio attendendone quindi la sua terminazione, il processo figlio a sua volta stampa il suo pid e crea un altro figlio attendendone la terminazione e cosi' via fino ad ottenere N processi figli in tutto. L'output formattato che si richiede che venga stampato sullo standard output e' il seguente: 
 +<code>
 +./family 4
 +---- 20894: creo un processo figlio
 +--- 20895: creo un processo figlio
 +-- 20896: creo un processo figlio
 +- 20897: creo un processo figlio
 +20898: sono l'ultimo discendente
 +20898: terminato con successo
 +- 20897: terminato con successo
 +-- 20896: terminato con successo
 +--- 20895: terminato con successo
 +---- 20894: terminato con successo
 +</code>
 +
 +
 +
 +
 +
informatica/sol/laboratorio16/esercitazionia/esercitazione7.1460446141.txt.gz · Ultima modifica: 12/04/2016 alle 07:29 (9 anni fa) da Massimo Torquati

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki