version 1.120, 2011/09/14 14:34:28
|
version 1.121, 2011/09/14 17:56:00
|
Line 227 enum signaux_rpl
|
Line 227 enum signaux_rpl
|
rpl_sigalrm, // Signal d'alarme (erreur système) depuis un fils |
rpl_sigalrm, // Signal d'alarme (erreur système) depuis un fils |
rpl_sighup, |
rpl_sighup, |
rpl_sigtstp, |
rpl_sigtstp, |
|
rpl_sigexcept, |
rpl_sigmax |
rpl_sigmax |
}; |
}; |
|
|
Line 397 typedef unsigned char t_8_bits;
|
Line 398 typedef unsigned char t_8_bits;
|
extern pthread_mutex_t mutex_sem; |
extern pthread_mutex_t mutex_sem; |
# endif |
# endif |
|
|
extern pthread_key_t semaphore_fork_processus_courant; |
extern pthread_mutex_t mutex_liste_threads; |
|
extern pthread_mutex_t mutex_gestionnaires_signaux_atomique; |
|
|
extern sem_t |
extern sem_t |
# ifdef SEMAPHORES_NOMMES |
# ifdef SEMAPHORES_NOMMES |
* |
* |
# endif |
|
semaphore_liste_threads; |
|
|
|
extern sem_t |
|
# ifdef SEMAPHORES_NOMMES |
|
* |
|
# endif |
# endif |
semaphore_gestionnaires_signaux; |
semaphore_gestionnaires_signaux; |
|
|
extern sem_t |
|
# ifdef SEMAPHORES_NOMMES |
|
* |
|
# endif |
|
semaphore_gestionnaires_signaux_atomique; |
|
|
|
# ifdef SEMAPHORES_NOMMES |
|
// 0 -> liste_threads |
|
// 1 -> gestionnaire_signaux |
|
// 2 -> gestionnaire_signaux_atomique |
|
// 3 -> &((*s_etat_processus).semaphore_fork) |
|
extern unsigned char noms_semaphores[4][LONGUEUR_NOM_SEMAPHORE]; |
|
extern sem_t *semaphores_nommes[4]; |
|
# endif |
|
# else |
# else |
jmp_buf contexte; |
jmp_buf contexte; |
jmp_buf contexte_initial; |
jmp_buf contexte_initial; |
Line 439 typedef unsigned char t_8_bits;
|
Line 420 typedef unsigned char t_8_bits;
|
pthread_mutex_t mutex_sem = PTHREAD_MUTEX_INITIALIZER; |
pthread_mutex_t mutex_sem = PTHREAD_MUTEX_INITIALIZER; |
# endif |
# endif |
|
|
pthread_key_t semaphore_fork_processus_courant; |
pthread_mutex_t mutex_liste_threads = |
|
PTHREAD_MUTEX_INITIALIZER; |
|
pthread_mutex_t mutex_gestiionnaires_signaux = |
|
PTHREAD_MUTEX_INITIALIZER; |
|
pthread_mutex_t mutex_gestionnaires_signaux_atomique = |
|
PTHREAD_MUTEX_INITIALIZER; |
sem_t |
sem_t |
# ifdef SEMAPHORES_NOMMES |
# ifdef SEMAPHORES_NOMMES |
* |
* |
# endif |
|
semaphore_liste_threads; |
|
|
|
sem_t |
|
# ifdef SEMAPHORES_NOMMES |
|
* |
|
# endif |
# endif |
semaphore_gestionnaires_signaux; |
semaphore_gestionnaires_signaux; |
|
|
sem_t |
|
# ifdef SEMAPHORES_NOMMES |
|
* |
|
# endif |
|
semaphore_gestionnaires_signaux_atomique; |
|
|
|
# ifdef SEMAPHORES_NOMMES |
|
unsigned char noms_semaphores[4][LONGUEUR_NOM_SEMAPHORE]; |
|
sem_t *semaphores_nommes[4]; |
|
# endif |
|
# endif |
# endif |
#endif |
#endif |
|
|
Line 2179 typedef struct processus
|
Line 2147 typedef struct processus
|
|
|
pid_t pid_processus_pere; |
pid_t pid_processus_pere; |
pthread_t tid_processus_pere; |
pthread_t tid_processus_pere; |
pthread_t tid_courant; |
|
|
|
logical1 processus_detache; |
logical1 processus_detache; |
|
|
Line 2195 typedef struct processus
|
Line 2162 typedef struct processus
|
pthread_mutex_t mutex; |
pthread_mutex_t mutex; |
pthread_mutex_t mutex_allocation; |
pthread_mutex_t mutex_allocation; |
|
|
// Sémaphore autorisant les fork() |
// Mutex autorisant les fork() |
sem_t |
pthread_mutex_t mutex_fork; |
# ifdef SEMAPHORES_NOMMES |
|
* |
|
# endif |
|
semaphore_fork; |
|
|
|
/* Mutexes */ |
/* Mutexes */ |
|
|