Esercizio 1 Scrivete un programma C "creaproc" che crea (mediante fork) il numero di processi specificati in input. ad esempio: $> creaproc 7 crea 7 nuovi.

Slides:



Advertisements
Presentazioni simili
INFORMATICA Altre Istruzioni di I/O
Advertisements

Esercitazioni If nidificati
Stringhe di caratteri In linguaggio C.
SC che operano su processi
Argomenti dalla linea dei comandi Gli argomenti possono essere passati a qualsiasi funzione di un programma, compresa la main(), direttamente dalla linea.
Laboratorio di Linguaggi lezione VI Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea in.
Laboratorio di Linguaggi lezione XI: I/O Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea.
CORSO DI PROGRAMMAZIONE II
Funzioni di Libreria per le stringhe DICHIARAZIONI CONTENUTE NEL FILE: char *strcpy( char *dest, const char *sorg ); Copia sorg in dest, incluso il carattere.
Interazione utente-programma
Esercizio: Copiare un file in un nuovo file mediante le funzioni read e write.
A.A. 2010/2011Ambienti di Programmazione per il Software di Base1 (Es. – 6) Ambienti di Programmazione per il Software di Base Le Stringhe in C Input.
Sistemi Operativi - Shell 1 Elementi di programmazione concorrente Niccolo` Battezzati Politecnico di Torino Dip. Automatica e Informatica.
PUNTATORI Un puntatore è una variabile destinata a contenere lindirizzo di unaltra variabile Vincolo di tipo: un puntatore a T può contenere solo lindirizzo.
void binario(int n); …………………
Creazione progetto in C++/DEV
Costruzione di una semplice Agenda telefonica Elettronica Esercizio sull'uso delle principali system call Unix.
s STRINGHE DI CARATTERI a p e \0
T. MottaGenerazione e terminazione processi1 Creazione e terminazione dei processi Tommaso Motta
1 SC che operano su processi Getpid, fork, exec, wait, waitpid, exit, dup, dup2.
Programmazione di sistema e gestione dei processi in C.
Il linguaggio C Puntatori e dintorni.
Ingegneria del software Modulo 1 - Introduzione al processo software Unità didattica 5 -Test e verifica Ernesto Damiani Università degli Studi di Milano.
1 System Call che operano su processi Getpid, fork, exec, wait, waitpid, exit, dup, dup2.
1 System Call che operano su processi Getpid, fork, exec, wait, waitpid, exit, dup, dup2.
Albero genealogico. Si abbia un albero genealogico come nella figura sotto. Si supponga che i nomi propri delle persone siano tutti diversi, e quindi.
Lezione n. Parole chiave: Corso di Laurea: Insegnamento: Docente: A.A Salvatore Cuomo Approfondimenti di C, Stringhe e file 13 Stringhe.
Script bash I file di comandi in Linux. BASH  Bourne Again Shell  Modalità interattiva o batch (file di comandi)  Ambiente di programmazione “completo”
1 Elementi DI INFORMATICA Università degli Studi di Cagliari Corso di Laurea in Ingegneria Elettronica Linguaggio C A.A. 2011/2012
1 © F. Pedullà, M. VerolaAA La famiglia di system call exec LSO1 Modulo 6 La famiglia di system call exec Laboratorio di Sistemi Operativi.
.  I tipi di dati non primitivi sono gli array, le struct e le union.  Gli array sono degli aggregati di variabili dello stesso tipo.  La dichiarazione.
Gestione della memoria
Ereditarietà Uno dei principi della programmazione orientata agli oggetti (OOP) è il riuso Le classi dovrebbero essere progettate come componenti riutilizzabili.
Ambienti di Programmazione per il Software di Base
Java World Introduzione.
Introduzione al linguaggio C
Tutorato Elementi di Informatica 2013
SWITCH – CASE LINGUAGGIO C.
La famiglia di system call exec Laboratorio di Sistemi Operativi I
Esercizi.
Commenti Ogni riga che comincia con il simbolo # non viene letta dall’interprete per cui rappresenta un modo per commentare il listato # Questo è un esempio.
Unità didattica 1: Introduzione al linguaggio Java
L’AMBIENTE CODE BLOCKS E L’IO
I FILES AD ACCESSO SEQUENZIALE
PROGRAMMAZIONE BASH – ISTRUZIONE IF
Ambienti di Programmazione per il Software di Base
TITOLO PRESENTAZIONE sottotitolo Autore/i Indirizzo
Corso Java Introduzione.
Corso Java Esercizi.
Secondo Programma in C.
Composizioni di classi
Introduzione agli Algoritmi e alle Strutture Dati
Sviluppo di un programma
APPUNTI SUL LINGUAGGIO C
LINUX: struttura generale
Esercizio: componiamo trasformazioni
Programmazione e Laboratorio di Programmazione
Fondamenti di Informatica
La struttura dei primi programma in C
APPUNTI SUL LINGUAGGIO C Esercizi su File e Alberi Binari
comprensione e modifica di codice
Corso di Algoritmi e Strutture Dati APPUNTI SUL LINGUAGGIO C
APPUNTI SUL LINGUAGGIO C
Programmazione e Laboratorio di Programmazione
Programmazione e Laboratorio di Programmazione
Java Costruttore di copia e GetStatus.
Programmazione e Laboratorio di Programmazione
Java Introduzione.
Programmazione e Laboratorio di Programmazione
Script su vettori Realizza uno script che chiede in input una dimensione d e crea un vettore di d numeri interi casuali. Poi calcola la somma dei due numeri.
Transcript della presentazione:

Esercizio 1 Scrivete un programma C "creaproc" che crea (mediante fork) il numero di processi specificati in input. ad esempio: $> creaproc 7 crea 7 nuovi processi forkandosi 7 volte. ogni processo figlio deve stampare su terminale il proprio PID e terminare. Il processo padre deve aspettare la terminazione di tutti i figli (con una wait per ogni figlio) e terminare anche lui. Attenzione: non provate $> creaproc 700 altrimenti intasate il sistema di processi!!!!

alcuni consigli: il compilatore C per compilare il programma: $> gcc creaproc.c crea un eseguibile di nome a.out $> gcc creaproc.c –o creaproc crea un eseguibile di nome "creaproc"

programmi C con argomenti main (int argc, char **argv) { ... } OPPURE: main (argc, argv) int argc; char *argv[ ];

programmi C con argomenti argc indica il numero di "parole" inserite sulla riga di comando argv e' un vettore di puntatori alle stringhe della riga di comando. Ad esempio, nel programma C myprog lanciato dal prompt dei comandi con i seguenti argomenti: $>myprog cinque 45 si avrebbe: argc = 3 argv[0] = "myprog" argv[1] = "cinque" argv[2] = "45"

programmi C con argomenti Osservate in particolare il secondo argomento: argv[2] = "45" E' anch'esso una stringa, e come tale viene trattato all'interno di myprog. E se vogliamo usarlo come un intero? Dobbiamo convertirlo. Il modo piu' comodo per convertire nel formato voluto gli argomenti in input e' la sscanf: int numero; sscanf(argv[2],"%d",&numero); printf("\n secondo argomento = %d\n",numero);