FR 2602363 A1 19880205 FR 8611128 A 19860731 PROCEDE POUR DEFINIR ET MODIFIER UNE PARTITION SUR L'ESPACE DE MEMORISATION D'UN SUPPORT NON-EFFACABLE. DESCRIPTION La présente invention a pour objet un procédé pour 5 définir et modifier une partition sur un espace de mémorisation d'un support non-effaçable. Ces supports sont utilisés en particulier pour l'archivage d'informations voLumineuses, car ils sont peu coOteux. Ils tendent à être employés de plus en plus dans les applications d'archivage de fichiers et de documents 10 numérisés. Le disque optique numérique constitue un exemple de support non-effaçable. Sur un tel support, il est possible d'écrire une information à tout moment, mais il n'est pas possible de modifier une information écrite. Un tel support est 15 dit de type "WORM". Le disque optique numérique est un support noneffaçable de grande capacité. Pour une gestion efficace de cet espace de mémorisation de grande taille, il est classique de découper cet espace en segments de différentes tailles. Ceci 20 offre une plus grande sécurité et une plus grande souplesse d'emploi du disque optique numérique. Par ailleurs, le disque optique numérique est un support amovible destiné à être transporté entre une zone de stockage et un appareil de lecture. IL doit donc être muni de 25 mécanismes d'identification sOrs et transportables. On connaÂt plusieurs méthodes d'identification d'un support non-effaçable et de segmentation de l'espace de mémorisation de ce support. En ce qui concerne l'identification, la méthode 30 couramment utilisée consiste à écrire une information d'en-tête à un endroit précis de l'espace de mémorisation, généralement le premier secteur dans le cas d'un support non-effaçable organisé en secteurs. Cette information d'en-tête est unique. Elle est relue lors de l'opération de montage du support non-effaçable, c'est-àdire lorsque le disque est chargé dans un appareil de lecture. Le fait de prévoir un en-tête unique est un inconvénient car si l'emplacement contenant l'en-tête ne peut pas 5 être relu, par suite d'un défaut du support non-effaçable, l'information d'en-tête est inexploitable et ne peut pas être régénérée. Un autre inconvénient est que l'en-tête étant inscrit une seule fois, il ne peut pas mémoriser des informations qui évoluent telles que le taux de remplissage de l'espace de 10 mémorisation du support non-effaçable. Sur le support non-effaçabLe, les informations mémorisées sont organisées par exemple en fichiers. A chaque fichier sont associés deux types d'informations qui sont, d'une part, les informations de description du fichier, et d'autre 15 part, les informations qui représentent le contenu proprement dit du fichier. Les informations de description sont beaucoup moins volumineuses que les informations de contenu. On connait différentes méthodes d'enregistrement de fichiers sur un support non-effaçable. Ces méthodes reposent 20 chacune, pour chaque segment, sur une allocation séquentielle de la mémoire dans ce segment, par exemple par une allocation séquentielle de secteurs dans le cas d'un disque optique numérique. Selon une première méthode connue, la totalité de 25 l'espace de mémorisation du support non-effaçable est considérée comme un segment unique. Les informations de description et les informations de contenu sont alors inscrites séquentiellement, et sont donc imbriquées dans le même segment comme on l'a représenté sur la figure 1. -Cette méthode présente au moins deux inconvénients. Premièrement, le temps d'accès à une information de description est fortement augmenté par le temps de parcours des informations de contenu, qui sont en général volumineuses. Deuxièmement, le parcours séquentiel complet des informations de description 35 nécessite de parcourir la totalité des informations. Un tel parcours, qui peut être requis par exemple lors du montage du support noneffaçable sur un appareil de lecture demande alors un temps très important. On connnait également une deuxième méthode dans 5 laquelle les informations de description et les informations de contenu sont mémorisées dans des segments différents. Plus précisément, l'espace de mémorisation du support non-effaçable est découpé en deux segments, comme on l'a représenté sur la figure 2. Le premier segment débute à l'une des extrémités de l'espace de mémorisation du support non-effaçable et l'allocation de ce segment se fait séquentiellement à partir de ce point de départ; le deuxième segment débute à l'autre extrémité de l'espace de mémorisation du support noneffaçable, et son 15 allocation se fait, de même, de manière séquentielle à partir de ce point. Cette deuxième méthode permet une gestion plus efficace du support non-effaçable par rapport à la première méthode. Néanmoins, toutes les informations de description sont mémorisées 20 dans un seul et même segment. Ceci n'est pas satisfaisant car les informations de description peuvent être de nature et de volume très différents. On connait également une troisième méthode dans laquelle l'espace de mémorisation du support non-effaçable est 25 découpé en N segments, comme représenté sur la figure 3. Ce découpage est fait lors de l'opération de formatage du support non-effaçable, et ne peut plus être modifié par la suite. Cette troisième méthode est intéressante lorsque l'on peut prévoir dès l'origine le nombre et la taille des segments 30 qui seront utiles. Dans le cas contraire, cette méthode conduit à perdre beaucoup d'espaces de mémorisation du support. L'invention a pour but de remédier aux inconvénients des méthodes connues d'identification et de segmentation d'un support non-effaçable. L'invention consiste à permettre une mise à jour de l'information d'entête, par remplacement de l'information d'entête devenue obsolète. L'invention permet ainsi de modifier, au cours du temps, la segmentation de l'espace de mémorisation du support non-effaçable. Elle permet également de prendre en compte 5 dans l'en-tête des informations qui évoluent au cours de la vie du support non-effaçable, telles que le taux de remplissage, puisque l'invention permet le remplacement de ces informations. Enfin, elle facilite l'identification du support non-effaçable puisqu'un identificateur du support non-effaçable peut être répété 10 dans les différentes versions d'en-têtes successives. De manière précise, l'invention a pour objet un procédé d'enregistrement sur un support d'information non-effaçable permettant une mise à jour de la segmentation de l'espace de mémorisation dudit support, dans lequel une segmentation est 15 définie par un en-tête contenant au moins un identificateur d'entête et une liste de segments, lesdits segments formant une partition dudit espace de mémorisation, ce procédé étant caractérisé en ce que, pour définir une nouvelle segmentation, on écrit un nouvel en-tête à la suite de l'en-tête le plus récent, 20 les en-têtes successifs étant inscrits séquentiellement dans un même segment, et en ce que, pour déterminer la partition courante, on parcourt les en-têtes successifs dudit segment, depuis l'en-tête initial jusqu'à l'en-tête le plus récent. Selon un mode de réalisation préféré, chaque en-tête 25 comprend un préambule contenant des informations fixes et un corps d'en-tête contenant des informations variables, le préambule contenant au moins l'identificateur d'en-tête et le corps de l'en-tête contenant au moins la liste des segments associés à ladite version d'en-tête. De manière préférée, lorsque l'on désire inscrire un nouvel en-tête en remplacement d'un en-tête courant et que le segment contenant les versions successives de l'en-tête est plein, on inscrit ledit nouvel en-tête dans un autre segment et on réalise un chaînage entre ledit nouvel en-tête et ledit en35 tête courant. Selon un mode de réalisation particulier, on prévoit un champ de chaînage dans chaque en-tête et on utilise Ledit champ de chaînage d'un en-tête pour relier deux versions successives de l'en-tête Lorsque lesdites versions de l'en-tête sont situées dans des segments différents. Les caractéristiques et avantages de L'invention ressortiront mieux de La description qui va suivre, donnée à titre illustratif mais non limitatif, en référence aux dessins annexés, sur lesqueLs: - Les figures 1 à 3, déjà décrites, illustrent des partitions d'un espace de mémorisation d'un support noneffaçable, obtenu selon des méthodes d'enregistrement connues, - la figure 4 illustre une partition obtenue suivant le procédé de l'invention, - la figure 5 illustre la structure de l'en-tête suivant un premier mode de réalisation de l'inventioon, - la figure 6 illustre la structure de l'en-tête suivant un second mode de réalisation de l'invention, ladite structure permettant de réaliser un chaînage entre deux versions 20 successives de l'en-tête qui sont situées dans des segments différents de l'espace de mémorisation du support non-effaçable, - la figure 7 illustre le chaînage entre deux versions successives de l'en-tête, - la figure 8 illustre la structure de l'en-tête 25 suivant un autre mode de réalisation de l'invention. On a représenté sur la figure 4 une partition définie sur un espace de mémorisation d'un support non-effaçable. Ce support est par exemple un disque optique numérique et l'espace de mémorisation est alors organisé en secteurs. On a représenté sur la figure 4 quelques uns des segments S, S,... constituant la partition de l'espace de mémorisation. Le premier segment S est par exemple réservé aux versions successives de l'en-tête, chaque version définissant une partition particulière sur l'espace de mémorisation. Parmi les autres segments, on trouve des segments S, S de petite taille qui sont bien adaptés à la mémorisation d'informations de description d'un fichier, et des segments S2, S de grande taille qui sont conçus pour mémoriser des informations de contenu de fichier. Conformément à l'invention, la partition de l'espace de mémorisation du support non-effaçable peut être modifiée en inscrivant, dans le segment réservé S, une nouvelle version de l'en-tête. Dans le cas représenté sur la figure 4, une première 10 version d'en-tête ET1 a été inscrite dans le segment réservé SO. Cet en-tête définissait une première partition de L'espace de mémorisation du support non-effaçable. Cet en-tête a par exemple été défini au moment du formatage du support non-effaçable. La première partition a été modifiée par une deuxième 15 version de l'entête ET inscrite à la suite de la première version de l'en-tête ET dans le segment S. La partition a été I 0 remaniée une deuxième fois par inscription d'une troisième version de l'en-tête ET à la suite de la deuxième version de l'en-tête ET. La possibilité de modifier la partition de l'espace de mémorisation du support non-effaçable par inscription de plusieurs versions successives de l'en-tête permet une gestion plus souple de cet espace de mémorisation. L'accès à la version la plus récente de l'en-tête se 25 fait simplement en parcourant le segment S depuis la première o version de l'en-tête. La version de l'en-tête la plus récente se reconnaît à ce qu'elle n'est suivie d'aucune autre version de l'en-tête. On a représenté schématiquement sur la figure 5 la 30 structure de l'entête suivant un premier mode de réalisation. Dans ce mode de réalisation, l'en-tête se compose d'un préambule et d'un corps d'en-tête. Ceux-ci contiennent les informations nécessaires à la gestion de l'espace de mémorisation du support non-effaçable. Le préambule comprend au moins un identificateur d'en- tête Hi, permettant de reconnaÂtre que l'information est un entète. Il peut comprendre également un identificateur HN contenant le nom du support non-effaçable, ce qui permet une vérification lors du montage du support non-effaçable dans un appareil de lecture. Le corps d'en-tête comprend au moins un champ HLS contenant la liste des segments formant la partition de l'espace de mémorisation. Chacun de ces segments SO, S1,... est défini au moins par une adresse de début SDEB et une adresse de fin SFIN 10 qui expriment la position du segment dans l'espace de mémorisation. Des informations complémentaires peuvent être ajoutées telles que le nom du segment SN, l'adresse courante SC et des données particulières SU indiquées par l'utilisateur. L'adresse courante SC est une adresse comprise entre 15 l'adresse de début SDEB et l'adresse de fin SFIN et indique la première adresse libre du segment au moment de l'écriture de l'en-tête sur le support non-effaçable. Bien entendu, au moment de l'écriture de l'en-tête dans le segment S, l'en-tête est complété par des bits de.0 synchronisation et des bits de redondance. Ceux-ci n'ont pas été représentés sur la figure 5. L'utilisation de tels bits est classique et est bien connue de l'homme de l'art. Le procédé de l'invention présente de nombreux avantages par rapport aux procédés connus. L'écriture de 25 multiples versions d'en-tête garantit la sécurité des informations qui y sont répétées, telles que le nom HN du support noneffaçable. De plus, le procédé de l'invention permet l'enregistrement de données variant dans le temps, telles que des dates, des taux de remplissage,... Ceci permet notamment 30 d'écrire une version d'en-tète définitive lorsque le support noneffaçable est complètement écrit. Enfin, le découpage de l'espace de mémorisation en segments permet de mémoriser de manière séparée des informations de nature différente. Ceci apporte, par rapport aux procédés 35 connus, une amélioration de la perfomance, de la sécurité et de la souplesse d'utilisation. L'augmentation de la performance résulte du fait qu'il est possible de regrouper les données les plus fréquemment utilisées, telles que les répertoires, dans des partitions de petite taille qui peuvent être directement chargées dans une mémoire rapide. La sécurité est également améliorée car il est possible de mémoriser les informations les plus importantes dans un ou plusieurs segments, gérés avec des méthodes plus sores que pour 10 les autres segments, telles que des méthodes de redondance ou de duplication des informations dans des segments de même taille. La souplesse d'utilisation est également accrue car chaque segment peut être géré avec une méthode qui lui est propre, et qui est adaptée à la nature des données qu'il contient 15 (image, fichier de texte,...). Ceci permet également de faire évoluer les méthodes de gestion d'un segment dans le temps. On a indiqué, en référence à la figure 4, que les versions successives de l'en-tête étaient inscrites de manière consécutive dans un segment réservé S. Cependant, il peut arrriver qu'à un moment donné ce segment soit plein et qu'il ne soit plus possible d'y enregistrer une nouvelle version d'entête. Dans ce cas, un deuxième segment est réservé pour l'enregistrement des versions ultérieures de l'en-tête. Mais il 25 est alors nécessaire de prévoir des moyens pour relier la dernière version de l'en-tête contenu dans le segment S de la version suivante de l'en-tête qui se trouve dans un autre segment. Ceci peut être réalisé, comme on l'a représenté sur la 30 figure 6, par l'adjonction d'un champ de chaînage aux champs de préambule et de corps d'en-tête. Ce champ de chaînage contient un pointeur PTR qui permet de lier logiquement deux versions successives d'en-tête inscrites dans des segments différents. Une telle situation est représentée sur la figure 7. Le 35 segment S0 contient une suite de versions de l'en-tête ET1, ET2 ET Ces versions de l'en-tête remplissent complètement n le segment S. O Les versions ultérieures de l'en-tête sont donc mémorisées dans un autre segment S. La liaison entre la version de l'en-tête ET du segment n S et la version suivante de l'en-tête ETn+1 du segment S4 se fait au moyen du champ de chaînage, en donnant au pointeur PTR de la version de l'en-tête ET la valeur de l'adresse de début du n segment S4. Ce champ de chaînage peut n'être utilisé que pour la dernière version de l'en-tête d'un segment. En effet, pour les autres versions de l'en-tête d'un segment, la relation entre deux versions successives de l'en-tête est immédiate puisqu'ils sont inscrits de manière consécutive dans le même segment. On a représenté sur la figure 8 une autre structure possible pour l'entête. Dans ce mode de réalisation, chaque entête comprend un préambule, un corps d'en-tête et un champ de chaînage. Les informations de synchronisation et de redondance qui sont ajoutées lors de l'écriture de l'en-tête dans l'espace 20 de mémorisation du support non-effaçable n'ont pas été repésentées. Le préambule comprend un identificateur d'en-tête HI qui permet d'indiquer que l'information écrite est un en-tête; un identificateur de format HF qui permet d'indiquer le type de structure suivant lequellesinformations sont mémorisées sur le support noneffaçable; et un identificateur HN pour mémoriser le nom du support non-effaçable. Les informations contenues dans le préambule sont fixes et permettent l'identification du support non-effaçable. La 30 répétition de ces informations dans le préambule de chaque version d'en-tête constitue un élément de sécurité pour l'identification du support non-effaçable. Le corps d'en-tête comprend la liste des segments HLS comme indiqué dans la figure 5. Il comprend en outre un 35 identificateur HV pour mémoriser la version de l'en-tête, un identificateur HNS pour indiquer le nombre de segments constituant la partition de l'espace de mémorisation, et éventuellement un champ HU de données réservé à L'utilisateur. Le demandeur a appliqué le procédé de l'invention à la 5 gestion d'un disque optique numérique. Les valeurs choisies, à titre d'exemple, pour les différents paramètres de l'en-tête décrit sur la figure 8 sont: identificateur d'en-tête HI: 4 octets, - identificateur de format HF: 1 octet, 10 - nom du disque HN: 14 octets, - numéro de version HV: 2 octets, - nombre de segments HNS: 2 octets, - nom d'un segment SN: 14 octets, données utilisateur SU: 10 octets, - adresses SDEB, SFIN et SC: 4 octets chacune, - données utilisateur HU: 100 octets, - pointeur PTR: 2 octets, pour indiquer l'indice d'un segment. Dans ce mode de réalisation, chaque segment est défini par cinq données SN, SDEB,SFIN, SC et SU, représentant une 20 longueur de 36 octets. Les autres éléments HI, HF, HN, HV, HNS, HU et PTR ont une longueur fixe de 123 octets. Pour un disque optique numérique organisé en secteurs, ayant chacun une longueur de 1024 octets, un secteur peut contenir un en-tête définissant une partition de l'espace de 25 mémorisation en 25 segments. Si le nombre de segments de la partition est plus important, l'enregistrement de l'entète nécessite au moins deux secteurs. On trouvera résumé ci-après les différentes opérations possibles sur Le support non-effaçable en relation avec le 30 procédé de l'invention. On suppose, à titre d'exemple, que le support non-effaçable est un disque optique numérique organisé en secteurs. INITIALISATION D'UN DISQUE OPTIQUE NUMERIQUE Un segment noté S est réservé pour la mémorisation des versions successives de L'en-tête. versions successives de l'en-tète. Une version initiale de l'en-tête, contenant le nom du disque HN, au moins Le segment S et un indice de version HV=1, est inscrite à l'adresse de début du segment S. O MONTAGE D'UN DISQUE OPTIQUE NUMERIQUE Le montage consiste à se positionner à l'adresse de début du segment S0, puis à lire successivement les versions de l'en-tête. La version la plus récente est celle qui est immédiatement suivie par un secteur vierge. Si le champ de chaînage d'un en-tête non nul est rencontré, la lecture se 10 pousuit sur le segment désigné par ce champ. Le programme qui réalise le montage reçoit en paramètre le nom du disque, et vérifie que le champ HN contient bien ce nom. CREATION D'UNE VERSION D'EN-TETE Une nouvelle version de l'en-tête peut être créée après l'opération de montage. La valeur HV est incrémentée de 1. L'information d'en-tête est inscrite à l'adresse courante SC du segment d'en-tête (segment 0 s'il n'y a pas de chaînage). Dans la nouvelle version de l'en-tête, cette adresse courante est 20 augmentée de la longueur de cette nouvelle version de l'en-tête. CREATION D'UN SEGMENT La création d'un segment consiste à renseigner chacun de ses champs (SN, SDEB, SFIN, SC et SU), puis à ajouter I au nombre de segments HNS et à créer une nouvelle version d'en-tête. 25 La création simultanée de plusieurs segments donne lieu à la création d'une seule version d'en-tête. OUVERTURE D'UN SEGMENT L'ouverture d'un segment se fait sur indication de son nom (SN) ou de son rang dans la liste des segments (HLS). Elle 30 suppose que le montage du disque optique numérique a été réalisé au préalable. Elle donne Lieu à la localisation de l'adresse courante entre l'adresse SC et l'adresse SFIN. LOCALISATION DE L'ADRESSE COURANTE L'adresse courante d'un segment correspond au premier 35 secteur vierge de ce segment dans le cas o l'écriture se fait par allocation séquentieLle des secteurs de L'adresse SDEB à L'adresse SFIN. La localisation de l'adresse courante est accélérée en prenant pour point de départ l'adresse SC obtenue lors de 5 l'ouverture du segment. La valeur de SC est égale à L'adresse courante réelle s'il n'y a pas eu d'écriture dans le segment depuis la création de la dernière version d'en- tête. Dans le cas contraire, elle est inférieure. ECRITURE DANS UN SEGMENT L'écriture dans un segment qui a été préalablement ouvert, se fait à l'adresse courante, et pour un nombre entier N de secteurs. L'adresse courante est ensuite augmentée de N secteurs. Lorsque l'adresse de fin SFIN est atteinte, le segment 15 est plein et aucune écriture n'y est plus possible. LECTURE DANS UN SEGMENT La lecture dans un segment, préalablement ouvert, se fait entre les adresses SDEB et SFIN. Les adresses peuvent être exprimées de façon absolue (déplacement par rapport au début du 20 disque) ou de façon relative (déplacement par rapport à SDEB). Une tentative de lecture en dehors du segment retourne un code d'erreur. ?602363 REVENDICATIONS 1. Procédé d'enregistrement sur un support d'information non-effaçable permettant une mise à jour de la segmentation de l'espace de mémorisation dudit support, dans 5 lequel une segmentation est définie par un en-tête contenant au moins un identificateur d'en-tête et une liste de segments, lesdits segments formant une partition dudit espace de mémorisation, ce procédé étant caractérisé en ce que, pour définir une nouvelle segmentation, on écrit une nouvelle version de l'en-tête à la suite de la version de l'en-tête la plus récente, les versions successives de l'en-tête étant inscrites séquentiellement dans un même segment, et en ce que, pour déterminer la partition courante, on parcourt les versions successives de l'en-tête dudit segment, depuis la version 15 initiale de l'en-tête jusqu'à la version la plus récente de l'entête. 2. Procédé selon la revendication 1, caractérisé en ce que chaque version de l'en-tête comprend un préambule contenant des informations fixes et un corps d'en-tête contenant des 20 informations variables, le préambule contenant au moins l'identificateur d'en-tête et le corps de l'en-tête contenant au moins la liste des segments associés à ladite version d'en-tête. 3. Procédé selon l'une quelconque des revendications 1 et 2, caractérisé en ce que, pour l'inscription d'un nouvel en25 tête en remplacement de l'en-tête courant, lorsque Le segment contenant les versions successives de l'en-tête est plein, on inscrit Ledit nouvel en-tête dans un autre segment et on réalise un chainage entre ledit nouvel en-tête et ledit en-tête courant. 4. Procédé selon la revendication 3, caractérisé en ce 30 que chaque entête comporte en outre un champ de chaînage et en ce qu'on utilise Ledit champ de chaînage pour relier deux versions successives de L'en-tête lorsque Lesdites versions de l'en-tête sont situées dans des segments différents. 5. Procédé selon l'une quelconque des revendications 2 à 4, caractérisé en ce que le préambule comprend en outre un identificateur de format HF pour indiquer la structure des informations contenues sur le support non-effaçable et un paramètre HN pour indiquer le nom dudit support non-effaçable. 6. Procédé selon l'une quelconque des revendications 2 à 5, caractérisé en ce que le corps d'en-tête comprend en outre: - un paramètre HV pour indiquer un numéro de version d'en-tête, - un paramètre HNS pour indiquer le nombre de segments définis sur le support non effaçable, et 10 - pour chaque segment: un paramètre SN pour indiquer le nom du segment, un paramètre SC pour indiquer L'adresse courante d'écriture à la création de la version d'en-tête. 7. Procédé selon l'une quelconque des revendications 1 15 à 6, caractérisé en ce que le support non-effaçable est un disque optique numérique dont l'espace de mémorisation est organisé en secteurs.