Programmazione Concorrente[RISOLTO]
Moderatore: Staff
Regole del forum
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
-
- Linux 0.x
- Messaggi: 64
- Iscritto il: lun 14 gen 2008, 14:14
Programmazione Concorrente[RISOLTO]
Salve a tutti, ho bisogno di fare esercizi sulla programmazione concorrente (clone,fork, etc.).Qualcuno ha del materiale da consigliarmi?Grazie in anticipo
Ultima modifica di afterjames il gio 8 mag 2008, 12:13, modificato 1 volta in totale.
- JohnnyMnemonic
- Staff
- Messaggi: 2733
- Iscritto il: dom 5 set 2004, 0:00
- Nome Cognome: Giuseppe Palmiotto
- Slackware: 14.0
- Kernel: 3.5.5-thanatos
- Località: Bologna
- Contatta:
Re: Programmazione Concorrente
Se parliamo di linguaggio C un ottimo punto di partenza è il GAPIL di Simone Piccardi, trovi facilmente la versione pdf scaricabile liberamente
-
- Linux 0.x
- Messaggi: 64
- Iscritto il: lun 14 gen 2008, 14:14
Re: Programmazione Concorrente
Conosco la Gapil!A me serviva qualcosa di specifico su clone e fork..Senza usare la pthread.Più che altro esercizi.
- 414N
- Iper Master
- Messaggi: 2922
- Iscritto il: mer 13 feb 2008, 16:19
- Slackware: 15.0
- Kernel: 5.15.19
- Desktop: KDE5
- Località: Bulagna
- Contatta:
Re: Programmazione Concorrente
Questa è la home page del corso di Sistemi Operativi L-A della facoltà di ingegneria di Bologna. Trovi slides di teoria e anche di esercizi su fork, pipe e compagnia bella.
Re: Programmazione Concorrente
se vuoi studiare la programmazione concorrente butta il C e studiati erlang
- FireEater
- Linux 3.x
- Messaggi: 508
- Iscritto il: sab 5 feb 2005, 0:00
- Nome Cognome: Giuseppe M.
- Slackware: Current
- Kernel: 2.6.32.7-smp
- Desktop: kde 4.3.4
- Località: Cagliari <---> Torino
Re: Programmazione Concorrente
http://ulisse.polito.it/matdid/3ing_inf ... getto.html questa la pagina dell'esame di tecnologia dei sistemi operativi del politecnico di Torino.
Se vuoi ti posso spedire anche altro materiale, ho dato l'esame 2 settimane fa.
Se vuoi ti posso spedire anche altro materiale, ho dato l'esame 2 settimane fa.
-
- Linux 0.x
- Messaggi: 64
- Iscritto il: lun 14 gen 2008, 14:14
Re: Programmazione Concorrente
Grazie a tutti..A me serve qualcosa principalmente sulla Clone.Vi pongo questa domanda,e scusate l'inesperienza.Ho scritto questa cosa:
Dalle specifiche dell'esercizio si richiedeva di inviare 5 segnali al clone intervallati da due secondi di attesa.Il Clone deve semplicemente aspettare di ricevere un segnale e stampare un messaggio.Funziona.Ma se provo a commentare la
Il programma si blocca prima ed ottengo un segmentation_fault durante l'esecuzione!Non è la prima volta che mi capitano queste stranezze con la clone, qualcuno saprebbe aiutarmi?
Codice: Seleziona tutto
#include<stdio.h>
#include<stdlib.h>
#include<sched.h>
#include<signal.h>
#include<unistd.h>
int flag=5;
int clone_function(){
while(1){
pause();
printf("Sono nella clone..\n");
}
_exit(0);
}
void gestore_segnale(){
printf("Gestore Decremento\n");
flag--;
}
int main(int argc,char **argv){
char stack[1024];
int i;
signal(SIGUSR1,gestore_segnale);
int pid=clone(clone_function,&stack[1024],CLONE_VM,NULL);
for(i=0;i<5;i++){
printf("Invio un segnale..\n");
kill(pid,SIGUSR1); //invio 5 segnali intervallati da attese di 2 secondi
sleep(2);
}
printf("Elimino il clone..\n");
kill(pid,SIGKILL);
printf("Flag %d\n",flag);
return 0;
}
Codice: Seleziona tutto
printf("Invio un segnale..\n");
-
- Linux 0.x
- Messaggi: 64
- Iscritto il: lun 14 gen 2008, 14:14
Re: Programmazione Concorrente
Ho aumentato la dimensione dello stack e funziona.Secondo voi quanto deve essere grande per stare tranquillo?