--- rpl/src/analyse.c 2013/03/21 14:13:55 1.83 +++ rpl/src/analyse.c 2013/05/22 09:05:20 1.86 @@ -1,6 +1,6 @@ /* ================================================================================ - RPL/2 (R) version 4.1.13 + RPL/2 (R) version 4.1.14 Copyright (C) 1989-2013 Dr. BERTRAND Joël This file is part of RPL/2. @@ -964,8 +964,6 @@ analyse_instruction(struct_processus *s_ void analyse(struct_processus *s_etat_processus, void (*fonction)()) { - static logical1 initialisation = d_faux; - real8 attente; real8 pourcentage; real8 temps_cpu; @@ -1196,7 +1194,7 @@ analyse(struct_processus *s_etat_process gettimeofday(&horodatage_final, NULL); - if (initialisation == d_vrai) + if ((*s_etat_processus).initialisation_scheduler == d_vrai) { temps_reel = ((real8) (horodatage_final.tv_sec - horodatage_initial.tv_sec)) + @@ -1234,8 +1232,8 @@ analyse(struct_processus *s_etat_process (*s_etat_processus).pourcentage_maximal_cpu) - (pourcentage * temps_cpu / 100); - temporisation.tv_sec = (__time_t) floor(attente); - temporisation.tv_nsec = (__suseconds_t) ((attente + temporisation.tv_sec = (time_t) floor(attente); + temporisation.tv_nsec = (suseconds_t) ((attente - ((real8) temporisation.tv_sec)) * 1E9); while(nanosleep(&temporisation, &temporisation) == -1) @@ -1253,7 +1251,7 @@ analyse(struct_processus *s_etat_process } else { - initialisation = d_vrai; + (*s_etat_processus).initialisation_scheduler = d_vrai; horodatage_initial = horodatage_final; usage_initial = usage_final; @@ -1261,7 +1259,7 @@ analyse(struct_processus *s_etat_process } else { - initialisation = d_faux; + (*s_etat_processus).initialisation_scheduler = d_faux; } /*