Le système d'exploitation SOLARIS 2.5 sur lequel le système ARG`ES est installé ne supporte pas certaines définitions POSIX. C'est le cas pour :
#ifdef SOLARIS (sema_init(DeleteTasksPrR, 0, USYNC_THREAD, 0) != OK) || (sema_init(DeletePrR, 0, USYNC_THREAD, 0) != OK) ) // USYNC_THREAD -> intra-process and counter = 0 { #else (sem_init(DeleteTasksPrR, 0, 1) != OK) || (sem_init(DeletePrR, 0, 1) != OK) ) // 0 -> intra-process{ #endif
#ifdef SOLARIS if (thr_create(NULL, NULL, (FUNCPTR)interface, NULL, NULL, &InterfaceId) != OK) { printf("error in thr_create interface,stack_size=%d\n", THR_MIN_STACK) ; } #else if (pthread_create(InterfaceId, NULL, (FUNCPTR)interface,0 ) != OK) { printf("error in pthread_create interface \n") ; } #endif