Brevet FR3099267A1 — publié le 20210129

Description Titre de l'invention : Procédé implémenté par ordinateur pour planifier des ressources et dispositif de planification de ressources Domaine de l'invention [0001] L'invention se rapporte à un procédé implémenté par un ordinateur pour planifier des ressources et un dispositif pour planifier des ressources. Etat de la technique [0002] L'invention sc rapporte en particulier à un procédé implémenté par ordinateur pour planifier des ressources, notamment des ressources de temps de calcul d'au moins une installation de calculs comportant des noyaux de calculateur pour l'exécution de tâches. [0003] Exposé et avantages de l'invention [0004] L'invention a pour objet un procédé implémenté par ordinateur du type défini ci- dessus comprenant les étapes suivantes : fournir un ensemble de conteneurs, chaque conteneur ayant une priorité attribuée ou attribuable et attribuer au moins une tâche à au moins l'un des conteneurs et attribuer chaque conteneur à au moins un coeur de calculateur. [0005] Ce procédé permet, par exemple, de mettre à disposition un système de planification flexible, conscient des ressources, c'est-à-dire un système de planification de tâches (missions) pour son exécution par l'installation de calcul permettant de garantir avantageusement, par exemple, les temps de fonctionnement. [0006] Selon des formes de réalisation préférentielles, on applique ce procédé à un appareil de commande tel qu'un moteur à combustion interne d'un véhicule automobile, en particulier, pour planifier efficacement et en souplesse des tâches (planifications) mais sans que le procédé ne soit limité à ce domaine d'application. Des formes de réalisation préférentielles peuvent s'appliquer en outre, également aux systèmes d'assistance avancée du conducteur. Selon une forme de réalisation préférentielles, l'installation de calcul comporte plus d'un coeur de calculateur. [0007] Dans la suite on utilisera l'expression « mission » ou de « lâche» comme unité pour un programme planifiable et exécutable (par exemple, sous la forme d'un programme d'ordinateur ou de partie de programme d'ordinateur) ; la planification selon d'autres formes de réalisation préférentielles est faite par un planificateur ou un système de planification qui développe l'exécution du procédé selon les formes de réalisation et les tâches peuvent représenter des sous-systèmes complets, par exemple, des machines virtuelles. [0008] Selon d'autres formes de réalisation préférentielles, au moins l'un des conteneurs, de 2 préférence chacun des conteneurs, se voit attribuer une priorité, notamment statique, ce qui permet une commande efficace selon la priorité. [0009] Selon d'autres formes de réalisation préférentielles, on attribue à au moins l'un des conteneurs, et de préférence à chacun des conteneurs, un budget de ressources qui comprend notamment des ressources de temps de calcul pour le conteneur ou la tâche attribuée au conteneur. Cela permet de répartir, de manière souple, les ressources de temps de calcul disponibles de l'installation de calcul entre différents conteneurs. Ainsi, selon d'autres formes de réalisation préférentielles, par exemple, on prévoit différents conteneurs avec chaque fois des priorités différentes et des volumes égaux, analogues ou différents de ressources de temps de calcul. [0010] Selon d'autres formes de réalisation préférentielles, chaque conteneur, c'est-à-dire son temps de fonctionnement garanti, est dimensionné ou budgété à l'intérieur d'une tranche de temps (c'est-à-dire un budget de ressources). Selon d'autres formes de réalisation préférentielles, des tâches exclusives peuvent être attribuées à des conteneurs. Par exemple, la dimension du conteneur selon d'autres formes de réalisation préférentielles, garantit pour une tâche, un temps de fonctionnement dans une tranche de temps définie au préalable. [0011] Selon d'autres formes de réalisation préférentielles, à au moins l'un des conteneurs, de préférence à chacun des conteneurs, on attribue une stratégie de réalimentation du budget, permettant, par exemple, pour différents conteneurs, de prévoir une réalimentation différente du budget de ressources, ce qui augmente d'autant la souplesse. [0012] Selon d'autres formes de réalisation préférentielles, à au moins l'un des conteneurs, de préférence à chacun des conteneurs, on attribue une stratégie de réalimentation de budget et notamment cette stratégie de réalimentation du budget caractérise au moins l'un des éléments suivants : [0013] a. l'instant de la réalimentation du budget de ressources associé au conteneur, [0014] b. le volume de la réalimentation du budget de ressources associé au conteneur. [0015] Selon d'autres formes de réalisation, le budget de ressources est périodiquement rempli de nouveau et/ou notamment à des instants spécifiés, en particulier statiques et/ ou en fonction d'autres critères, notamment en fonction de la consommation antérieure des ressources associées au budget de ressources, notamment des ressources de temps de calcul. [0016] Selon d'autres formes de réalisation préférentielles, on attribue à au moins l'un des conteneurs, et de préférence à chacun des conteneurs, une stratégie de justification de budget et notamment cette stratégie caractérise le comportement du conteneur notamment le budget non utilisé, directement. [0017] Selon d'autres formes de réalisation préférentielles, la stratégie de justification du budget prévoit : 3 [0018] a) que le hudget de ressources du conteneur est déchu à un certain instant tel que l'instant de réalimentation du hudget de ressources associé au conteneur, notamment dans la mesure où aucune tâche n'est prête pour utiliser le hudget de ressources attribué au conteneur, et/ou [0019] h) le hudget de ressources du conteneur reste conservé, notamment pour des tâches non encore arrivées. [0020] De façon préférentielle, le budget de ressources du conteneur reste réservé jusqu'à la réalimentation suivante. A ce moment, la réalimentation pourra se faire de manière préférentielle, notamment jusqu'à un niveau de budget prédéfini et d'une manière encore plus préférentielle, non au-delà de la valeur du hudget prédéfini. [0021] Selon d'autres formes de réalisation préférentielles, le procédé consiste en outre à : [0022] - déterminer pour chaque tâche prête, à chaque fois un premier conteneur avec un budget de ressources ne disparaissant pas (budget de ressources qui dépasse un seuil prédéfini) de sorte que le premier conteneur est conservé, [0023] - sélectionner le premier conteneur déterminé avec la priorité la plus élevée, cc qui maintient le conteneur sélectionné, notamment si le conteneur sélectionné a été déterminé pour plusieurs tâches, on sélectionne la tâche qui a la priorité la plus grande parmi cet ensemble. [0024] Selon d'autres formes de réalisation préférentielles, pour chaque coeur de calculateur, on détermine une tâche correspondante et en particulier on commande ou on exécute la tâche correspondante. [0025] Selon d'autres formes de réalisation préférentielles, au moins un et de préférence au moins deux conteneurs sont respectivement utilisés, notamment comme réserve-tampon statique et en particulier, le conteneur ayant la priorité la plus grande est utilisé comme première réserve-tampon et/ou notamment le conteneur ayant la priorité la plus basse est utilisée comme seconde réserve-tampon. [0026] L'expression « réserve-tampon » (Slack Pool) vient du domaine de l'analyse de la programmation en temps réel. L'expression « Slack » désigne souvent un état de fonctionnement à vide d'un système que l'on peut encore rentabiliser. Le « Pool » est un conteneur logique dans lequel on regroupe le temps de fonctionnement non planifié pour l'utiliser de manière dynamique, de préférence selon des critères définis de manière fixe. Cela garantit le comportement du système en temps réel. [0027] Selon d'autres formes de réalisation préférentielles, le système de réserve-tampon est considérée comme un moyen pour caractériser etlou collecter etlou réserver etlou fournir et/ou organiser des ressources, notamment des ressources de temps de calcul. Selon d'autres formes de réalisation préférentielles, cette fonctionnalité est réalisée, par exemple, par au moins un conteneur. [0028] Selon d'autres formes de réalisation, la réserve-tampon est considérée comme un conteneur qui ne sert pas à garantir le temps de fonctionnement proprement d'une ou plusieurs tâches, mais qui est utilisé de manière souple pour une ou plusieurs tâches associées nécessitant notamment un temps de fonctionnement dépassant leur temps garanti. [0029] Selon d'autres formes de réalisation préférentielles, la réserve-tampon est considérée comme différence entre le temps de fonctionnement garanti et le temps de fonctionnement nécessaire pour une ou plusieurs tâches. [0030] Selon d'autres formes de réalisation préférentielles, la réserve-tampon est considérée comme réserve de secours pour des tâches qui nécessitent un temps de fonctionnement dépassant leur temps garanti. Ce système de réserve est réparti de préférence entre une et plusieurs réserves-tampon. [0031] Selon d'autres formes de réalisation préférentielles, on prévoit ou utilise un nombre quelconque de réserves-tampon ou de conteneurs. Par exemple, selon d'autres formes de réalisation préférentielles, on ne prévoit qu'une réserve-tampon. [0032] Selon d'autres formes de réalisation préférentielles, la réserve-tampon est prévue, de préférence comme sauvegarde pour des fonctions en dépassement ou des cas particuliers qui nécessitent, par exemple, de manière imprévisible, plus de temps de fonctionnement que celui préalablement garanti. [0033] Selon d'autres formes de réalisation préférentielles, on exécute une succession de tâches (par exemple, dans le cadre d'une planification, par exemple, avant d'activer un dispositif exécutant le procédé). [0034] Selon d'autres formes de réalisation préférentielles, on utilise tout d'abord des conteneurs pour fournir des ressources et d'une manière encore plus préférentielle, on utilise les réserves-tampon comme sauvegarde si le conteneur indiqué n'a plus de budget. De manière encore plus préférentielles, on accède à la ou aux réserves-tampon selon les priorités prédéfinies. [0035] Selon des formes de réalisation préférentielles, on prévoit une ou plusieurs réserves- tampon et également plusieurs niveaux de priorité. Pour d'autres formes de réalisation préférentielles, on organise les réserves-tampon par une hiérarchie. [0036] Selon des formes de réalisation préférentielles, on attribue au moins une tâche à une première réserve-tampon et notamment cette tâche est a) attribuée à au moins un autre conteneur que la première réserve-tampon, et [0037] b) on l'attribue en plus à la première réserve-tampon. Cela permet de prévoir selon des formes de réalisation préférentielles, par exemple, des ressources nécessaires régulièrement pour l'exécution de la tâche concernée, par exemple, dans au moins un autre conteneur et, le cas échéant, d'autres ressources nécessaires pour l'exécution de la tâche concernée peuvent être prélevées dans la première réserve-tampon. [0038] Selon d'autres formes de réalisation préférentielles, on attribue au moins une tâche, par exemple, à la seconde réserve-tampon et en particulier cette tâche est attribuée : [0039] a) à au moins un autre conteneur que la seconde réserve-tampon, et [0040] h) en plus à la seconde réserve-tampon. Cela augmente la souplesse de la plani- fication et/ou de l'exécution des tâches. [0041] Selon d'autres formes de réalisation préférentielles, on attribue au moins une tâche, par exemple, seulement à la première réserve-tampon ou à la seconde réserve-tampon. Selon d'autres formes préférentielles, on attribue au moins une tâche à plusieurs réserves tampon. [0042] Selon d'autres formes de réalisation préférentielles, on attribue au moins une tâche à la première réserve-tampon et à la seconde réserve-tampon et à un autre conteneur. [0043] L'invention s'applique également à un dispositif pour la mise en oeuvre du procédé tel que défini ci-dessus. Selon des caractéristiques, le dispositif intègre l'installation de calcul et/ou une fonctionnalité du dispositif est réalisée au moins en partie par l'installation de calcul. Selon d'autres formes de réalisation, le dispositif est utilisé pour fournir un système de planification. [0044] Selon d'autres caractéristiques, l'invention se rapporte à un programme d'ordinateur comprenant des instructions qui, lors de l'exécution du programme par l'ordinateur lui font exécuter le procédé, c'est-à-dire les étapes du procédé selon les différentes formes de réalisation. [0045] L'invention a également pour objet un support de mémoire lisible par un ordinateur pour exécuter les instructions par un ordinateur pour exécuter les étapes du procédé de l'invention. [0046] L'invention se rapporte également à un signal de support de données que le programme d'ordinateur transmet ou caractérise. [0047] D'autres formes de réalisation préférentielles concernent l'application du procédé et/ ou du dispositif et du programme d'ordinateur, notamment pour planifier des ressources de temps de calcul d'une installation de calculs, notamment d'un système de gestion d'une installation de calcul et/ou d'un hyperviseur pour commander des machines virtuelles. Le principe, selon les formes de réalisation peut être exécuté dans un appareil de commande, par exemple, d'un appareil gérant le fonctionnement du moteur à combustion interne d'un véhicule automobile. Présentation des dessins [0048] La présente invention sera décrite ci-après, de manière plus détaillée à l'aide de modes de réalisation du procédé de l'invention représenté dans les dessins annexés dans lesquels : [0049] [fig.l] représentation schématique par blocs simplifiée de formes de réalisations pré- férentielles, 6 [0050] [fig.2A] représentation schématique d'un ordinogramme simplifié d'un procédé selon d'autres modes de réalisation préférentiels, [0051] [fig.2B] représentation schématique d'un ordinogramme simplifié d'un procédé selon d'autres modes de réalisation préférentiels, [0052] [fig.2C] représentation schématique d'un ordinogramme simplifié d'un procédé selon d'autres modes de réalisation préférentiels, [0053] [fig.2D] représentation schématique d'un ordinogramme simplifié d'un procédé selon d'autres modes de réalisation préférentiels, [0054] [fig.3] représentation schématique d'un ordinogramme simplifié d'un procédé selon d'autres modes de réalisation préférentiels, [0055] [fig.4] représentation schématique d'un ordinogramme simplifié d'un procédé selon d'autres modes de réalisation préférentiels, [0056] [fig.5] représentation schématique d'un ordinogramme simplifié d'un procédé selon d'autres modes de réalisation préférentiels. [0057] Description du mode de réalisation de l'invention [0058] La [fig.1] montre un schéma par blocs simplifié d'un système de planification 10 cor- respondant à des formes de réalisation préférentielles. Le système de planification 10 peut être obtenu, par exemple, en utilisant un procédé décrit en référence à la [fig.2A] selon d'autres formes de réalisation préférentielles. [0059] D'autres formes de réalisation préférentielles concernent un procédé implémenté par ordinateur pour planifier des ressources, notamment des ressources de temps de calcul d'une installation de calcul 200 comportant plusieurs coeurs de calculateur 202a, 202b [fig.I]) pour exécuter des tâches TI...T5 comprenant les étapes suivantes (voir [fig.2A]) consistant à : [0060] - fournir 100 un ensemble de conteneurs informatiques Cl. C2, C3, C4, C5 ([fig.1]), chaque conteneur Cl. C2, C3, C4, C5 ayant ou recevant une priorité, [0061] - attribuer 110 ([fig.2A]) au moins une tâche Tl, T2, T3, T4, T5 à au moins l'un des conteneurs Cl....C5, [0062] - attribuer 120 ([fig.2A]) chacun des conteneurs Cl. ..C5 à notamment un et pré- cisément un coeur de calculateur 202a, 202b (figure 1) parmi plusieurs coeurs de calculateur. Cela permet, par exemple, de disposer d'un système de planification 10 flexible, conscient des ressources, c'est-à-dire d'un système de planification de missions (tâches) pour leur exécution par l'installation de calcul 200. [0063] A la [fig.1], on a représenté, à titre d'exemple, cinq tâches, par exemple, les tâches Ti, T2, T3, T4, T5 ; la flèche Al orientée vers le haut à la [fig.1] est une verticale indiquant la priorité croissante des tâches TI,....T5. En option, la flèche Al peut également indiquer la priorité croissante des priorités des conteneurs Cl ...Ci Dans la suite de la description, on utilisera l'expression « tâche » ou mission comme unité pour 7 planifier et exécuter des programmes (par exemple, sous la forme d'un programme d'ordinateur) et la planification se fait pour d'autres formes de réalisation préférentielles, par exemple, par un organe de planification ou un système de planification 10 conçus pour l'exécution du procédé selon les formes de réalisation. Pour d'autres formes de réalisation préférentielles, les tâches peuvent également représenter des sous-systèmes complets comme, par exemple, des machines virtuelles. [0064] Pour d'autres formes de réalisation préférentielles, il est prévu d'attribuer au moins une priorité statique particulière à au moins l'un des conteneurs, de préférence à chacun des conteneurs C1,...C5, (voir l'étape en option 150 de la [fig.2B]), ce qui permettrait une commande efficace selon la priorité. [0065] Selon d'autres formes de réalisation préférentielles, il est prévu d'attribuer à au moins l'un des conteneurs, et de préférence à chacun des conteneurs C1,...C5, un budget de ressources (voir l'étape en option 152 selon la [fig.2B]) et, notamment le budget de ressources attribue des ressources, notamment des ressources de temps de calcul pour les missions associées aux conteneurs ou à chaque conteneur. Cela permet de répartir, de manière souple, entre différents conteneurs, les ressources de temps de calcul disponibles pour l'installation de calcul 200 ([fig.1]). C'est ainsi que pour d'autres formes de réalisation préférentielles, il est possible, de prévoir, par exemple, différents conteneurs avec à chaque fois des priorités différentes et des quantités égales ou analogues ou différentes de ressources de temps de calcul. [0066] Selon d'autres formes de réalisation préférentielles, chaque conteneur C1,...C5 ou chaque temps de fonctionnement garanti dans un segment de temps est dimensionné ou budgété (voir le budget de ressources). Selon d'autres formes de réalisation préférentielles, les conteneurs peuvent se voir attribuer également en exclusivité, des formes de réalisation. A titre d'exemple, le dimensionnement du conteneur selon d'autres formes de réalisation préférentielles, garantit à l'une ou cette tâche, un temps de fonctionnement pour un segment de temps prédéfini. [0067] Selon d'autres formes de réalisation préférentielles, on associe à au moins l'un des conteneurs, de préférence à chacun des conteneurs C1,...C5, une stratégie de réalimentation du budget ; (voir l'étape en option 154 de la [fig.2C]). Cela permet, par exemple, de prévoir pour différents conteneurs, une réalimentation différente de leur budget de ressources ce qui augmente d'autant la souplesse. [0068] Selon une autre forme de réalisation préférentielles, on associe à au moins l'un des conteneurs, de préférence à chacun des conteneurs C1,...C5, une stratégie de réalimentation du budget ; en particulier, la stratégie de réalimentation du budget caractérise au moins l'un des éléments suivants : [0069] a) un instant auquel se fait la réalimentation du budget de ressources associé au conteneur, 8 [0070] h) le volume de la réalimentation du budget de ressources associé au conteneur. [0071] Selon d'autres formes de réalisation préférentielles, il est prévu de réalimenter pério- diquement le budget de ressources et/ou à des instants spécifiés, notamment de manière statique, et/ou en fonction d'autres critères, notamment en fonction de la consommation préalable de ressources associées au budget de ressources, notamment les ressources de temps de calcul (voir l'étape en option 156 à la [fig.2C]). [0072] Selon d'autres formes de réalisation préférentielles, il est prévu d'associer à au moins l'un des conteneurs, de préférence à chacun des conteneurs C1,...C5 une stratégie de justification de budget (voir, par exemple, l'étape en option 158 de la [fig.2C]) ; en particulier, la stratégie de justification du budget caractérise le comportement du conteneur concernant notamment un budget de ressources, qui n'a pas été utilisé directement. [0073] Selon d'autres formes de réalisation préférentielles, la stratégie de justification du budget prévoit que : [0074] a) le budget de ressource du conteneur est déchu à un instant ou au moment de la ré- alimentation du budget de ressources associé au conteneur, notamment dans la mesure où aucune tâche T1,...T5 n'est prête à utiliser le budget de ressources associé à ce conteneur et/ou en ce que [0075] h) le budget de ressources du conteneur reste réservé, notamment pour des tâches qui peuvent encore arriver. Pour d'autres formes de réalisation préférentielles, le budget non utilisé au moment de la réalimentation est déchu. De façon préférentielles, on ré-alimente en particulier, toujours à un budget de temps préalablement défini. [0076] La structure du système de planification 10 représentée à titre d'exemple à la [fig.1] sera décrite selon d'autres formes de réalisation préférentielles. Chaque mission ou chaque tâche T1,...T5 sont associées à un ou plusieurs conteneurs informatiques C1,...C5 qui seront appelés pour d'autres formes de réalisation par l'expression « conteneur de planification ». La succession des conteneurs de planification est figurée pour d'autres formes de réalisation préférentielles, par exemple, dans une liste, notamment pour chacune des tâches T1,...T5. Le numéro au bord de la tâche vers le conteneur spécifie, de manière préférentielle, la position dans la liste. A titre d'exemple, selon la [fig.l], la tâche Tl est associée au conteneur Cl et au conteneur C4, le chiffre 1 sur la flèche entre la tâche Tl et le conteneur Cl indique que le conteneur Cl est en première position dans la liste correspondante évoquée ci-dessus ; le chiffre « 2 » sur la flèche entre la tâche Tl et le conteneur C4 indique que le conteneur C4 est en seconde position dans la liste ordonnée, évoquée ci-dessus. [0077] Comme déjà indiqué, selon d'autres formes de réalisation préférentielles, chaque conteneur de planification C1,...C5 n'est figuré que (c'est-à-dire précisément) pour un coeur de processeur 202a, 202b. Selon d'autres formes de réalisation, chaque conteneur 9 de planification C1,...C5 est caractérisé par les attributs suivants (voir également la figure schématique d'un conteneur C selon la [fig.5]) : une priorité P, un budget de ressources RB (voir également l'étape 152 de la [fig.2B]), une stratégie de réalimentation de budget S1 (voir également l'étape 154 de la [fig.2B]) une stratégie de justification de budget S2 (voir également l'étape 158 à la [fig.2B]). En d'autres termes, pour d'autres formes de réalisation préférentielles, tous les conteneurs Cl ...C5 de la [fig.1] peuvent avoir la structure C de la [fig.5]. [0078] Selon d'autres formes de réalisation préférentielles, en fonction des algorithmes utilisés, on aura des différences, par exemple, à la fois pour la justification du budget et pour la réalimentation du budget. Il peut s'agir d'éléments en partie subtils et qui peuvent, pour d'autres formes de réalisation préférentielles, être néanmoins combinés avec le principe des formes de réalisation. [0079] Selon d'autres formes de réalisation préférentielles (voir [fig.3]) il est prévu que le procédé comprend en outre les étapes suivantes : [0080] déterminer 160 pour chaque tache prête (le bloc B1 de la [fig.3] symbolise, à titre d'exemple, toutes les tâches Ti. T2, T4, T5 qui sont prêtes à l'instant donné pour être exécutées), un premier conteneur avec le budget de ressources RB qui ne sera pas supprimé ([fig.5]) si bien que les premiers conteneurs C' déterminés restent maintenus, [0081] sélectionner 162 celui des premiers conteneurs déterminés C' ayant la priorité la plus élevée de sorte que l'on maintient ainsi un conteneur sélectionné C" et en particulier si le conteneur sélectionné a été déterminé pour plusieurs tâches, on choisit celle des différentes tâches qui a la plus grande priorité. Le bloc B2 représente un exemple d'association de conteneurs à budget de ressources pour des tâches selon l'étape 160, par exemple, sous la forme [Cl, TI], [C2, T2], [C3, T4] ; la première tâche Tl est ainsi associée au premier conteneur Cl ; la seconde tâche T2 est associée au second conteneur C2 et la quatrième tâche T4 est associée au troisième conteneur C3. Le bloc B3 représente un exemple d'associations de coeurs de calculateur 202a, 202b ([fig.1]) aux tâches respectives et le bloc B4 ([fig.3]) représente l'exécution de la tâche respective dans le coeur respectif. Pour d'autres formes de réalisation préférentielles, il est prévu que pour chaque coeur de calculateur, on détermine une tâche correspondante et en particulier, on lance l'exécution de la tâche correspondante ou on l'exécute (voir bloc B4). En outre, de façon préférentielle, on répète le déroulement présenté à titre d'exemple à la [fig.3], en particulier en le commandant selon les événements (par exemple, lorsqu'une nouvelle tâche s'ajoute) et/ou on le répète périodiquement. [0082] Pour d'autres formes de réalisation préférentielles, (voir [fig.2D]) il est prévu qu'au moins deux des conteneurs seront toutefois utilisés, comme réserve-tampon, notamment statique (voir étape 170) et, par exemple, en particulier, le conteneur C4 ( [fig.I]) ayant la priorité la plus élevée (voir flèche Al, qui indique également la priorité des conteneurs Cl ...C5) sera utilisé comme première réserve-tampon SP1 et/ ou selon lequel, notamment, par exemple, le conteneur C5 ayant la priorité la plus faible sera utilisé comme seconde réserve-tampon SP2. [0083] Selon d'autres modes de réalisation préférentiels, le nombre de réserve tampons et/ou de priorisation à l'accès seront configurables de manière flexible, le cas échéant notamment de manière dynamique (par rapport au temps de fonctionnement). [0084] Selon d'autres formes de réalisation préférentielles, on peut concevoir und « réserve- tampon » comme moyen pour caractériser des ressources, notamment des ressources de temps de calcul et/ou les collecter et/ou les réserver et/ou les organiser. Selon d'autres modes de réalisation préférentiels, cette fonctionnalité peut se réaliser par exemple, à l'aide d'au moins un conteneur C4, Ci [0085] Selon d'autres formes de réalisation préférentielles, il est prévu d'attribuer au moins une tâche Tl à la première réserve-tampon SPI (voir « la flèche » de la tâche Tl reliée à la première réserve-tampon SP1 à la [fig.1]) (voir l'étape 172 à la [fig.2D]) et notamment cette tâche Tl est attribuée : [0086] a) à au moins un autre conteneur Cl qu'au premier réservoir tampon SP1, et [0087] h) en plus à la première réserve-tampon SPI . Ainsi, pour d'autres formes de réa- lisation préférentielles, on pourra, par exemple, prévoir régulièrement pour l'exécution de la tâche T1 concernée, des ressources nécessaires, par exemple, dans au moins un autre conteneur Cl et, le cas échéant, d'autres ressources nécessaires à l'exécution de la tâche concernée peuvent être prélevées (le la première réserve-tampon SPI. [0088] Selon d'autres formes de réalisation préférentielles, on associe au moins une tâche à une réserve-tampon. De cette manière, on pourra recueillir les éventuels trop-pleins des tâches concernées le cas échéant, par la réserve-tampon attribuée. [0089] Selon d'autres formes de réalisation préférentielles, il est prévu d'associer au moins une tâche T3, T4 à la seconde réserve-tampon SP2 (voir l'étape 174 de la [fig.2D]) et notamment d'attribuer au moins une tâche T3, T4, [0090] a) à au moins un autre conteneur C2, C3 à la seconde réserve-tampon SP2, et [0091] b) en plus à la seconde réserve-tampon SP2. Cela augmente la souplesse de la plani- fication et/ou de l'exécution des tâches. [0092] Selon d'autres formes de réalisation préférentielles, il est prévu d'attribuer au moins une tâche T5 seulement à la première réserve-tampon (non représentée) ou à la seconde réserve-tampon SP2, (voir la flèche de la tâche T5 vers la seconde réserve-tampon SP2 et voir l'étape 176 selon la [fig.2D]). [0093] Selon d'autres formes de réalisation préférentielles, il est prévu qu'au moins une tâche soit attribuée à la première réserve-tampon et à la seconde réserve-tampon et à au moins un autre conteneur, (voir l'étape 178 de la [fig.2D]). [0094] Les étapes des déroulements décrits précédemment en référence aux ordinogrammes 11 des figures 2A, 2B, 2C, 2D, 3 peuvent, selon d'autres formes de réalisation préférentielles, être exécutées au moins partiellement dans d'autres successions présentées à titre d'exemple, et/ou au moins qui se chevauchent partiellement dans le temps et/ou qui se répètent notamment périodiquement. [0095] D'autres aspects avantageux du système de planification 10 présentés à titre d'exemple selon la [fig.1] seront décrits à l'aide d'autres formes de réalisation préférentielles. [0096] Les conteneurs C4, C5 représentent deux réserves-tampons statiques SPI, SP2 (ayant une priorité) ; la première réserve-tampon SP1 de cet exemple est planifiée comme conteneur C4 de priorité la plus élevée et peut fournir le budget (par exemple des ressources de temps de calcul) pour les deux tâches T1, T2 de plus grande priorité si leur budget « propre » (par exemple venant d'autres conteneurs Cl, C2) n'est pas suffisant. Cela peut être, par exemple, le cas pour une exécution demandée rarement de telles tâches ou si les autres conteneurs CI, C2 attribués à ces tâches ont été dimensionnés trop petits (par exemple concernant le temps de fonctionnement moyen). D'autres temps de fonctionnement plus longs sont ainsi absorbés selon d'autres formes de réalisation préférentielles, par la première réserve-tampon SPI, commune, notamment statique. Avec l'attribution de la priorité la plus élevée à cette première réserve-tampon SP1 selon d'autres formes de réalisation préférentielles, on garantit avantageusement que de tels dépassements seront directement absorbés. [0097] Selon d'autres formes de réalisation préférentielles, la seconde réserve-tampon SP2, notamment également statique, recueille avec la priorité la plus faible dans cet exemple, seulement les charges de la tâche T3 et de la tâche T4 si aucun autre conteneur C3 à priorité plus élevée a un budget de ressources. Dans ce cas, la tâche T5 n'est attribuée, à titre d'exemple, qu'à cette seconde réserve-tampon SP2. Ainsi elle ne deviendra active que lorsque tous les autres budgets seront consommés et que les tâches T3 et T4 ne sont pas prêtes à être exécutées. Aux instants auxquels les tâches T3 et T4 ne nécessitent pas de budget, la tâche T5 peut, par exemple, utiliser le temps de fonctionnement garanti de la seconde réserve-tampon SP2. [0098] La flexibilité particulière selon les formes de réalisation préférentielles se caractérise, par exemple, en ce que la tâche Tl et la tâche T2 sont attribuées en plus au second centre de messagerie SP2. Cela permet d'absorber encore des dépassements plus importants de ces tâches importantes Tl, T2 à la charge des tâches moins importantes T3, T4, T5, pour garantir la bonne exécution de tâches Tl, T2 particulièrement critiques. [0099] D'autres formes de réalisation préférentielles concernent un dispositif 300 ([fig.4]) pour exécuter le procédé selon au moins l'une des versions précédentes. Selon d'autres formes de réalisation préférentielles, le dispositif 300 peut être intégré dans l'installation de calcul 200 de la [fig.1] et/ou réaliser une fonctionnalité du dispositif 12 300 au moins partiellement par l'installation de calcul 200. En d'autres termes, selon d'autres formes de réalisation préférentielles, l'installation de calcul 200 peut être conçue pour exécuter le procédé selon les formes de réalisation présentées, par exemple, à l'aide d'un coeur de calculateur (non représenté) prévu particulièrement à cet effet. Selon d'autres formes de réalisation préférentielles, le dispositif 300 ([fig.4]) est, par exemple, utilisé pour fournir un système de planification 10 ([fig.1]). [0100] Le dispositif 300 ([fig.4]) comporte au moins une installation de calcul 302, au moins une mémoire 304 associée à l'installation de calcul 302 pour enregistrer au moins périodiquement un programme d'ordinateur PRG ; cc programme d'ordinateur PRG est conçu notamment pour commander le fonctionnement du dispositif 300, par exemple, pour exécuter au moins de temps en temps le procédé selon les formes de réalisation. [0101] Selon d'autres formes de réalisation préférentielles, l'installation de calcul 302 comporte au moins l'un des éléments suivants : un microprocesseur, un micro-contrôleur, un processeur de signaux numériques (DSP), un composant logique programmable, par exemple un réseau FPGA, (réseau de portes programmables), un circuit ASIC (circuit dédié dans son application), un circuit ou des combinaisons selon d'autres formes de réalisation préférentielles. [0102] Selon d'autres formes de réalisation préférentielles, l'installation de calcul 302 a au moins un coeur de calculateur. [0103] Selon d'autres formes de réalisation préférentielles, la mémoire 304 a au moins l'un des éléments suivants : mémoire volatile 304a, notamment mémoire vive RAM, mémoire non volatile 304b, notamment mémoire flash EEPROM. De façon préférentielles, le programme d'ordinateur PRG est enregistré dans la mémoire non volatile 304b. [0104] Selon d'autres formes de réalisation préférentielles, les données nécessaires au fonc- tionnement du système de planification 10 ([fig.1]), par exemple, les paramètres P, RB, Si, S2 ([fig.51) et autres, peuvent être mémorisées au moins provisoirement dans la mémoire 304, pour un ou plusieurs ou tous les conteneurs et/ou les attributions entre les tâches et/ou les conteneurs et/ou entre les conteneurs et les coeurs de calculateur, etc. données caractérisantes DAT. [0105] D'autres formes de réalisation préférentielles concernent le programme d'ordinateur PRG comprenant des instructions qui, par l'exécution du programme par un ordinateur, assurent l'exécution du procédé / des étapes du procédé. [0106] D'autres formes de réalisation préférentielles concernent le support de mémoire SM lisible par un ordinateur comprenant des instructions, par exemple, sous la forme du programme d'ordinateur PRG qui, lors de l'exécution par un ordinateur, assurent l'exécution du procédé / des étapes du procédé. [0107] D'autres formes de réalisation préférentielles concernent le signal de support de 13 données DS que le programme d'ordinateur PRG, transmet et/ou caractérise. A l'aide du signal de support de données DS, le programme d'ordinateur PRG peut être transféré, par exemple, d'une unité externe (non représentée) du dispositif 300. Le dispositif 300 comporte, par exemple, une interface de données 306, de préférence bidirectionnelle entre autres pour recevoir le signal de support de données DS. [0108] D'autres formes de réalisation préférentielles concernent une utilisation du procédé selon les formes de réalisation et/ou du dispositif 300 selon les formes de réalisation et/ ou du programme d'ordinateur PRG selon les formes de réalisation et/ou du signal de support de données DS selon les formes de réalisation pour planifier les ressources de temps de calcul d'une installation de calcul 200 ([fig.1]) notamment pour un système de gestion de l'installation de calcul 200 et/ou pour un hyperviscur de commande de machines virtuelles. [0109] Le principe selon les formes de réalisation, permet de dimensionner de façon efficace les budgets des ressources, comme, par exemple, les ressources de temps de calcul de l'installation de calcul 200 (cas moyen) et de recueillir les dépassements, par exemple, par les réserves-tampon SP1, SP2, ce qui permet de garantir des propriétés avantageuses de travail en temps réel. [0110] Le principe selon les formes de réalisation, permet de plus une hiérarchisation claire du budget des ressources RB ([fig.5]) sur différents niveaux de priorité P, Al qui peuvent être attribués avantageusement de manière flexible au niveau du conteneur. Ainsi, par exemple, dans chaque situation dynamique, il est clairement défini quelle tâche sera exécutée avec quel budget et cela exclut les comportements anormaux comme, par exemple, ceux qui peuvent se présenter pour des propositions conventionnelles. [0111] Le principe selon les formes de réalisation préférentielles est, de plus, totalement prévisible et permet l'attribution explicite et ciblée, par exemple, de ressources de systèmes excédentaires. [0112] D'autres avantages et aspects qui résultent au moins périodiquement de certaines formes de réalisation préférentielles sont les suivants : [0113] a) des budgets de ressource attribués de manière ferme à des conteneurs exclusifs peuvent être dimensionnés de manière plus optimiste, proche du temps de fonctionnement moyen des tâches respectives. Le cas échéant des dépassements de temps de fonctionnement peuvent être recueillis systématiquement et correctement à l'aide des réserves-tampon SPI, SP2, [0114] b) les avantages d'une planification dynamique et efficace sont combinés à une pos- sibilité de prédestination analytique, [0115] c) le contrôle exact des ressources de système, notamment pour recueillir les dé- bordements dans plusieurs plans, 14 [0116] d) la possibilité d'une exécution plus efficace et plus sûre d'un mélange de programmes critiques avec des exigences en temps réel rigides, souples et partiellement rigides en combinaison avec les programmes les plus efficaces sur une plateforme de circuit commune 200, [0117] e) un traitement plus efficace et plus sûr de programmes sporadiques et critiques en temps réel dans un système 10, par ailleurs périodique, [0118] f) un traitement plus efficace et plus sûr de programmes avec des exigences de temps de parcours variant fortement dans un système en temps réel, [0119] g) un système plus efficace et plus sûr pour l'utilisation systématique de réserves de temps de fonctionnement pour rester dans un état de système, correct en temps réel malgré des cas limites, difficilement prévisibles, dans l'exécution du système. [0120] Le principe selon les formes de réalisation préférentielles peut s'utiliser pour des pla- nificateurs de systèmes de fonctionnement qui planifient les tâches d'une installation de calcul 200 sans pour autant être limité à une telle application. D'autres domaines d'application selon d'autres formes dc réalisation préférentielles sont des systèmes hyperviscurs avec des procédés de planification pour des machines virtuelles VM. les machines virtuelles VM sont planifiées dc façon analogue aux tâches T1,...T5. Une machine virtuelle VM est dans ce cas prête à fonctionner si une tâche dans la machine virtuelle VM est prête. Dans cc cas, il importe peu quelle tâche aurait déjà consommé le budget de la machine virtuelle. Si la liste des tâches prêtes (file dc tâches prêtes) dans la machine virtuelle n'est pas transparente pour l'hyperviseur, en plus, de façon avantageuse, le système de gestion de la machine virtuelle VM peut également le signaler en retour à l'hyperviseur si aucune tâche n'est plus prête à fonctionner. L'hyper viseur peut alors, malgré le budget résiduel, planifier une autre machine virtuelle VM. Les activations périodiques sont connues de manière statique et peuvent être prises en compte par l'hyperviseur. Les activations sporadiques externes sont coordonnées par l'hyperviseur. C'est pourquoi l'hyperviseur connaît les tâches actives dans la machine virtuelle VM. Ce mécanisme augmente l'efficacité de l'ensemble du système par comparaison à des procédés de planification classiques fondés sur la TDMA (accès multiple à répartition dans le temps). Il est avantageusement possible de respecter les mêmes garanties de temps. Les réserves-tampon statiques SP1, SP2 peuvent avantageusement augmenter la souplesse des garanties du système global. [0121] L'implémentation du procédé selon les formes de réalisation préférentielles peut être appliquée selon d'autres formes de réalisation à la fois dans un planificateur global ou dans un planificateur local, réduit au coeur. [0122] On aura toujours une nouvelle décision de planification, par exemple, si une nouvelle tâche est prête à être exécutée. Il peut s'agir, par exemple, d'une activation périodique ou aussi externe gérée par l'interruption. Les points de planification peuvent également être l'épuisement du hudget RB ou la réalimentation du hudget RB d'un conteneur de planification CA. C5. [0123] Il convient de souligner tout particulièrement le procédé caractérisé en ce que à au moins l'un des conteneurs (C1, C2, C3, C4, C5), de préférence à chacun des conteneurs (Cl, C2, C3, C4, C5) on attribue (154) une stratégie de réalimentation de budget (S1), et notamment, la stratégie de réalimentation de budget (S1) caractérise au moins l'un des éléments suivants : [0124] a) un instant de réalimentation du hudget de ressources (RB) attribué au conteneur (Cl, C2, C3, C4, C5), [0125] h) l'importance d'une ou de la réalimentation du hudget de ressources (RB) attribué au conteneur (Cl, C2, C3, C4, C5). [0126] Suivant une autre caractéristique particulièrement avantageuse, le budget de ressources (RB) est de nouveau alimenté (156) périodiquement et/ou à des instants spécifiques, notamment statiques et/ou en fonction d'autres critères, notamment de la fréquence de l'utilisation antérieure de ressources associées au hudget de ressources (RB), notamment des ressources de temps de calcul. [0127] Suivant une autre caractéristique particulièrement avantageuse, le procédé consiste en outre à : [0128] déterminer (160) pour chaque tâche prête (Tl, T2, T3, T4, T5) d'un premier conteneur (Cl, C2, C3, C4, C5) respectif avec un budget de ressources RP non caduc, ce qui permet de retenir des premiers conteneurs C, déterminés, [0129] sélectionner (162) le premier conteneur déterminé avec la plus grande priorité, ce qui donne un conteneur sélectionné (C"), et en particulier si le conteneur sélectionné a été déterminé pour plusieurs tâches (Ti, T2, T3, T4, T5), on sélectionne celle des différentes tâches qui a la plus grande priorité. 16 [Revendication 1] [Revendication 2] [Revendication 3] [Revendication 4] [Revendication 5] REVENDICATIONSProcédé implémenté par ordinateur pour planifier des ressources, notamment des ressources de temps de calcul d'au moins une installation de calcul (200) comportant au moins un coeur de calculateur (202a, 202h) pour l'exécution de tâches (Tl , T2, T3, T4, T5), comprenant les étapes suivantes : fournir (100) un ensemble de conteneurs (Cl, C2, C3, C4, C5), chaque conteneur (Cl, C2, C3, C4, C5) ayant une priorité attribuée ou attribuable, attribuer (110) au moins une tâche (Tl, T2, T3, T4, T5) à au moins l'un des conteneurs (Cl, C2, C3, C4, C5), attribuer (120) chaque conteneur (Cl, C2, C3, C4, C5) à au moins un coeur de calculateur (202a, 202b). Procédé selon la revendication 1, selon lequel une priorité statique (P) est attribuée (150) à au moins l'un des conteneurs (Cl, C2, C3, C4, C5), de préférence à chacun des conteneurs (Cl, C2, C3, C4, C5). Procédé selon au moins l'une des revendications précédentes, selon lequel un budget de ressources (RB) est attribué (152) à au moins l'un des conteneurs (Cl, C2, C3, C4, C5), de préférence à chacun des conteneurs (Cl, C2, C3, C4, C5), en particulier, le budget de ressources (RB) notamment des ressources de temps de calcul caractérise les tâches attribuées au conteneur (Cl, C2, C3, C4, C5) ou à chaque conteneur respectif (Cl, C2, C3, C4, C5). Procédé selon la revendication 3 et l'une quelconque des revendications 1 et 2, selon lequel une stratégie de réalimentation de budget (S1) est affectée (154) à au moins l'un des conteneurs (Cl, C2, C3, C4, C5) de préférence à chacun des conteneurs (Cl, C2, C3, C4, C5). Procédé selon au moins l'une des revendications 3 à 4, selon lequel à au moins l'un des conteneurs (Cl, C2, C3, C4, C5), de préférence à chacun des conteneurs (Cl, C2, C3, C4, C5) on attribue (154) une stratégie de réalimentation de budget (Si), et notamment, la stratégie de réalimentation de budget (Si) caractérise au moins l'un des éléments suivants : a) un instant de réalimentation du budget de ressources (RB) attribué au conteneur (Cl, C2, C3, C4, C5), b) l'importance d'une ou de la réalimentation du budget de ressources (RB) attribué au conteneur (Cl, C2, C3, C4, C5). 17 [Revendication 6] [Revendication 7] [Revendication 8] [Revendication 9] [Revendication 10] Procédé selon l'une des revendications 3 à 5, selon lequel le budget de ressources (RB) est de nouveau alimenté (156) périodiquement et/ou à des instants spécifiques, notamment statiques et/ou en fonction d'autres critères, notamment de la fréquence de l'utilisation antérieure de ressources associées au budget de ressources (RB), notamment des ressources de temps de calcul. Procédé selon au moins l'une des revendications 3 à 6, selon lequel à au moins l'un des conteneurs (Cl, C2, C3, C4, C5), de préférence à chacun des conteneurs (Cl, C2, C3, C4, OE) on attribue (158) une stratégie de justification de budget (S2), et notamment la stratégie de justification de budget (S2) caractérise le comportement du conteneur (Cl, C2, C3, C4, C5) pour un budget de ressources (RB) non utilisé et en particulier directement. Procédé selon la revendication 7, selon lequel la stratégie de justification de budget (S2) prévoit que a) le budget de ressources (RB) du conteneur (Cl, C2, C3, C4, C5) est caduc à un instant ou à l'instant de la réalimentation du budget de ressources (RB) associée au conteneur (Cl, C2, C3, C4, C5), notamment dans la mesure où aucune tache (T1, T2, T3, T4, T5) n'est prête pour utiliser le budget de ressources (RB) attribué au conteneur (Cl, C2, C3, C4, C5), et/ou que b) le budget de ressources (RB) du conteneur (Cl, C2, C3, C4, C5) reste toujours réservé, notamment pour des tâches futures. Procédé selon l'une des revendications précédentes, consistant en outre à: déterminer (160) pour chaque tâche prête (Tl, T2, T3, T4, T5) d'un premier conteneur (Cl, C2, C3, C4, C5) respectif avec un budget de ressources RP non caduc, ce qui permet de retenir des premiers conteneurs C, déterminés, sélectionner (162) le premier conteneur déterminé avec la plus grande priorité, ce qui donne un conteneur sélectionné (C"), et en particulier si le conteneur sélectionné a été déterminé pour plusieurs tâches (TI, T2, T3, T4, T5), on sélectionne celle des différentes tâches qui a la plus grande priorité. Procédé selon au moins l'une des revendications précédentes, selon lequel pour chaque coeur de calculateur (202a, 202b) on détermine une tâche correspondante (Tl, T2, T3, T4, T5), et en particulier on commande ou on exécute (B4) la tâche correspondante Tl, T2, T3, T4, 18 [Revendication 11] [Revendication 12] [Revendication 13] [Revendication 14] [Revendication 15] [Revendication 16] T5). Procédé selon au moins l'une des revendications précédentes, selon lequel au moins un et de préférence au moins deux conteneurs (Cl, C2, C3, C4, C5) sont respectivement utilisés, notamment comme réserve-tampon statique (170), et notamment le conteneur (C4) ayant la priorité la plus élevée comme première réserve-tampon (SP1) en particulier, le conteneur (OE) de priorité la plus basse est utilisé comme seconde réserve-tampon (SP2). Procédé selon la revendication 11, selon lequel on attribue (172) au moins une tâche (T1, T2) à la première réserve-tampon (SPI) et en particulier cette tâche (T1, T2), a) est attribuée à au moins un autre conteneur (C1, C2) que la première réserve tampon (SP1), et h) en plus elle est attribuée à la première réserve-tampon (SP1). Procédé selon la revendication 11 ou 12, selon lequel au moins une tâche (T3, T4) est associée (174) à la seconde réserve-tampon (SP2), et notamment au moins l'unique tâche (T3, T4) : a) est attribuée à au moins un autre conteneur (C3) qu'à la seconde réserve-tampon (SP2), et h) en plus elle est attribuée à la seconde réserve-tampon (SP2). Procédé selon au moins l'une des revendications 11 à 13, selon lequel au moins une tâche (T5) n'est attribuée (176) qu'à la première réserve-tampon (SPI) ou qu'à la seconde réserve-tampon (SP2). Procédé selon au moins l'une des revendications 11 à 14, selon lequel au moins une tâche est attribuée (178) à la première réserve-tampon (SPI) et à la seconde réserve-tampon (SP2) et à au moins un autre conteneur. Dispositif (200, 300) pour exécuter le procédé selon au moins l'une des revendications précédentes 1 à 15 comprenant au moins une installation de calcul (200) comportant au moins un coeur de calculateur (200a, 200b) pour l'exécution de tâches (Ti, T2, T3, T4, T5), avec - des moyens pour fournir un ensemble de conteneurs (Cl. C2, C3, C4, C5) chaque conteneur (Cl, C2, C3, C4, C5) ayant une priorité attribuée ou attribuable - des moyens pour attribuer (110) au moins une tâche (Ti, t2, T3, T4, T5) à au moins l'un des conteneurs (Cl, C2, C3, C4, C5) et - des moyens pour attribuer (120) chaque conteneur (CI, C2, C3, C4, 19 [Revendication 17] [Revendication 18] [Revendication 19] [Revendication 20] C5) au moins un coeur de calculateur (202a, 202h). Programme d'ordinateur comportant des ordres qui, lors de l'exécution du programme par un ordinateur, lui commande d'exécuter le procédé / les étapes du procédé selon au moins l'une des revendications 1 à 15. Support d'enregistrement/de stockage lisible par un ordinateur sur lequel est enregistré un programme d'ordinateur comprenant des instructions de code de programme pour l'exécution [ou pour la mise en oeuvre] des étapes du procédé selon l'une quelconque des revendications 1 à 15. Signal de support de données (DS) que le programme d'ordinateur (PRO) selon la revendication 17, transmet à l'extérieur et/ou caractérise ce signal. Application du procédé selon au moins l'une des revendications 1 à 15 et/ou du dispositif (200, 300) selon la revendication 16 et/ou du programme d'ordinateur (PRO) selon la revendication 17 et/ou du signal de support de données (DS) selon la revendication 19 pour planifier les ressources de temps de calcul d'une installation de calcul (200) notamment pour un système de gestion de l'installation de calcul (200) et/ou pour un hyperviseur commandant une machine virtuelle.