WO1994015292A1 - Procede de gestion d'une memoire tampon, support d'enregistrement et systeme informatique l'incorporant - Google Patents

Procede de gestion d'une memoire tampon, support d'enregistrement et systeme informatique l'incorporant Download PDF

Info

Publication number
WO1994015292A1
WO1994015292A1 PCT/FR1993/001285 FR9301285W WO9415292A1 WO 1994015292 A1 WO1994015292 A1 WO 1994015292A1 FR 9301285 W FR9301285 W FR 9301285W WO 9415292 A1 WO9415292 A1 WO 9415292A1
Authority
WO
WIPO (PCT)
Prior art keywords
buffer
buffers
threshold position
list
threshold
Prior art date
Application number
PCT/FR1993/001285
Other languages
English (en)
Inventor
Michel Villette
Hervé Servant
Original Assignee
Bull S.A.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bull S.A. filed Critical Bull S.A.
Priority to JP6514878A priority Critical patent/JP2655755B2/ja
Priority to US08/284,670 priority patent/US5584015A/en
Publication of WO1994015292A1 publication Critical patent/WO1994015292A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/123Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list

Definitions

  • the invention relates to a method for managing a set of buffers constituting a buffer memory. Its corollary objects are also a recording medium such as a floppy disk or a magnetic tape incorporating software for implementing the method, as well as a computer system for implementing the method, and more particularly to a computerized database management system, more commonly known by its acronym DBMS.
  • DBMS computerized database management system
  • a buffer is a fast, low-capacity interface between a processor and a large, usually slow, data memory.
  • the buffer memory is made up of a set of buffers intended to store respective extracts from the data memory. It can be a cache memory for receiving data blocks from the data memory.
  • the example chosen to illustrate the invention well concerns the buffer memory of a DBMS.
  • a DBMS is controlled by the operating system of a computer by means of a processor provided with a virtual memory constituting all or part of the central memory of the computer and representative of the buffer memory.
  • the extracts of data stored in the buffer memory are commonly pages of the mass memory constituting the database.
  • the buffer memory is thus commonly called page cache memory. Buffer management for the cache memory is done by a buffer manager controlled by the processor.
  • processing frequently accessing a small number of cache pages is called processing local and those accessing infrequently a large number of cache pages are called non-local processing.
  • non-local processing For the simultaneous execution of local processing and non-local processing, the cache memory is shared under the direction of the buffer manager. This sharing poses a major problem for the management of the cache memory.
  • Buffer managers are commonly and logically optimized for processing with local access.
  • the cache is managed by an algorithm known as LRU (Least Recently ⁇ sed). This algorithm lists the buffers in the cache based on when they were last used. In principle, each time a buffer is referenced, the LRU links it to the top of the list. As a result, the buffers that preceded it on the list descend by one place on the list. These pads are said to age one place.
  • LRU Least Recently ⁇ sed
  • This optimization for local processing is particularly unsuitable for the simultaneous exploitation of the cache memory by non-local processing.
  • the invention solves these two problems by making it possible to optimize the management of a set of buffers used by concurrent local and non-local processing.
  • the subject of the invention is a method for managing a set of buffers by means of a list classifying the buffers by order of least recent use (LRU), characterized in that it consists, when one buffers is referenced, to classify the buffer according to its position in relation to a threshold position in the list.
  • LRU least recent use
  • the invention also relates to a computer system comprising a processor connected to a data memory via a set of buffers managed by a manager according to an LRU algorithm, characterized in that it comprises means generating at least one threshold position and comparison means connected to the generator means and to the algorithm.
  • the corollary subject of the invention is also a recording medium, characterized in that it incorporates software for implementing the method.
  • Figure 1 is a block diagram of a computer system according to the invention constituting a database management system and incorporating a set of buffers managed according to the method of the invention;
  • FIG. 2 illustrates by a flowchart a method for managing the set of buffers represented in FIG. 1.
  • FIG. 1 illustrates by a synoptic view a computer system 10 comprising a central processor 11 connected via a central memory 12 to a mass memory 13 constituting a database in the example considered.
  • the central memory 12 thus behaves like a buffer memory between the central processor 11 and the database 13.
  • the central memory 12 comprises a set
  • n buffer memories 14 of n buffer memories 15, and a manager 16 of the set 14 on the basis of an LRU algorithm.
  • the n buffers 15 are adapted to each store an extract from the database 13, a page of 4 kilobytes in the example illustrated.
  • the n buffers 15 are chained in an order 1, 2, ..., n determined by the LRU.
  • the processor 11 accesses the set 14 to execute local processes 17 and non-local processes 18. Under the command of the manager 16, the pages required by the processes 17 and 18 are copied into the set 14 from the base of external data 13.
  • the assembly 14 is therefore shared between local treatments and non-local concurrent treatments.
  • the computer system 10 also conventionally contains, commonly in the manager 16 as illustrated, a device 19 for calculating the current rate of presence of pages in the set 14 relative to the total number of pages requested by the processor. This rate is commonly called the current hit ratio. It is said that there is success when the address of a page requested by the processor 11 is one of the addresses contained in the directory of all of the buffers. The success rate is updated regularly, for example every 1000 references.
  • a buffer when a buffer is referenced, it is classified in the list by the manager 16 as a function of its position p with respect to a threshold position t of the list.
  • An illustrative example of the process according to the invention is represented by the functional flow diagram of FIG. 2.
  • the threshold position t is defined as a function of the current rate of success of access to the buffers.
  • the function chosen in the example illustrated is the simple correspondence of the success rate to the number of buffers of the set 14.
  • the computer device 10 contains, preferably in the manager 16 as illustrated, a generator 20 of the threshold position t receiving the success rate provided by the device 19 and a device for position comparison 21 receiving from the generator 20 the threshold position t and from the LRU the position p of the buffer referenced in the list.
  • the position p of the buffer which incorporates it is compared with the threshold position t. If the position p is a position i preceding the position t as illustrated in FIG. 1, that is to say if p ⁇ t, the manager 16 does not change the position i of the buffer 15. We therefore consider that the page requested is in a stable or cool area of the list. In other words, all the stable pages (orking set pages) placed before the threshold position t are not aged after reading a page. On the other hand, if the position p is a position k corresponding to the threshold position or the next one, that is to say if p> t, we place it in head of the list. Aging only takes place in this case.
  • the requested page is not in the set 14, it is placed at the threshold position t, so that reading this page does not age the pages contained in the stable zone and considered to be active. Thus, it is only if the page is referenced again that it will be chained at the top of the list, in accordance with the previous comparison criteria.
  • the determination of the threshold position t is a simple correspondence of this rate with the set of positions in the list LRU.
  • the determination of the threshold position can be a more elaborate function of the value of the success rate, which can even lead to an evolving threshold position t or to several threshold values.
  • the threshold position t can be the same predetermined fixed value for a range of values of the current success rate.
  • the threshold position t would be 900 for a rate between 80% and 100%, 700 for a rate between 60% and 80%, etc.
  • this example can be combined with the previous example .
  • the threshold position t chosen in the example illustrated is defined as a function of the success rate of access to the buffers, it is clear that it can simply be a predetermined fixed position.
  • the method would consist in comparing the position p with one or more fixed threshold positions.
  • a variable threshold position could be defined as a function of another parameter than the success rate and that a variable position could be added to a fixed position.
  • the method of the invention relates to the management of a set of buffers by means of a list classifying the buffers by order of least recent use (LRU ) and consists, when a buffer is referenced, in classifying the buffer as a function of its position p relative to a threshold position t of the list.
  • the threshold position can be fixed or variable. If it is variable, it will advantageously be defined • Depending on the access to the buffer current success rate. If the information, a page in the example illustrated, is already present in the buffer referenced, the method of the invention consists in maintaining the position of the buffer if it precedes the threshold position and in chaining it in the list in the event opposite.
  • the chaining can be done at the top of the list or in another threshold position t2 which precedes it. If the referenced buffer receives new information, the method of the invention consists in placing it at the threshold position. In the case of several threshold positions, the buffer will be placed in the last threshold position.
  • the example relates to a buffer memory in relation to a database as a data memory
  • the invention can be applied to any buffer memory between any processor and any memory, so-called data memory to avoid any confusion.
  • the data memory would be the central memory of the computer system.
  • the invention therefore generally has for another object a computer system comprising a processor connected to a data memory by means of a set of buffers managed by a manager according to an LRU algorithm, means generating at least one threshold position and comparison means connected to the generating means and to the LRU.
  • the computer system includes a device for calculating the current rate of success of access to the buffers, this device will be connected to the threshold position generating means to define at least one of the threshold positions as a function of the rate of success.

Abstract

Le procédé de gestion d'une mémoire tampon formée d'un ensemble (14) de tampons (15) est fait au moyen d'une liste classant les tampons par ordre d'utilisation la moins récente (LRU) et consiste, lorsque l'un des tampons (15) est référencé, à classer le tampon en fonction de sa position (p) par rapport à une position de seuil (t) de la liste. Avantageusement, la position de seuil est définie en fonction du taux courant de succès d'accès aux tampons (hit ratio). Ce procédé est bien adapté à l'exploitation de la mémoire tampon par des traitements locaux et non locaux concurrents.

Description

Procédé de gestion d'une mémoire tampon, support d'enregistrement et système informatique l'incorporant.
L'invention se rapporte à un procédé de gestion d'un ensemble de tampons constituant une mémoire tampon. Elle a aussi pour objets corollaires un support d'enregistrement tel qu'une disquette ou une bande magnétique incorporant un logiciel pour la mise en oeuvre du procédé, ainsi qu'un système informatique pour la mise en oeuvre du procédé, et plus particulièrement à un système informatique de gestion de base de données, désigné plus couramment par son acronyme SGBD.
Une mémoire tampon constitue une interface rapide et de petite capacité entre un processeur et une mémoire de données de grande capacité et généralement lente. La mémoire tampon est faite d'un ensemble de tampons destinés à stocker des extraits respectifs de la mémoire de données. Elle peut être une antémémoire pour recevoir des blocs de données de la mémoire de données. L'exemple choisi pour bien illustrer l'invention concerne la mémoire tampon d'un SGBD. Un SGBD est commandé par le système d'exploitation d'un ordinateur au moyen d'un processeur pourvu d'une mémoire virtuelle constituant tout ou partie de la mémoire centrale de l'ordinateur et représentative de la mémoire tampon. Les extraits de données stockés dans la mémoire tampon sont couramment des pages de la mémoire de masse constitutive de la base de données. La mémoire tampon est ainsi couramment appelée antémémoire de pages (pages cache memory) . La gestion des tampons de l'antémémoire est faite par un gestionnaire de tampons (buffer manager) commandé par le processeur.
On distingue ordinairement deux sortes de traitements exécutés par les processus exploitant une mémoire tampon, et plus particulièrement l'antémémoire de pages de l'exemple considéré. Les traitements accédant fréquemment à un petit nombre de pages de l'antémémoire sont appelés traitements locaux et ceux accédant peu fréquemment à un grand nombre de pages de l'antémémoire sont appelés traitements non locaux. Pour l'exécution simultanée de traitements locaux et de traitements non locaux, l'antémémoire est partagée sous la direction du gestionnaire de tampons. Ce partage pose un problème majeur pour la gestion de l'antémémoire.
Les gestionnaires de tampons sont couramment et logiquement optimisés pour des traitements effectuant des accès locaux. Ordinairement l'antémémoire est gérée par un algorithme connu sous le nom de LRU (Least Récently ϋsed) . Cet algorithme dresse une liste des tampons de l'antémémoire en fonction de la date de leur dernière utilisation. Par principe, à chaque fois qu'un tampon est référencé, le LRU le rechaîne en tête de la liste. De ce fait, les tampons qui le précédaient sur la liste descendent d'une place sur la liste. On dit que ces tampons vieillissent d'une place. Quand le gestionnaire des tampons ne trouve pas une page dans l'antémémoire, il demande l'extraction de la page de la base de données et son chargement dans l'antémémoire tandis que le LRU désigne le tampon qui a été le moins récemment référencé pour enregistrer la nouvelle page. Cette optimisation pour les traitements locaux est particulièrement inadaptée à l'exploitation simultanée de l'antémémoire par des traitements non locaux. En effet, l'accès à de nouvelles pages se produit beaucoup plus fréquemment pour des traitements non locaux. Il s'ensuit alors une modification rapide de la tête de liste du LRU et, par conséquent, un vieillissement prématuré du contenu des autres tampons. Ce vieillissement prématuré perturbe beaucoup la gestion des traitements locaux et ralentit considérablement leur exécution.
Un autre problème, dû au rechaînage en tête de liste LRU des tampons nouvellement référencés, se pose surtout dans un environnement multiprocesseur. Le rechaînage en tête de liste doit en effet être atomique pour préserver l'intégrité des chaînages de la liste. Dans un système multiprocesseur, cela oblige à prendre un verrou exclusif durant l'opération de déchaînage-rechaînage pour déplacer le tampon dans la liste. La prise d'un verrou exclusif constitue ce qu'on appelle une section critique. Une section critique ne peut être exécutée que par un seul processeur à un instant donné et cause ainsi la dégradation du rendement du système multiprocesseur.
L' invention résout ces deux problèmes en permettant d'optimiser la gestion d'un ensemble de tampons exploité par des traitements locaux et non locaux concurrents .
L'invention a pour objet un procédé de gestion d'un ensemble de tampons au moyen d'une 'liste classant les tampons par ordre d'utilisation la moins récente (LRU), caractérisé en ce qu'il consiste, lorsque l'un des tampons est référencé, à classer le tampon en fonction de sa position par rapport à une position de seuil de la liste.
En corollaire, l'invention a aussi pour objet un système informatique comprenant un processeur connecté à une mémoire de données par l'intermédiaire d'un ensemble de tampons géré par un gestionnaire selon un algorithme de LRU, caractérisé en ce qu'il comporte des moyens générateurs d'au moins une position de seuil et des moyens de comparaison connectés aux moyens générateurs et à l'algorithme.
L'invention a aussi pour objet corollaire un support d'enregistrement caractérisé en ce qu'il incorpore un logiciel pour la mise en oeuvre du procédé.
Les caractéristiques et avantages de l'invention ressortiront de la description qui suit, donnée à titre d'exemple et illustrée dans les dessins annexés.
Dans les dessins la figure 1 est une vue synoptique d'un système informatique conforme à l'invention constituant un système de gestion de base de données et incorporant un ensemble de tampons géré selon le procédé de l'invention ; et
- la figure 2 illustre par un organigramme un procédé de gestion de l'ensemble de tampons représenté sur la figure 1.
La figure 1 illustre par une vue synoptique un système informatique 10 comprenant un processeur central 11 connecté par l'intermédiaire d'une mémoire centrale 12 à une mémoire de masse 13 constituant une base de données dans l'exemple considéré. La mémoire centrale 12 se comporte ainsi comme une mémoire tampon entre le processeur central 11 et la base de données 13. La mémoire centrale 12 comprend un ensemble
14 de n mémoires tampons 15, et un gestionnaire 16 de l'ensemble 14 sur la base d'un algorithme LRU. Les n tampons
15 sont adaptés à stocker chacun un extrait de la base de données 13, une page de 4 kilooctets dans l'exemple illustré. Les n tampons 15 sont chaînés dans un ordre 1, 2, ..., n déterminé par le LRU. Le processeur 11 accède à l'ensemble 14 pour exécuter des traitements locaux 17 et des traitements non locaux 18. Sous la commande du gestionnaire 16, les pages requises par les traitements 17 et 18 sont copiées dans l'ensemble 14 à partir de la base de données externe 13. L'ensemble 14 est donc partagé entre traitements locaux et traitements non locaux concurrents.
Le système informatique 10 contient aussi de manière classique, couramment dans le gestionnaire 16 comme illustré, un dispositif 19 de calcul du taux courant de présence de pages dans l'ensemble 14 par rapport au nombre total de pages demandé par le processeur. Ce taux est couramment appelé taux courant de succès (hit ratio) d' accès aux tampons. On dit en effet qu'il y a succès quand l'adresse d'une page demandée par le processeur 11 est l'une des adresses contenues dans le répertoire de l'ensemble des tampons. Le taux de succès est remis régulièrement à jour, par exemple tous les 1000 références.
Selon l'invention, lorsqu'un tampon est référencé, il est classé dans la liste par le gestionnaire 16 en fonction de sa position p par rapport à une position de seuil t de la liste. Un exemple illustratif du procédé conforme à l'invention est représenté par l'organigramme fonctionnel de la figure 2.
On considère par exemple que l'ensemble 14 se compose de 1000 tampons 15 (n = 1000) . Selon l'exemple illustré, la position de seuil t est définie en fonction du taux courant de succès d'accès aux tamp'ons . La fonction choisie dans l'exemple illustré est la simple correspondance du taux de succès au nombre de tampons de l'ensemble 14. Ainsi, si par exemple le taux de succès est de 85%, la position de seuil t dans l'ensemble 14 des 1000 tampons 15 correspond à la position t = 850. Le dispositif informatique 10 contient, de préférence dans le gestionnaire 16 comme illustré, un générateur 20 de la position de seuil t recevant le taux de succès fourni par le dispositif 19 et un dispositif de comparaison de position 21 recevant du générateur 20 la position de seuil t et du LRU la position p du tampon référencé dans la liste.
Si une page référencée se trouve déjà dans l'ensemble 14, on compare la position p du tampon qui l'incorpore avec la position de seuil t. Si la position p est une position i précédant la position t comme illustré dans la figure 1, c'est-à-dire si p < t, le gestionnaire 16 ne change pas la position i du tampon 15. On considère donc que la page demandée se trouve dans une zone stable ou fraîche de la liste. En d'autres termes, toutes les pages stables ( orking set pages) placées avant la position de seuil t ne sont pas vieillies après lecture d'une page. Par contre, si la position p est une position k correspondant à la position de seuil ou la suivant, c'est-à-dire si p > t, on la place en tête de la liste. Le vieillissement n'a lieu que dans ce cas .
Si la page demandée ne se trouve pas dans l'ensemble 14, on la place à la position de seuil t, de sorte que la lecture de cette page ne fait pas vieillir les pages contenues dans la zone stable et considérées comme actives. Ainsi, ce n'est que si la page est référencée une nouvelle fois qu'elle sera chaînée en tête de la liste, conformément aux critères de comparaison précédents.
L'exemple illustratif du procédé de l'invention peut avoir plusieurs variantes. Dans ce procédé, la détermination de la position de seuil t est une 'simple correspondance de ce taux avec l'ensemble des positions de la liste LRU. Cependant, il est clair que la détermination de la position de seuil peut être une fonction plus élaborée de la valeur du taux de succès, pouvant même conduire à une position de seuil t évolutive ou à plusieurs valeurs de seuil. Par exemple, une première position de seuil tl pourrait être celle définie précédemment pour l'insertion d'une nouvelle page et la comparaison d'une position de page présente p, et une autre position t2 pourrait être de valeur moindre, par exemple t2 = tl 12 , pour correspondre à un premier rechaînage. Ainsi, une page déjà présente et ayant une position suivant la position de seuil tl pourrait être rechaînée à la position t2. Selon un autre exemple, la position de seuil t peut être une même valeur fixe prédéterminée pour une gamme de valeurs du taux courant de succès. Par exemple, la position de seuil t serait 900 pour un taux compris entre 80 % et 100 %, 700 pour un taux compris entre 60 % et 80 %, etc... Bien sûr, cet exemple peut être combiné avec l'exemple précédent. D'autre part, bien que la position de seuil t choisie dans l'exemple illustré soit définie en fonction du taux de succès d'accès aux tampons, il est clair qu'elle peut être tout simplement une position fixe prédéterminée. Ainsi le procédé consisterait à comparer la position p avec une ou plusieurs positions fixes de seuil. On comprend aussi que, plus généralement, une position de seuil variable pourrait se définir en fonction d' un autre paramètre que le taux de succès et qu'une position variable pourrait s'ajouter à une position fixe.
D'une manière générale, il ressort donc de ce qui précède que le procédé de l'invention se rapporte à la gestion d'un ensemble de tampons au moyen d'une liste classant les tampons par ordre d'utilisation la moins récente (LRU) et consiste, lorsqu'un tampon est référencé, à classer le tampon en fonction de sa position p par rapport à une position de seuil t de la liste. La position de seuil peut être fixe ou variable. Si elle est variable, elle sera avantageusement définie en fonction du taux courant de succès d'accès aux tampons. Si l'information, une page dans l'exemple illustré, est déjà présente dans le tampon référencé, le procédé de l'invention consiste à maintenir la position du tampon si elle précède la position de seuil et à le rechaîner dans la liste en cas contraire. On a vu que le rechaînage peut se faire en tête de liste ou dans une autre position de seuil t2 qui la précède. Si le tampon référencé reçoit une information nouvelle, le procédé de l'invention consiste à le placer à la position de seuil. Dans le cas de plusieurs positions de seuil, le tampon sera placé dans la dernière position de seuil.
Par ailleurs, bien que l'exemple se rapporte à une mémoire tampon en relation avec une base de données comme mémoire de données, on a vu que l'invention peut s'appliquer à toute mémoire tampon entre un processeur quelconque et une mémoire quelconque, dite mémoire de données pour éviter toute confusion. Dans le cas particulier d'un processeur central, la mémoire de données serait la mémoire centrale du système informatique. L'invention a donc généralement pour autre objet un système informatique comprenant un processeur connecté à une mémoire de données par l'intermédiaire d'un ensemble de tampons géré par un gestionnaire selon un algorithme de LRU, des moyens générateurs d' au moins une position de seuil et des moyens de comparaison connectés aux moyens générateurs et au LRU. De préférence, si le système informatique comprend un dispositif de calcul du taux courant de succès d'accès aux tampons, ce dispositif sera connecté aux moyens générateurs de position de seuil pour définir au moins l'une des positions de seuil en fonction du taux de succès.

Claims

Revendications :
1. Procédé de gestion d'un ensemble (14) de tampons (15) au moyen d'une liste classant les tampons par ordre d'utilisation la moins récente (LRU), caractérisé en ce qu'il consiste, lorsque l'un des tampons (15) est référencé, à classer le tampon en fonction de sa position (p) par rapport à une position de seuil (t) de la liste.
2. Procédé selon la revendication 1, caractérisé en ce que l'information étant déjà dans le tampon référencé, il consiste à maintenir la position du tampon si elle précède la position de seuil et à le rechaîner dans la liste en cas contraire.
3. Procédé selon la revendication 2, caractérisé en ce qu'il consiste à le rechaîner en tête de liste ou dans une autre position de seuil (t2) qui la précède.
4. Procédé selon l'une des revendications 1 à 3, caractérisé en ce que le tampon référencé recevant une information nouvelle, il consiste à le placer à la position de seuil.
5. Procédé selon la revendication 4, caractérisé en ce que, utilisant plusieurs positions de seuil, il consiste à placer le tampon à la dernière position de seuil.
6. Procédé selon l'une des revendications 1 à 5, caractérisé en ce qu' il consiste à définir la position de seuil en fonction du taux courant de succès d'accès aux tampons.
7. Procédé selon l'une des revendications 1 à 6, caractérisé en ce que la position de seuil est une valeur fixe prédéterminée.
8. Système informatique (10) comprenant un processeur (11) connecté à une mémoire de données (12) par l'intermédiaire d'un ensemble (14) de tampons (15) géré par un gestionnaire (16) selon un algorithme de LRU, caractérisé en ce qu'il comporte des moyens générateurs (20) d'au moins une position de seuil (t) et des moyens de comparaison (21) connectés aux moyens générateurs et à l'algorithme.
9. Système selon la revendication 8, du type contenant des moyens de calcul (19) du taux courant de succès d'accès aux tampons, caractérisé en que les moyens de calcul sont connectés aux moyens générateurs (20) .
10. Système selon la revendication 8 ou 9, caractérisé en ce que la mémoire de données est une base de données et l'ensemble (14) est tout ou partie de la mémoire centrale en liaison avec le processeur central (11) du système.
11. Support d'enregistrement, caractérisé en ce qu'il contient un logiciel pour la mise en oeuvre du procédé défini par l'une des revendications 1 à 7.
PCT/FR1993/001285 1992-12-22 1993-12-21 Procede de gestion d'une memoire tampon, support d'enregistrement et systeme informatique l'incorporant WO1994015292A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP6514878A JP2655755B2 (ja) 1992-12-22 1993-12-21 バッファ・メモリ管理方法,及び該方法を実施するためのコンピュータシステム
US08/284,670 US5584015A (en) 1992-12-22 1993-12-21 Buffer memory management method, recording medium, and computer system incorporating same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9215519A FR2699703B1 (fr) 1992-12-22 1992-12-22 Procédé de gestion d'une mémoire tampon, support d'enregistrement et système informatique l'incorporant.
FR92/15519 1992-12-22

Publications (1)

Publication Number Publication Date
WO1994015292A1 true WO1994015292A1 (fr) 1994-07-07

Family

ID=9436951

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR1993/001285 WO1994015292A1 (fr) 1992-12-22 1993-12-21 Procede de gestion d'une memoire tampon, support d'enregistrement et systeme informatique l'incorporant

Country Status (6)

Country Link
US (1) US5584015A (fr)
EP (1) EP0604310B1 (fr)
JP (1) JP2655755B2 (fr)
DE (1) DE69327391T2 (fr)
FR (1) FR2699703B1 (fr)
WO (1) WO1994015292A1 (fr)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5829023A (en) * 1995-07-17 1998-10-27 Cirrus Logic, Inc. Method and apparatus for encoding history of file access to support automatic file caching on portable and desktop computers
US6745292B1 (en) * 1995-12-08 2004-06-01 Ncr Corporation Apparatus and method for selectively allocating cache lines in a partitioned cache shared by multiprocessors
US5915265A (en) * 1995-12-22 1999-06-22 Intel Corporation Method and apparatus for dynamically allocating and resizing the dedicated memory in a shared memory buffer architecture system
KR0164546B1 (ko) * 1996-01-09 1999-01-15 김광호 메모리 영역의 분할 사용방법
US5761716A (en) * 1996-05-01 1998-06-02 International Business Machines Corporation Rate based memory replacement mechanism for replacing cache entries when the cache is full
US6034945A (en) * 1996-05-15 2000-03-07 Cisco Technology, Inc. Method and apparatus for per traffic flow buffer management
JP3705305B2 (ja) * 1996-05-16 2005-10-12 カシオ計算機株式会社 音声記憶再生装置
US6487202B1 (en) 1997-06-30 2002-11-26 Cisco Technology, Inc. Method and apparatus for maximizing memory throughput
US6430191B1 (en) 1997-06-30 2002-08-06 Cisco Technology, Inc. Multi-stage queuing discipline
US6775292B1 (en) 2000-01-24 2004-08-10 Cisco Technology, Inc. Method for servicing of multiple queues carrying voice over virtual circuits based on history
US7142558B1 (en) 2000-04-17 2006-11-28 Cisco Technology, Inc. Dynamic queuing control for variable throughput communication channels
US6631446B1 (en) * 2000-10-26 2003-10-07 International Business Machines Corporation Self-tuning buffer management
US20060074872A1 (en) * 2004-09-30 2006-04-06 International Business Machines Corporation Adaptive database buffer memory management using dynamic SQL statement cache statistics

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0086886A2 (fr) * 1982-02-24 1983-08-31 International Business Machines Corporation Système hiérarchique de mémorisation de données pour ordinateurs digitaux
EP0509231A1 (fr) * 1991-04-19 1992-10-21 International Business Machines Corporation Procédé de remplacement de données dans une antémémoire

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0652060A (ja) * 1992-07-28 1994-02-25 Hitachi Ltd Lruリスト制御方式
JPH0689232A (ja) * 1992-09-08 1994-03-29 Fujitsu Ltd キャッシュメモリの制御方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0086886A2 (fr) * 1982-02-24 1983-08-31 International Business Machines Corporation Système hiérarchique de mémorisation de données pour ordinateurs digitaux
EP0509231A1 (fr) * 1991-04-19 1992-10-21 International Business Machines Corporation Procédé de remplacement de données dans une antémémoire

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Upgrading LRU Positions in Cache Management", IBM TECHNICAL DISCLOSURE BULLETIN,, vol. 30, no. 5, October 1987 (1987-10-01), NEW YORK, US;, pages 358 - 359 *
J.Z.TENG ET AL: "Managing IBM Database 2 Buffers to Maximize Performance", IBM SYSTEMS JOURNAL,, vol. 23, no. 2, 1984, ARMONK, US;, pages 211 - 218, XP009002253 *

Also Published As

Publication number Publication date
JPH07500441A (ja) 1995-01-12
FR2699703A1 (fr) 1994-06-24
DE69327391D1 (de) 2000-01-27
JP2655755B2 (ja) 1997-09-24
DE69327391T2 (de) 2000-05-11
FR2699703B1 (fr) 1995-01-13
EP0604310A1 (fr) 1994-06-29
US5584015A (en) 1996-12-10
EP0604310B1 (fr) 1999-12-22

Similar Documents

Publication Publication Date Title
US9672267B2 (en) Hybrid data management system and method for managing large, varying datasets
US20230306135A1 (en) Masking sensitive information in records of filtered accesses to unstructured data
JP6050503B2 (ja) 階層キャッシュを用いたメールのインデックス化および検索
EP0604310B1 (fr) Procédé de gestion d&#39;une mémoire tampon, et système informatique l&#39;incorporant
US20180004690A1 (en) Efficient context based input/output (i/o) classification
US9128966B2 (en) Determining a storage location based on frequency of use
WO1999012099A1 (fr) Procede d&#39;allocation de memoire dans un systeme de traitement de l&#39;information multiprocesseur
KR102061466B1 (ko) 메모리 관리를 위한 보존 가비지 콜렉팅 및 정수 태깅 기법
WO2018154197A1 (fr) Procédé, équipement et système de gestion du système de fichiers
CN114416670B (zh) 适用于网盘文档的索引创建方法、装置、网盘及存储介质
CN104657358B (zh) 实现网页程序离线缓存的方法和系统
CN110287152A (zh) 一种数据管理的方法以及相关装置
CN100580669C (zh) 在Flash存储介质上的关于文件分配表的缓存实现方法
CN109522273B (zh) 一种实现数据写入的方法及装置
US8738669B1 (en) Method and apparatus for providing access to data objects within another data object
KR100907477B1 (ko) 플래시 메모리에 저장된 데이터의 인덱스 정보 관리 장치및 방법
US11151136B2 (en) Dynamic management of memory allocation in a database
US20190187904A1 (en) Efficient export scheduling using index and schema to determine data distribution
US8381302B1 (en) Systems and methods for translating non-comparable values into comparable values for use in heuristics
TW201013536A (en) Method for creating image and method for sorting file systems
US11615109B1 (en) Efficient deserialization from standardized data files
US20240095456A1 (en) Text summarization with emotion conditioning
US11934359B1 (en) Log content modeling
KR102641500B1 (ko) 비지도 도메인 적응 장치 및 방법
CN111046099A (zh) 一种热数据高性能存储架构

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP US

WWE Wipo information: entry into national phase

Ref document number: 08284670

Country of ref document: US