version 1.220, 2013/04/01 15:29:39
|
version 1.224, 2013/05/23 09:20:08
|
Line 318 typedef struct queue_signaux
|
Line 318 typedef struct queue_signaux
|
# ifndef SEMAPHORES_NOMMES |
# ifndef SEMAPHORES_NOMMES |
sem_t semaphore; |
sem_t semaphore; |
sem_t signalisation; |
sem_t signalisation; |
|
sem_t arret_signalisation; |
# endif |
# endif |
# else |
# else |
sem_t semaphore; |
sem_t semaphore; |
sem_t signalisation; |
sem_t signalisation; |
|
sem_t arret_signalisation; |
# endif |
# endif |
|
|
volatile int pointeur_lecture; |
volatile int pointeur_lecture; |
Line 342 __EXTERN__ int f_queue_signaux;
|
Line 344 __EXTERN__ int f_queue_signaux;
|
# ifdef SEMAPHORES_NOMMES |
# ifdef SEMAPHORES_NOMMES |
__EXTERN__ sem_t *semaphore_queue_signaux; |
__EXTERN__ sem_t *semaphore_queue_signaux; |
__EXTERN__ sem_t *semaphore_signalisation; |
__EXTERN__ sem_t *semaphore_signalisation; |
|
__EXTERN__ sem_t *semaphore_arret_signalisation; |
# endif |
# endif |
#endif |
#endif |
|
|
Line 492 union semun
|
Line 495 union semun
|
#endif |
#endif |
|
|
#ifdef SEMAPHORES_NOMMES |
#ifdef SEMAPHORES_NOMMES |
#define SEM_FORK 0 |
#define SEM_FORK 0 |
#define SEM_QUEUE 1 |
#define SEM_QUEUE 1 |
#define SEM_SIGNAUX 2 |
#define SEM_SIGNAUX 2 |
#define SEM_SIGNALISATION 3 |
#define SEM_SIGNALISATION 3 |
|
#define SEM_ARRET_SIGNALISATION 4 |
sem_t *sem_init2(unsigned int valeur, pid_t pid, int ordre); |
sem_t *sem_init2(unsigned int valeur, pid_t pid, int ordre); |
sem_t *sem_init3(unsigned int valeur, pid_t pid, pthread_t tid, int ordre); |
sem_t *sem_init3(unsigned int valeur, pid_t pid, pthread_t tid, int ordre); |
int sem_destroy2(sem_t *semaphore_p, pid_t pid, int ordre); |
int sem_destroy2(sem_t *semaphore_p, pid_t pid, int ordre); |
Line 1460 typedef struct descripteur_thread
|
Line 1464 typedef struct descripteur_thread
|
int pipe_injections[2]; |
int pipe_injections[2]; |
int pipe_nombre_injections[2]; |
int pipe_nombre_injections[2]; |
int pipe_interruptions[2]; |
int pipe_interruptions[2]; |
int pipe_nombre_objets_attente[2]; |
// pipe_nombre_elements_attente == 0 => initialisation ou terminaison |
int pipe_nombre_interruptions_attente[2]; |
// pipe_nombre_elements_attente == 1 => objet en attente |
|
// pipe_nombre_elements_attente == 2 => interruption en attente |
|
int pipe_nombre_elements_attente[2]; |
int pipe_acquittement[2]; |
int pipe_acquittement[2]; |
|
|
volatile integer8 nombre_objets_dans_pipe; |
volatile integer8 nombre_objets_dans_pipe; |
Line 1945 typedef struct processus
|
Line 1951 typedef struct processus
|
int pipe_injections; |
int pipe_injections; |
int pipe_nombre_injections; |
int pipe_nombre_injections; |
int pipe_interruptions; |
int pipe_interruptions; |
int pipe_nombre_objets_attente; |
int pipe_nombre_elements_attente; |
int pipe_nombre_interruptions_attente; |
|
int nombre_objets_envoyes_non_lus; |
int nombre_objets_envoyes_non_lus; |
int nombre_objets_injectes; |
int nombre_objets_injectes; |
|
|
Line 2182 typedef struct processus
|
Line 2187 typedef struct processus
|
/* Traitement des erreurs */ |
/* Traitement des erreurs */ |
|
|
int erreur_compilation; |
int erreur_compilation; |
int erreur_execution; |
volatile int erreur_execution; |
int erreur_systeme; |
volatile int erreur_systeme; |
|
|
struct_objet *s_objet_errone; |
struct_objet *s_objet_errone; |
struct_objet *s_objet_erreur; |
struct_objet *s_objet_erreur; |
Line 2317 typedef struct processus
|
Line 2322 typedef struct processus
|
pthread_mutex_t protection_liste_mutexes; |
pthread_mutex_t protection_liste_mutexes; |
unsigned int sections_critiques; |
unsigned int sections_critiques; |
|
|
/* Drapeau nécessaire ŕ RESTART */ |
/* Variable d'initialisation pour SCHED */ |
|
|
|
logical1 initialisation_scheduler; |
|
|
|
/* Drapeau nécessaire ŕ RESTART */ |
|
|
volatile logical1 requete_redemarrage; |
volatile logical1 requete_redemarrage; |
|
|