version 1.162, 2012/04/20 15:18:22
|
version 1.163, 2012/05/16 09:14:04
|
Line 215
|
Line 215
|
# endif |
# endif |
#endif |
#endif |
|
|
|
#ifdef MAIN_RPL |
|
# define __EXTERN__ |
|
# define __STATIC_MUTEX_INITIALIZATION__ = PTHREAD_MUTEX_INITIALIZER |
|
#else |
|
# define __EXTERN__ extern |
|
# define __STATIC_MUTEX_INITIALIZATION__ |
|
#endif |
|
|
/* |
/* |
================================================================================ |
================================================================================ |
Bugs spécifiques |
Bugs spécifiques |
Line 270 typedef struct queue_signaux
|
Line 278 typedef struct queue_signaux
|
} queue[LONGUEUR_QUEUE_SIGNAUX]; |
} queue[LONGUEUR_QUEUE_SIGNAUX]; |
} struct_queue_signaux; |
} struct_queue_signaux; |
|
|
# ifndef MAIN_RPL |
__EXTERN__ struct_queue_signaux *s_queue_signaux; |
extern struct_queue_signaux *s_queue_signaux; |
__EXTERN__ int f_queue_signaux; |
extern int f_queue_signaux; |
|
# ifdef SEMAPHORES_NOMMES |
# ifdef SEMAPHORES_NOMMES |
extern sem_t *semaphore_queue_signaux; |
__EXTERN__ sem_t *semaphore_queue_signaux; |
# endif |
|
# else |
|
struct_queue_signaux *s_queue_signaux; |
|
int f_queue_signaux; |
|
# ifdef SEMAPHORES_NOMMES |
|
sem_t *semaphore_queue_signaux; |
|
# endif |
|
# endif |
# endif |
#endif |
#endif |
|
|
Line 411 typedef unsigned char t_8_bits;
|
Line 412 typedef unsigned char t_8_bits;
|
# define LONGUEUR_NOM_SEMAPHORE 64 |
# define LONGUEUR_NOM_SEMAPHORE 64 |
# endif |
# endif |
|
|
# ifndef MAIN_RPL |
# ifdef SEMAPHORES_NOMMES |
extern jmp_buf contexte_ecriture; |
# define __PTR__ * |
extern jmp_buf contexte_impression; |
# else |
extern jmp_buf contexte_initial; |
# define __PTR__ |
extern jmp_buf contexte_processus; |
# endif |
extern jmp_buf contexte_thread; |
|
|
|
extern int signal_test; |
|
|
|
extern pid_t pid_processus_pere; |
|
|
|
# ifdef SEMAPHORES_NOMMES |
|
extern pthread_mutex_t mutex_sem; |
|
# endif |
|
|
|
extern pthread_mutex_t mutex_liste_threads; |
|
extern pthread_mutex_t mutex_gestionnaires_signaux_atomique; |
|
|
|
extern sem_t |
__EXTERN__ jmp_buf contexte_ecriture; |
# ifdef SEMAPHORES_NOMMES |
__EXTERN__ jmp_buf contexte_impression; |
* |
__EXTERN__ jmp_buf contexte_initial; |
# endif |
__EXTERN__ jmp_buf contexte_processus; |
semaphore_gestionnaires_signaux; |
__EXTERN__ jmp_buf contexte_thread; |
|
|
extern volatile int routine_recursive; |
__EXTERN__ int signal_test; |
# else |
|
jmp_buf contexte_ecriture; |
|
jmp_buf contexte_impression; |
|
jmp_buf contexte_initial; |
|
jmp_buf contexte_processus; |
|
jmp_buf contexte_thread; |
|
|
|
int signal_test; |
__EXTERN__ pid_t pid_processus_pere; |
|
|
pid_t pid_processus_pere; |
# ifdef SEMAPHORES_NOMMES |
|
__EXTERN__ pthread_mutex_t mutex_sem __STATIC_MUTEX_INITIALIZATION__; |
|
# endif |
|
|
# ifdef SEMAPHORES_NOMMES |
__EXTERN__ pthread_mutex_t mutex_liste_threads |
pthread_mutex_t mutex_sem = PTHREAD_MUTEX_INITIALIZER; |
__STATIC_MUTEX_INITIALIZATION__; |
# endif |
__EXTERN__ pthread_mutex_t mutex_gestionnaires_signaux_atomique |
|
__STATIC_MUTEX_INITIALIZATION__; |
|
|
pthread_mutex_t mutex_liste_threads = |
__EXTERN__ sem_t __PTR__ semaphore_gestionnaires_signaux; |
PTHREAD_MUTEX_INITIALIZER; |
|
pthread_mutex_t mutex_gestionnaires_signaux = |
|
PTHREAD_MUTEX_INITIALIZER; |
|
pthread_mutex_t mutex_gestionnaires_signaux_atomique = |
|
PTHREAD_MUTEX_INITIALIZER; |
|
sem_t |
|
# ifdef SEMAPHORES_NOMMES |
|
* |
|
# endif |
|
semaphore_gestionnaires_signaux; |
|
|
|
volatile int routine_recursive; |
__EXTERN__ volatile int routine_recursive; |
# endif |
|
#endif |
#endif |
|
|
#ifdef SEMAPHORES_NOMMES |
#ifdef SEMAPHORES_NOMMES |