Brevet FR3065301A1 — publié le 20181019

Procédé et dispositif électronique de vérification d'une configuration de partitionnement, programme d'ordinateur associé L'invention concerne un procédé de vérification d'une configuration de partitionnement, entre une pluralité d'éléments consommateurs, d'au moins une ressource d'un module électronique d'un système avionique. L'invention concerne, également, un programme d'ordinateur associé. L'invention concerne aussi un dispositif électronique de vérification associé. Les fonctions avioniques remplissant différentes fonctions pour l'accomplissement d'un vol sont généralement installées sur différentes plateformes et utilisent les ressources desdites plateformes. De telles fonctions étant critiques, comme par exemple le système de freinage ou le système de gestion du vol, la configuration des plateformes, ainsi que les processus d'intégration des fonctions sur les plateformes répondent à des contraintes strictes. Pour cela, des architectures IMA (abrégé de l'anglais « Integrated Modular Avionics », traduit en français par « Avionique modulaire intégrée ») intégrant des techniques de partitionnement ont été développées. De telles architectures visent à intégrer différentes fonctions avioniques sur un ou plusieurs modules, tout en assurant que chaque fonction avionique ne puisse pas affecter une autre fonction de manière non contrôlée. Le partitionnement est une technique d'isolement (ou de ségrégation) visant à rendre l'utilisation de composants, utilisés par différentes applications, indépendante d'une application à l'autre, afin de réduire les interférences entre ces applications et d'en contrôler les interactions. Le partitionnement au sein d'une architecture IMA permet à des applications indépendantes de partager les mêmes composants ou ressources sans que lesdites applications aient entre elles des interactions non contrôlées. Certaines approches IMA suivent un processus de certification incrémentale destiné à faciliter les activités d'intégration et à permettre une indépendance industrielle entre les différentes applications. Cependant, de tels processus de certification incrénnentale s'avèrent relativement lourds à mettre en oeuvre. L'introduction des notions de partitions, de budgets de ressource associés aux partitions, de séparation des éléments de chacune des partitions dans des fichiers de définition de la configuration du module, permet de simplifier la démonstration du partitionnement, mais la garantie du partitionnement repose malgré tout sur de nombreuses règles à respecter et à vérifier pour l'intégration des différentes applications. 3065301 2 De plus, pour que le partitionnement soit démontré, un tel processus impose de justifier l'exhaustivité des règles pour le partitionnement. En outre, pour que le partitionnement soit effectivement garanti, l'ensemble des règles de partitionnement doit être vérifié par des outils qualifiés et ce pour tous les acteurs en jeu, ce qui augmente la 5 complexité du processus. Il existe donc un besoin pour un procédé de vérification d'une configuration de partitionnement de ressources d'un système avionique entre des éléments consommateurs de ressources dudit système qui soit plus simple à mettre en oeuvre. A cet effet, l'invention a pour objet un procédé de vérification d'une configuration 10 de partitionnement, entre une pluralité d'éléments consommateurs, d'au moins une ressource d'un module électronique d'un système avionique, chaque ressource ayant une capacité et étant découpable en segments, la configuration de partitionnement correspondant, pour chaque ressource, à: - un découpage de la ressource en un ou plusieurs segments de ressource, 15 chaque segment ayant une capacité unitaire, - une allocation d'au moins un segment de ressource à un ou plusieurs éléments consommateurs, - une utilisation, par chaque élément consommateur, d'au moins un segment de ressource alloué, 20 le système avionique comprenant un dispositif électronique de vérification, le procédé étant mis en oeuvre par le dispositif électronique de vérification et comprenant : - la vérification du respect d'un ensemble de règles de partitionnement, l'ensemble de règles de partitionnement comportant au moins les règles suivantes : - une première règle selon laquelle la somme des capacités unitaires des 25 segments de ressource alloués pour chaque ressource est inférieure ou égale à la capacité de ladite ressource, - une deuxième règle selon laquelle seuls des segments de ressource définis préalablement sont allouables à des éléments consommateurs distincts, 30 - une troisième règle selon laquelle l'utilisation de segments de ressource par un élément consommateur est limitée aux segments de ressource alloués audit élément consommateur, la configuration de partitionnement étant considérée valide lorsque l'ensemble de règles de partitionnement est respecté, 35 - l'exploitation du module avec la configuration de partitionnement. 3065301 3 Suivant des modes de mise en oeuvre particuliers, le procédé comprend une ou plusieurs des caractéristiques suivantes, prises isolément ou suivant toutes les combinaisons techniquement possibles : - au moins une règle de l'ensemble de règles est vérifiée avant l'exploitation du 5 module avec la configuration de partitionnement, ladite règle étant de préférence la première règle et/ou la deuxième règle ; - toutes les règles de l'ensemble de règles sont vérifiées avant l'exploitation du module avec la configuration de partitionnement ; - la vérification comporte le lancement du module avec la configuration de 10 partitionnement, la configuration de partitionnement étant considérée valide lorsque le module démarre avec la configuration de partitionnement, et la configuration de partitionnement étant considérée invalide lorsque le module ne démarre pas avec la configuration de partitionnement ; - lorsque la configuration de partitionnement est considérée invalide, le procédé 15 comprend la répétition de la vérification sur des parties, prises individuellement, de la configuration de partitionnement, une partie de la configuration de partitionnement étant considérée valide lorsque le module démarre avec ladite partie de la configuration de partitionnement, et une partie de la configuration de partitionnement étant considérée invalide lorsque le module ne démarre pas avec ladite partie de la configuration de 20 partitionnement ; - le module électronique comprend le dispositif électronique de vérification ; - pour chaque ressource continue, la capacité est exprimée sous la forme d'un espace alloué défini par un indicateur de début et un indicateur de fin, l'allocation de segments de ressource étant exprimée sous la forme de sous-espaces alloués chacun 25 défini par un indicateur de début et un indicateur de fin, les sous-espaces alloués étant rangés dans une table de configuration par ordre croissant de l'indicateur de début desdits sous-espaces alloués, la configuration de partitionnement étant considérée invalide lorsqu'au moins l'une des conditions suivantes est réalisée : - l'indicateur de début ou l'indicateur de fin d'un sous-espace alloué est 30 compris entre l'indicateur de début et l'indicateur de fin d'un autre sous- espace alloué dans la table de configuration, - l'indicateur de début ou l'indicateur de fin d'un sous-espace alloué de la table de configuration n'est pas compris au sens large entre l'indicateur de début et l'indicateur de fin de l'espace alloué ; 35 pour les ressources discrètes les segments de ressource sont listés dans une table de configuration, l'allocation de segments de ressource associant les segments de 3065301 4 ressource listés à des éléments consommateurs, la configuration de partitionnement étant considérée invalide lorsqu'au moins l'une des conditions suivantes est réalisée : - un segment de ressource listé est associé à plus d'un élément consommateur alors que ledit segment de ressource ne fait pas partie 5 des segments de ressource allouables à des éléments consommateurs distincts, et - un élément consommateur est associé à un segment de ressource ne figurant pas dans la liste. L'invention concerne, également, un programme d'ordinateur comportant des 10 instructions logicielles qui, lorsqu'elles sont exécutées par un ordinateur, mettent en oeuvre un procédé tel que décrit précédemment. L'invention concerne, en outre, un dispositif de vérification d'une configuration de partitionnement, entre une pluralité d'éléments consommateurs, d'au moins une ressource d'un module électronique d'un système avionique, chaque ressource ayant une 15 capacité et étant découpable en segments, la configuration de partitionnement correspondant, pour chaque ressource, à : - un découpage de la ressource en un ou plusieurs segments de ressource, chaque segment ayant une capacité unitaire, - une allocation d'au moins un segment de ressource à un ou plusieurs 20 éléments consommateurs, - une utilisation, par chaque élément consommateur, d'au moins un segment de ressource alloué, le dispositif électronique de vérification comprenant : - un module de vérification du respect d'un ensemble de règles de 25 partitionnement, l'ensemble de règles de partitionnement comportant au moins les règles suivantes : - une première règle selon laquelle la somme des capacités unitaires des segments de ressource alloués pour chaque ressource est inférieure ou égale à la capacité de ladite ressource, 30 - une deuxième règle selon laquelle seuls des segments de ressource définis préalablement sont allouables à des éléments consommateurs distincts, - une troisième règle selon laquelle l'utilisation de segments de ressource par un élément consommateur est limité aux segments de ressource 35 alloués audit élément consommateur, 3065301 5 la configuration de partitionnement étant considérée valide lorsque l'ensemble de règles de partitionnement est respecté, - un module d'exploitation du module avec ladite configuration de partitionnement. D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la 5 description qui suit de modes de réalisation de l'invention, donnée à titre d'exemple uniquement, et en référence aux dessins qui sont : - figure 1, une représentation schématique d'un système avionique selon un premier mode de réalisation de l'invention, et - figure 2, une représentation schématique d'un système avionique selon un 10 deuxième mode de réalisation de l'invention. Un système avionique 10 est illustré sur les figures 1 et 2. Selon un premier mode de réalisation, le système avionique 10 comprend des éléments 13 consommateurs de ressource(s) 14, un module 12 et un dispositif électronique 16 de vérification d'une configuration de partitionnement. 15 Dans la suite de la description, chaque élément 13 consommateur de ressource(s) 14 est également appelé application, et le terme application est alors analogue au terme élément consommateur de ressource(s) au sens de l'invention. Les éléments consommateurs 13 sont, par exemple, des fonctions du système avionique 10 dont une partie est installée sur des architectures IMA. Les éléments 20 consommateurs 13 sont, par exemple, des programmes informatiques utilisateurs de ressources 14, des éléments physiques, également appelés éléments matériels, (hardware) utilisateurs des ressources 14, ou encore des tables de configuration décrivant, ou définissant, l'usage des ressources 14 (typique d'une ressource entrée/sortie). Plus particulièrement, les éléments consommateurs 13 sont, par exemple, 25 des programmes de gestion du vol ou de commande du système de freinage du système avionique 10. Les éléments consommateurs 13 sont susceptibles d'être distants du module 12 hébergeant les ressources 14 considérées (par exemple, lorsque la ressource 14 est un routeur du réseau avionique). 30 Chaque élément 13 présente des contraintes de fonctionnement. Les contraintes de fonctionnement définissent des interactions entre les éléments consommateurs 13. Par exemple, les contraintes de fonctionnement interdisent les interactions entre certains éléments consommateurs 13 et autorisent des interactions entre des éléments 13 spécifiques. 35 De telles contraintes fonctionnelles se traduisent par le regroupement d'éléments consommateurs 13 dans des partitions. Les éléments consommateurs 13 de partitions 3065301 6 différentes sont indépendants entre eux. Les éléments consommateurs 13 d'une même partition n'ont pas de contrainte d'indépendance entre eux. A titre d'illustration, le module 12 est, par exemple, l'un des éléments suivants ou une combinaison de plusieurS des éléments suivants : 5 - un module de calcul comprenant un processeur associé à une mémoire permettant d'exécuter des logiciels applicatifs, - un module d'acquisition d'entrées/sorties permettant d'échantillonner et de convertir des formats de données, ainsi que d'émettre lesdites données sur un réseau avionique pour des applications locales ou distantes, 10 - un réseau avionique constitué de routeurs, - un module d'affichage constitué de processeurs, dont au moins un processeur graphique et, d'un écran, ou - un module de stockage de données permettant le partage de données entre plusieurs applications locales ou distantes. 15 Dans le mode de réalisation illustré par la figure 1, le module 12 comprend une pluralité de ressources 14 et un dispositif électronique 16 de vérification d'une configuration de partitionnement des ressources 14 du module 12 entre les éléments consommateurs 13. En complément facultatif, le module 12 comprend en outre : 20 - des entrées et des sorties (par exemple discrètes, analogiques, des bus aéronautiques ARINC 429 ou encore des bus CAN), et/ou - une connexion à un réseau avionique conforme, par exemple, à la norme ARINC 664, et/ou - un dispositif d'acquisition permettant d'échantillonner et d'extraire des données, de 25 convertir lesdites données dans un format adéquat et de former à partir desdites données des messages destinés à être émis sur un réseau avionique, un tel dispositif d'acquisition étant généralement configurable pour être adaptable aux divers besoins de systèmes embarqués sur un avion. Les ressources 14 du module 12 sont des éléments physiques ou logiques 30 propres à être mis à disposition d'éléments consommateurs 13 de ressources locaux, c'est-à-dire d'éléments appartenant au module 12, ou d'éléments consommateurs 13 de ressources distants, c'est-à-dire d'éléments n'appartenant pas au module 12 et susceptibles d'être positionnés à distance du module 12. Les ressources 14 sont, par exemple, réparties en catégories de ressources qui 35 sont : 3065301 7 - les ressources de type traitement de données (en anglais « processing »). De telles ressources sont, par exemple, la puissance de calcul d'un processeur ou la capacité de stockage d'une mémoire. - les ressources de type entrées et sorties. 5 - les ressources spécifiques au réseau avionique. De telles ressources sont, par exemple, les routeurs de communication d'un réseau ARINC664. - les ressources de type graphique, c'est-à-dire les ressources permettant un affichage. Un écran est un exemple de telles ressources. - les ressources de type mémoire de masse (en anglais « mass memory »). 10 De manière générale, les catégories séparent les ressources selon leur destination. Les ressources 14 de telles catégories de ressources sont aussi susceptibles d'être distinguées dans les sous-catégories (non exhaustives) suivantes : - une sous-catégorie pour les différents types de mémoire (RAM, ROM, NVM, ...). 15 - une sous-catégorie pour les supports de stockage (disques). - une sous-catégorie pour les processeurs de calcul. - une sous-catégorie pour les processeurs graphiques. - une sous-catégorie pour les différents types d'entrée/sorties (discrets, analogiques, bus ARINC 429, CAN). 20 - une sous-catégorie pour les points d'accès aux réseaux avionique (ARINC A664). - une sous-catégorie pour les routeurs de réseau avioniques. - une sous-catégorie pour les écrans pour l'affichage des informations avioniques. De manière générale, les sous-catégories séparent les ressources 14 selon leur nature. 25 Chaque ressource 14 présente une capacité. La capacité de chaque ressource 14 caractérise la taille de ladite ressource 14. Pour une ressource 14 de type entrée-sortie, la capacité de ladite ressource 14 est quantifiable par le nombre d'entrées et de sorties différentes de ladite ressource 14 (par exemple, le nombre d'entrées discrètes, analogiques, de bus ARINC 429, etc.). 30 Pour une ressource 14 de type traitement de données, la capacité de ladite ressource 14 est quantifiable par la puissance de calcul du processeur de ladite ressource 14 et/ou le volume de stockage de la mémoire de ladite ressource 14. Chaque ressource 14 est découpable en segments de ressource. Chaque segment de ressource présente une capacité unitaire. Chaque segment de ressource est 35 indépendant des autres segments de ressources. 3065301 8 Par exemple, si l'on suppose que la ressource 14 est une mémoire, les segments de ressource sont des fragments de mémoire identifiés, par exemple, par une adresse et une taille. Dans le mode de réalisation illustré par la figure 1, donné à titre d'exemple, le 5 dispositif de vérification 16 comprend un processeur 20, une mémoire 22 et un lecteur 24 de support d'informations. En complément facultatif, dans la mesure où le dispositif 16 est un composant du module 12, le processeur 20, la mémoire 22 et le lecteur 24 de support d'informations du dispositif de vérification 16 sont susceptibles d'être partagés avec d'autres composants du 10 module 12. Dans le premier mode de réalisation illustré par la figure 1, le dispositif de vérification 16 est, avantageusement, embarqué dans le module 12. Le dispositif de vérification 16 est destiné à interagir avec un produit programme d'ordinateur comportant un support lisible d'informations lisible par le lecteur 24 du 15 module 12. Le support lisible d'informations du produit programme d'ordinateur est, par exemple, un médium adapté à mémoriser des instructions électroniques et capable d'être couplé à un bus d'un système informatique. A titre d'exemple, le support lisible d'informations est une disquette ou disque souple, (de la dénomination anglaise Floppy 20 disk), un disque optique, un CD-ROM, un disque magnéto-optique, une mémoire ROM, une mémoire RAM, tout type de mémoire non volatile (par exemple, EPROM, EEPROM, FLASH, NVRAM) une carte magnétique ou une carte optique. Sur le support lisible d'informations est mémorisé un programme d'ordinateur comprenant des instructions de programme. 25 Le programme d'ordinateur est chargeable sur le processeur 20 et est adapté pour entraîner la mise en oeuvre d'un procédé de vérification d'une configuration de partitionnement, entre une pluralité d'éléments consommateurs 13, d'au moins une ressource 14 d'un module électronique 12 d'un système avionique 10 comme cela sera décrit dans la suite de la description. 30 En variante, le dispositif de vérification est de type hardware (traduit en français par matériel), tel qu'un circuit logique programmable (abrégé par FPGA ce qui signifie en anglais Field Programmable Gate Array), ou encore un circuit intégré dédié, tel qu'un ASIC (de l'anglais Application-Specific Integrated Circuit). Un procédé de vérification d'une configuration de partitionnement, entre une 35 pluralité d'éléments consommateurs 13, d'au moins une ressource 14 d'un module électronique 12 d'un système avionique 10 va maintenant être décrit. 3065301 9 La configuration de partitionnement correspond, pour chaque ressource 14, à: - un découpage de la ressource 14 en un ou plusieurs segments de ressource, - une allocation d'au moins un segment de ressource à un ou plusieurs 5 éléments consommateurs 13, et - une utilisation, par chaque élément consommateur 13, d'au moins un segment de ressource alloué. Par exemple, lorsque l'une des ressources 14 est un bus de communication, la capacité de ladite ressource 14 est le nombre de messages apte à être transmis par unité 10 de temps via le bus de communication. Chaque segment de ressource est un ensemble de messages apte à être transmis par unité de temps. L'allocation est l'allocation d'un nombre de messages apte à être transmis par unité de temps. L'utilisation de segments de ressource par un élément consommateur 13 est le nombre de messages utilisés par unité de temps par ledit élément consommateur 13, ainsi que les éléments de 15 configuration liés au traitement desdits messages. Dans un autre exemple, lorsqu'au moins l'une des ressources 14 est une mémoire, la capacité de ladite ressource 14 est la taille de la mémoire. Chaque segment de ressource est une portion de mémoire. L'utilisation comporte la définition d'un ensemble de données autorisé à être mémorisé dans la portion de mémoire. 20 Le procédé de vérification comprend tout d'abord une étape 100 de vérification du respect d'un ensemble de règles de partitionnement. L'ensemble de règles de partitionnement comporte au moins les règles suivantes : - une première règle selon laquelle la somme des capacités unitaires des segments de ressource alloués pour chaque ressource 14 est inférieure ou 25 égale à la capacité de ladite ressource 14. - une deuxième règle selon laquelle seuls des segments de ressource définis préalablement sont allouables à des éléments consommateurs 13 distincts, sauf en cas de partage autorisé. L'allocation de segments de ressource est donc cohérent entre les différents éléments consommateurs 30 13. - une troisième règle selon laquelle l'utilisation de segments de ressource par un élément consommateur 13 est limité aux segments de ressource alloués audit élément consommateur 13. la configuration de partitionnement étant considérée valide lorsque 35 l'ensemble de règles de partitionnement est respecté. 3065301 10 L'étape de vérification 100 est, par exemple, réalisée par lancement du module 12 avec la configuration de partitionnement. Le lancement du module est équivalent à une phase d'initialisation du module 12. La configuration de partitionnement est considérée valide lorsque le module 12 5 démarre avec la configuration de partitionnement. La configuration de partitionnement est considérée invalide lorsque le module 12 ne démarre pas avec la configuration de partitionnement. Par exemple, pour chaque ressource 14 continue, la capacité est exprimée sous la forme d'un espace alloué défini par un indicateur de début et un indicateur de fin. 10 L'allocation de segments de ressource est exprimée sous la forme de sous-espaces alloués chacun défini par un indicateur de début et un indicateur de fin. Les sous-espaces alloués sont rangés dans une table de configuration par ordre croissant de l'indicateur de début desdits sous-espaces alloués. Dans cet exemple, la configuration de partitionnement est considérée invalide lorsqu'au moins l'une des conditions suivantes est 15 réalisée : - l'indicateur de début ou l'indicateur de fin d'un sous-espace alloué est compris entre l'indicateur de début et l'indicateur de fin d'un autre sous-espace alloué dans la table de configuration, - l'indicateur de début ou l'indicateur de fin d'un sous-espace alloué de la table de 20 configuration n'est pas compris au sens large entre l'indicateur de début et l'indicateur de fin de l'espace alloué. En variante de cet exemple, la capacité est définie seulement sous la forme d'un indicateur de début et d'une taille. La taille est, par exemple, une taille d'une mémoire en octets, une bande passante d'un canal de communication en mégabits par seconde, un 25 nombre d'interfaces d'entrée et de sortie disponibles, une durée ou encore un offset temporel. Dans un autre exemple, pour des ressources 14 discrètes, les segments de ressource sont listés dans une table de configuration. L'allocation de segments de ressource associe les segments de ressource listés à des éléments consommateurs 13. 30 La configuration de partitionnement est considérée invalide lorsqu'au moins l'une des conditions suivantes est réalisée : - un segment de ressource listé est associé à plus d'un élément consommateur alors que ledit segment de ressource ne fait pas partie des segments de ressource allouables à des éléments consommateurs 13 distincts, et 35 - un élément consommateur est associé à un segment de ressource ne figurant pas dans la liste. 3065301 11 Puis, lorsque la configuration de partitionnement est considérée valide à l'issue de l'étape de vérification 100, le procédé de vérification comprend une étape d'exploitation 110 du module 12 avec ladite configuration de partitionnement. La vérification du respect de l'ensemble de règles de partitionnement est mise en 5 oeuvre uniquement avant l'exploitation du module 12. Lorsque la configuration de partitionnement est considérée invalide, le procédé comprend la répétition de l'étape de vérification 100 sur des parties, prises individuellement, de la configuration de partitionnement. Une partie d'une configuration de partitionnement est, par exemple, une partie de l'allocation de ladite configuration de 10 partitionnement, c'est-à-dire seuls certains des segments de ressource alloués de la configuration de partitionnement. Une partie de la configuration de partitionnement est considérée valide lorsque le module 12 démarre avec ladite partie de la configuration de partitionnement. Une partie de la configuration de partitionnement est considérée invalide lorsque le module 12 ne 15 démarre pas avec ladite partie de la configuration de partitionnement. Ainsi, un tel procédé de vérification est plus simple à mettre en oeuvre qu'un procédé de certification incrémentale de l'état de la technique pour lequel des outils de vérification complexes sont mis en oeuvre pour vérifier le respect du partitionnement au cours du processus de configuration du module 12. 20 Avec le procédé proposé, il n'y a plus besoin de règles extérieure à vérifier à partir du moment où le module 12 est en fonctionnement avec la configuration de partitionnement valide vérifiée par le module lui-même. Il n'y a donc plus nécessité de vérification préalable d'un domaine d'usage de partitionnement pour la qualification puisqu'un partitionnement valide obtenu à l'issue du procédé de vérification décrit 25 précédemment assure intrinsèquement que le partitionnement est respecté. Un tel procédé est, en outre, applicable à tout type de ressources 14. Un tel procédé laisse également plus de possibilités dans la conception du partitionnement par rapport aux procédés de l'état de la technique. Un tel procédé présente également une meilleure résistance aux agressions 30 extérieures. En effet, pour aboutir à une défaillance du partitionnement par une action extérieure au module 12, un tiers devra agir sur plusieurs éléments de manière cohérente qui sont le découpage des ressources 14 en segments et l'attribution des segments de ressources, et ce de manière cohérente afin de passer au travers des mécanismes du partitionnement. Une altération d'un élément de manière non cohérente sera interceptée 35 lors de l'étape de vérification 100 et ne générera pas de comportement erroné non 3065301 12 détecté. Le procédé permet donc d'adapter le partitionnement du module 12 de manière autonome et en temps réel. Selon un deuxième mode de réalisation tel que visible sur la figure 2, le dispositif de vérification 16 du deuxième mode de réalisation est distinct du module 12 et n'est pas 5 embarqué dans le module 12. Le dispositif de vérification 16 est alors l'un des composants du système avionique 10 ou même un élément hors du système avionique 10 (typiquement un outil de génération de la configuration) et non plus un composant du module 12. Hormis, un tel changement, le deuxième mode de réalisation est identique au premier mode de réalisation. 10 Le procédé de vérification mis en oeuvre par le dispositif de vérification 16 est identique à celui décrit pour le premier mode de réalisation à la différence que l'étape de vérification 100 est réalisée au sein du dispositif de vérification 16, et non pas par lancement du module 12. L'étape de vérification 100 consiste alors à vérifier la validité de la configuration de 15 partitionnement proposée et ce uniquement avant l'étape d'exploitation 110 du module. Dans le cas où le partitionnement proposé n'est pas validé, la configuration n'est pas générée ni transmise au module, et celui-ci ne peut donc pas atteindre l'étape d'exploitation 110. Puis, seul un partitionnement considéré comme valide est implémenté sur le 20 module 12 et l'étape d'exploitation 110 est identique à celle du premier mode de réalisation. Outre les avantages du premier mode de fonctionnement, un tel deuxième mode de fonctionnement présente l'avantage de déterminer un partitionnement à partir d'un outil (le dispositif de vérification 16) distinct du module 12, ce qui allège la conception du 25 module 12. Un tel deuxième mode de fonctionnement permet ainsi d'atteindre un niveau de partitionnement intrinsèque sans changer en totalité la conception du module 12. Selon une variante du procédé de vérification, au moins une règle de l'ensemble de règles est vérifiée avant l'exploitation du module avec la configuration de partitionnement, ladite règle étant de préférence la première règle et/ou la deuxième 30 règle. Les autres règles sont alors susceptibles d'être vérifiées après ladite exploitation du module, correspondant au démarrage du module. Par exemple, les première et deuxième règles (relatives aux allocations) sont vérifiées avant l'exploitation du module, et la troisième règle (relative à l'utilisation) est vérifiée seulement lors de l'initialisation des applications, ou même en phase 35 opérationnelle avant usage par l'application des ressources allouées à cette application. 3065301 13 L'homme du métier comprendra qu'une telle variante est à interpréter avec les éléments compatibles du premier et du deuxième mode de mise en oeuvre du procédé de vérification qui ont été décrits précédemment. REVENDICATIONS1.- Procédé de vérification d'une configuration de partitionnement, entre une pluralité d'éléments consommateurs (13), d'au moins une ressource (14) d'un module électronique (12) d'un système avionique (10), chaque ressource (14) ayant une capacité et étant découpable en segments, la configuration de partitionnement correspondant, pour chaque ressource (14), à : - un découpage de la ressource (14) en un ou plusieurs segments de ressource, chaque segment ayant une capacité unitaire, - une allocation d'au moins un segment de ressource à un ou plusieurs éléments consommateurs (13), - une utilisation, par chaque élément consommateur (13), d'au moins un segment de ressource alloué, le système avionique (10) comprenant un dispositif électronique de vérification (16), le procédé étant mis en oeuvre par le dispositif électronique de vérification (16) et comprenant : - la vérification du respect d'un ensemble de règles de partitionnement, l'ensemble de règles de partitionnement comportant au moins les règles suivantes : - une première règle selon laquelle la somme des capacités unitaires des segments de ressource alloués pour chaque ressource (14) est inférieure ou égale à la capacité de ladite ressource (14), - une deuxième règle selon laquelle seuls des segments de ressource définis préalablement sont allouables à des éléments consommateurs (13) distincts, - une troisième règle selon laquelle l'utilisation de segments de ressource par un élément consommateur (13) est limitée aux segments de ressource alloués audit élément consommateur (13), la configuration de partitionnement étant considérée valide lorsque l'ensemble des règles de partitionnement est respecté, - l'exploitation du module (12) avec la configuration de partitionnement. 2.- Procédé selon la revendication 1, dans lequel au moins une règle de l'ensemble de règles est vérifiée avant l'exploitation du module avec la configuration de partition nement, ladite règle étant, de préférence, la première règle et/ou la deuxième règle. 3065301 15 3.- Procédé selon la revendication 1, dans lequel toutes les règles de l'ensemble de règles sont vérifiées avant l'exploitation du module avec la configuration de partitionnement. 5 4.- Procédé selon l'une quelconque des revendication 1 à 3, dans lequel la vérification comporte le lancement du module (12) avec la configuration de partitionnement, la configuration de partitionnement étant considérée valide lorsque le module (12) démarre avec la configuration de partitionnement, et 10 la configuration de partitionnement étant considérée invalide lorsque le module (12) ne démarre pas avec la configuration de partitionnement. 5.- Procédé selon la revendication 4, dans lequel lorsque la configuration de partitionnement est considérée invalide, le procédé comprend la répétition de la 15 vérification sur des parties, prises individuellement, de la configuration de partitionnement, une partie de la configuration de partitionnement étant considérée valide lorsque le module (12) démarre avec ladite partie de la configuration de partitionnement, et une partie de la configuration de partitionnement étant considérée invalide lorsque le module (12) ne démarre pas avec ladite partie de la configuration de partitionnement. 20 6.- Procédé selon l'une quelconque des revendications 1 à 5, dans lequel le module électronique (12) comprend le dispositif électronique de vérification (16). 7.- Procédé selon l'une quelconque des revendications 1 à 6, dans lequel, pour 25 chaque ressource (14) continue, la capacité est exprimée sous la forme d'un espace alloué défini par un indicateur de début et un indicateur de fin, l'allocation de segments de ressource étant exprimée sous la forme de sous-espaces alloués chacun défini par un indicateur de début et un indicateur de fin, les sous-espaces alloués étant rangés dans une table de configuration par ordre croissant de l'indicateur de début desdits sous- 30 espaces alloués, la configuration de partitionnement étant considérée invalide lorsqu'au moins l'une des conditions suivantes est réalisée : - l'indicateur de début ou l'indicateur de fin d'un sous-espace alloué est compris entre l'indicateur de début et l'indicateur de fin d'un autre sous-espace alloué dans la table de configuration, 3065301 16 - l'indicateur de début ou l'indicateur de fin d'un sous-espace alloué de la table de configuration n'est pas compris au sens large entre l'indicateur de début et l'indicateur de fin de l'espace alloué. 5 8.- Procédé selon l'une quelconque des revendications 1 à 7, dans lequel pour les ressources (14) discrètes les segments de ressource sont listés dans une table de configuration, l'allocation de segments de ressource associant les segments de ressource listés à des éléments consommateurs (13), la configuration de partitionnement étant considérée invalide lorsqu'au moins l'une des conditions suivantes est réalisée : 10 - un segment de ressource listé est associé à plus d'un élément consommateur (13) alors que ledit segment de ressource ne fait pas partie des segments de ressource allouables à des éléments consommateurs (13) distincts, et - un élément consommateur (13) est associé à un segment de ressource ne figurant pas dans la liste. 15 9.- Programme d'ordinateur comportant des instructions logicielles qui, lorsqu'elles sont exécutées par un ordinateur, mettent en oeuvre un procédé selon l'une quelconque des revendications 1 à 8. 20 10.- Dispositif électronique (16) de vérification d'une configuration de partitionnement, entre une pluralité d'éléments consommateurs (13), d'au moins une ressource (14) d'un module électronique (12) d'un système avionique (10), chaque ressource (14) ayant une capacité et étant découpable en segments, la configuration de partitionnement correspondant, pour chaque ressource (14), à: 25 - un découpage de la ressource (14) en un ou plusieurs segments de ressource, chaque segment ayant une capacité unitaire, - une allocation d'au moins un segment de ressource à un ou plusieurs éléments consommateurs (13), - une utilisation, par chaque élément consommateur (13), d'au moins un 30 segment de ressource alloué, le dispositif électronique de vérification (16) comprenant : - un module de vérification du respect d'un ensemble de règles de partitionnement, l'ensemble de règles de partitionnement comportant au moins les règles suivantes : 3065301 17 - une première règle selon laquelle la somme des capacités unitaires des segments de ressource alloués pour chaque ressource (14) est inférieure ou égale à la capacité de ladite ressource (14), - une deuxième règle selon laquelle seuls des segments de ressource 5 définis préalablement sont allouables à des éléments consommateurs (13) distincts, - une troisième règle selon laquelle l'utilisation de segments de ressource par un élément consommateur (13) est limité aux segments de ressource alloués audit élément consommateur (13), 10 la configuration de partitionnement étant considérée valide lorsque l'ensemble des règles de partitionnement est respecté, - un module d'exploitation du module (12) avec ladite configuration de partitionnement.