DE3780807T2 - Verfahren zum schnellen oeffnen von mit pfadnamen identifizierten plattendateien. - Google Patents

Verfahren zum schnellen oeffnen von mit pfadnamen identifizierten plattendateien.

Info

Publication number
DE3780807T2
DE3780807T2 DE8787118540T DE3780807T DE3780807T2 DE 3780807 T2 DE3780807 T2 DE 3780807T2 DE 8787118540 T DE8787118540 T DE 8787118540T DE 3780807 T DE3780807 T DE 3780807T DE 3780807 T2 DE3780807 T2 DE 3780807T2
Authority
DE
Germany
Prior art keywords
file
entries
disk
cache
directories
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
DE8787118540T
Other languages
English (en)
Other versions
DE3780807D1 (de
Inventor
Jr Kenneth Walter Christopher
Barry Alan Feigenbaum
Jin Kim
Douglas Carleton Love
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of DE3780807D1 publication Critical patent/DE3780807D1/de
Publication of DE3780807T2 publication Critical patent/DE3780807T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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
    • 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9017Indexing; Data structures therefor; Storage structures using directory or table look-up
    • G06F16/902Indexing; Data structures therefor; Storage structures using directory or table look-up using more than one table in sequence, i.e. systems with three or more layers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Computer And Data Communications (AREA)

Description

  • Die Erfindung bezieht sich auf das Feld der Datenverarbeitung und insbesondere auf ein Verfahren zum schnellen Öffnen von Plattendateien, die durch Pfadnamen identifiziert werden.
  • Die Erfindung wurde entworfen als Verbesserung über ein bekanntes handelsübliches System von der Art, bei der Hardware, wie z.B: ein IBM Personal Computer, unter einem Plattenbetriebssystem (DOS) betrieben wird, und in dem Dateien auf Festplatten unter Benutzung baumartig strukturierter Verzeichnisse und Pfadnamen gespeichert sind. Information wird auf einer Platte gemäß einem vorgegebenen Muster von Zylindern und Sektoren gespeichert, wobei jeder Sektor eine vorgegebene Anzahl von Bytes enthält. Um auf einen gewünschten Sektor zuzugreifen, muß ein Kopf zuerst zu dem Zylinder bewegt werden, der den gewünschten Sektor enthält, die Platte unter den Kopf gedreht werden, bis der gewünschte Sektor erreicht ist, und dann wird der Sektor gelesen und sein Inhalt in einem Puffer gespeichert. Beim Betrachten der Gesamtzeit, die erforderlich ist, um auf die Daten auf einer Platte zuzugreifen, tritt die hauptsächliche Verzögerung während der Bewegung eines Kopfes auf. Wenn eine Anwendung viel physikalische E/A-Aktivität erfordert, ist es erwünscht, den Grad der Kopfbewegung so weit als möglich zu verringern.
  • Dateien werden auf der Platte in einer Gruppe oder in Gruppen von Sektoren gespeichert, wobei jede Gruppe eine vorgegebene Anzahl von Sektoren aufweist. Jede Gruppe hat eine eindeutige andere Startadresse. Die Lage der Dateien auf einer Platte werden mittel einer Dateizuordnungstabelle (DZT), die selbst auf der Platte gespeichert ist, genau vermerkt. Jede Position der DZT ist einer anderen Gruppe zugeordnet und enthält einen anderen Eintrag, der anzeigt, daß keine anderen Gruppen einer Datei zugeordnet sind oder auf die nächste Gruppe der Datei hinweisen. Kleine Dateien sind in einer einzigen Gruppe enthalten. Lange Dateien sind in Gruppen enthalten, die zusammengekettet sind.
  • Dateien werden durch die Verwendung baumartig strukturierter Verzeichnisse lokalisiert. Jede Platte enthält ein Stammverzeichnis, viele Unterverzeichnisse und eine Vielfalt von Dateien. Eine gegebene Datei kann sich am Ende eines Pfades befinden, der durch das Stammverzeichnis und verschiedene Unterverzeichnisse verläuft. Jedes Verzeichnis enthält Einträge für zusätzliche Verzeichnisse und Dateien. Eine spezielle Datei kann durch Angabe des Laufwerks, des Pfades und des Dateinnamens identifiziert werden. Zum Beispiel identifiziert C: VERZ1VERZ2DATEI1 einen Dateinamen DATEI1, der in dem Verzeichnis VERZ2 aufgelistet ist, welches ein Unterverzeichnis von VERZ1 und darin aufgelistet ist, wobei VERZ1 ein Unterverzeichnis des Stammverzeichnisses des Laufwerks C ist und darin aufgezeichnet ist.
  • Wenn eine Datei geöffnet wird, ist es notwendig, auf das Laufwerk zuzugreifen und alle die Verzeichnisse zu durchsuchen, die in dem Pfad angegeben sind, um das Verzeichnis zu lokalisieren, das den Eintrag des Dateinamens enthält. In diesem letzteren Verzeichnis werden alle Einträge und Dateinamen durchsucht, bis der gewünschte lokalisiert ist. Wenn eine Datei nicht vorher geöffnet wurde, ist kein Eintrag vorhanden, und daher müssen Einträge gemacht werden, bevor eine Datei benutzt werden kann. Wenn die Datei vorher geöffnet wurde, dann enthält der Eintrag in dem Verzeichnis, in dem der Dateiname aufgelistet ist, einen Eintrag, der ein Index für die DZT ist, die der Gruppe entspricht,bei der die Datei beginnt. Während solch einer Öffnungsprozedur muß sich physikalische E/A-Aktivität abspielen, um auf das Stammverzeichnis und jedes Unterverzeichnis zuzugreifen und eine lange Liste von Dateinamen zu durchsuchen. Bei einigen Anwendungen werden die gleichen Dateien während des Ablaufs eines bestimmten Programms viele Male geöffnet, und da jedes Öffnen ein großes Ausmaß an physikalischer E/A-Aktivität bedingt, kann eine verhältnismäßig große Menge an Zeit verloren werden.
  • "A Modular Operating System for the Cray 1" (Software Practice and Experience, Vol. 16, No. 12, Dezember 1986, Seite 1059, veröffentlicht durch J. Wiley and Sons Ltd, Chichester, Sussex, UK) beschreibt ein Verfahren zum Betreiben eines Datenverarbeitungssystems, um eine kürzlich geöffnete, jetzt aber geschlossene Datei, die auf einer Platte gespeichert ist, zu öffnen. Das Verfahren schließt den Schritt des Erstellens eines Cache in einem Hauptspeicher des Computersystems ein. Der Cache wird erstellt, um Informationen über eine Datei zu liefern, auf die zuzugreifen ist, wodurch vermieden wird, daß die gleiche Information von der Platte erhalten werden muß. Wenn die Datei anfangs geöffnet wird, wird ein Eintrag, der die Datei und ihre Lage auf der Platte identifiziert, in dem Cache gespeichert.
  • Patent Abstact of Japan, Vol.10, No 387, Seite 530 beschreibt ein Verfahren zum Betreiben eines Datenverarbeitungssystems, um schnell eine auf einer Platte gespeicherte Datei wieder zu öffnen. Das Verfahren schließt den Schritt der Erstellung einer Dateiverwaltungstabelle für Speicherplatz ein. Die Tabelle wird erstellt, um Verwaltungsinformation, die sich auf eine Datei bezieht, auf die gerade von der Platte zugegriffen werden soll, zu liefern. Wen die Datei anfangs geöffnet wird, wird die Verwaltungsinformation in die Tabelle eingegeben.
  • Die Erfindung wurde entworfen, um das bekannte Verfahren des Öffnens zu verbessern durch Bereitstellen eines Verfahrens, das Dateien schnell öffnet und das Ausmaß an physikalischer E/A-Aktivität, das mit dem Öffnungsprozeß verbunden ist, verringert.
  • Gemäß der Erfindung wird ein Verfahren bereitgestellt zum Betrieb eines Datenverarbeitungssystems, das einen Hauptspeicher, einen Cache in dem Hauptspeicher und eine Platte besitzt, auf der eine Baumstruktur von Verzeichnissen und Dateien gespeichert ist, wobei jede Datei durch einen Pfad identifiziert wird, der eine Kette von Verzeichnissen einschließlich eines Verzeichnisses enthält, das einen Eintrag darin aufweist, der Informationen enthält, die anzeigen, wo die Datei auf der Platte gespeichert ist, das dadurch gekennzeichnet ist, daß das Verfahren die Schritte umfaßt des:
  • Durchsuchens der Kette von auf der Platte gespeicherten Verzeichnissen als Antwort auf eine einleitende Anforderung zum Öffnen einer ersten Datei, um daraus die Informationen zu lesen, die anzeigen, wo die Datei auf der Platte lokalisiert ist,
  • Speicherns in dem Cache einer Mehrzahl geketteter Einträge einschließlich eines Eintrags für jedes der Verzeichnisse in dem Pfad zu der ersten Datei und eines Eintrages, welcher die Informationen enthält, die anzeigen, wo die Datei auf der Platte gespeichert ist,
  • Durchsuchens der geketteten Einträge als Antwort auf eine nachfolgende Anforderung, die erste Datei zu öffnen, um die Informationen zu lokalisieren, die anzeigen, wo die Datei auf der Platte gespeichert ist,
  • Durchsuchens der Einträge in dem Cache als Antwort auf eine weitere Anforderung, eine zweite Datei zu öffnen, die durch einen Pfad identifiziert ist, der ein oder mehrere Verzeichnisse ebenso wie ein oder mehrere der Verzeichnisse in dem Pfad der ersten Datei einschließt, der Einträge in dem Cache entsprechend den gemeinsamen Verzeichnis sen und anschließenden Lesens solcher weiterer Informationen von der Platte, die notwendig sind, um einen vollständigen Pfad zu der zweiten Datei zu bilden.
  • Ein Ausführungsbeispiel der Erfindung wird jetzt mit Bezugnahme auf die zugehörigen Zeichnungen beschrieben, in denen ist:
  • Fig. 1 ein Schaltbild, das allgemein die Beziehung der Erfindung zu der Umgebung oder dem Stand der Technik verdeutlicht, in der das Verfahren ausgeführt wird,
  • Fig. 2 ein Flußdiagramm der generellen Schritte, die als Antwort auf die Anforderung eines Benutzers nach einer Datei vorkommen,
  • Fig. 3 ein Flußdiagramm für die Auswahl verschiedener Detailprozeduren aus den Hauptprozeduren,
  • Fig. 4 ein Flußdiagramm der Such-Prozedur,
  • Fig. 5 ein Flußdiagramm der Einfüge-Prozedur,
  • Fig. 6 ein Flußdiagramm der Löschanforderungs-Prozedur,
  • Fig. 7 ein Flußdiagramm der Lösch-Prozedur,
  • Fig. 8 ein Flußdiagramm der Aktualisierungs-Prozedur und
  • Fig. 9 ein Flußdiagramm darüber, wie DOS bestimmte Prozeduren der Erfindung aufrufen kann.
  • Es wird auf die Zeichnungen und zuerst auf Fig. 1 Bezug genommen. Ein Datenverarbeitungssystem 10, wie z. B. ein IBM Personal Computer AT enthält einen Prozessor 12, der über einen Bus 14 mit einem Hauptspeicher 16 und einer Plattensteuerung 18 verbunden ist. Die Steuerung ist ihrerseits mit einem Plattenlaufwerk 20 verbunden, das einen Plattenspeicher 22 enthält, der ein übliches Speichermedium aufweist, auf dem Informationsbits aufgezeichnet werden. Während des Betriebs des Systems 10 werden DOS-Prozeduren 24 in den Hauptspeicher 16 geladen oder sind darin resident und werden hauptsächlich dazu benutzt, den Zugriff auf die Information auf der Platte 22 zu steuern. DOS ist mit Systempuffern 26 verbunden, in die oder durch die Informationen zwischen der Platte 22 und dem Hauptspeicher 16 in üblicher Weise übertragen wird.
  • Ebenso wird in den Hauptspeicher 16 geladen und ist dort resident ein Satz von Prozeduren, die SCHNELLÖFFNEN 28 genannt werden, die mit dem Betrieb eines SCHNELLÖFFNEN-Cache 30 verbunden sind, wobei die Einzelheiten der Prozeduren später beschrieben werden. Wenn es mehr als ein Laufwerk in dem System gibt, gibt es eine Anzahl von Caches 30, einen für jedes Laufwerk. Die Platte 22 selbst ist so formatiert, daß sie eine Dateizuordnungstabelle (DZT) 32 enthält und das Stammverzeichnis 34. In Fig. 1 ist auch eine beispielhafte Dateistruktur dargestellt, in der die Datei 40, die als Datei 1 bezeichnet wird, in einem Unterverzeichnis 38 lokalisiert ist, das als VERZ 2 bezeichnet wird, das seinerseits ein Unterverzeichnis des Unterverzeichnisses 36 ist, das als VERZ 1 bezeichnet wird, welches ein Unterverzeichnis des Stammverzeichnisses 34 ist. Ohne Installation der SCHNELLÖFFNEN-Prozeduren 28 arbeitet das System in der üblichen wohlbekannten Weise. SCHNELLÖFFNEN 28 wird durch Initialisieren verschiedener unten beschriebener Variabler installiert und danach beendet, bleibt aber in dem Hauptspeicher 16 resident, um bei Bedarf für die Benutzung verfügbar zu sein.
  • Wie vorher angezeigt, gibt es einen Cache 30 für jedes Plattenlaufwerk in dem System. Jeder Cache enthält einen Block von Information, der bekannt ist als Kennsatz des Laufwerks- Cache. Solch ein Kennsatz enthält verschiedene Felder, deren Bedeutung in Tabelle 1 erläutert wird.
  • Feld Bedeutung
  • 1 Kennsatz der LRU-Kette dieses Laufwerks
  • 2 Ausgleich zum letzten Eintrag der LRU-Kette
  • 3 Zeiger zum ersten Kind in der Eintragskette
  • 4 Zeiger zum Kennsatz des nächsten Laufwerks- Cache
  • 5 LaufwerkIsidentifizierung
  • TABELLE 1 - KENNSATZ DES LAUFWERKS
  • In jedem Cache 30 ist auch eine Anzahl von Verzeichnis- und Dateieinträgen lokalisiert, von denen jeder die Felder der Information, die in Tabelle 2 aufgelistet sind, enthält. Diese Einträge bilden eine gekettete Datenstruktur, die genauer unten beschrieben ist. Die Größe des Cache 30 wird bestimmt durch die gewünschte Anzahl von Einträgen, welche Anzahl durch einen System-Standardwert oder dadurch gewählt werden kann, daß der Benutzer die Anzahl von Einträgen auswählt.
  • Normalerweise sollte die von dem Benutzter gewählte Anzahl größer sein als die tiefste Verschachtelung von Pfadeinträgen in dem Laufwerk.
  • Feld Bedeutung
  • 1 Zeiger zum nächsten LRU-Eintrag
  • 2 Zeiger zum nächsten MRU-Eintrag
  • 3 Zeiger zum Kind
  • 4 Zeiger zum Geschwister
  • 5 Zeiger zum voraufgehenden Knoten
  • 6 Verzeichnis/Datei-Information
  • TABELLE 2 - EINTRAG
  • Wie zu verstehen ist, werden die Einträge in einer Kette in der Weise gewartet, daß, wenn der Cache 30 mit Einträgen gefüllt ist und ein neuer Eintrag hinzugefügt werden muß, der neue Eintrag den am längsten nicht benutzten (LRU = last recently used)-Eintrag im Cache ersetzt. Daher werden die Felder 1 und 2 benutzt, um die Einträge entsprechend dem LRU-, MRU- (most recently used =erst kürzlich benutzt)-Konzept zu ketten. Ein Eintrag wird jeder Datei, die geöffnet wurde, hinzugefügt und jedem Unterverzeichnis, das in dem Pfad zu der Datei eingeschlossen ist. Zwei Dateien oder Verzeichnisse oder Kombinationen davon in dem gleichen Unterverzeichnis werden als auf gleichen Ebenen befindlich angesehen und werden "Geschwister" genannt. Jeder Eintrag, der bin Unterverzeichnis eines anderen oder einer Datei ist, wird ein "Kind" genannt. Für Suchzwecke sind die Eintragungen in dem Cache in einer Baumstruktur durch die Zeigerfelder 3-5 angeordnet. Feld 6 enthält die Information, die dem normalen Verzeichniseintrag zugeordnet ist, der auf den Speichermedien enthalten ist, mit der Ausnahme, daß diese Information in Feld 6 des Namenseintrags eingefügt wird und daher im Hauptspeicher resident ist. Auf solche Information kann daher schnell zugegriffen werden, wenn es nötig ist, eine Datei zu öffnen, für die ein entsprechender Eintrag im Cache 30 vorhanden ist. Die Information für eine Datei ist Dateiname und Erweiterung, Attribute, Zeit des letzten Schreibens, Datum des letzten Schreibens, erste Gruppe in der Datei und die Dateigröße.
  • Es wird jetzt auf die Fig. 2 Bezug genommen. Wenn die Anwendung oder das Benutzerprogramm eine Datei öffnen möchte, wird der bekannte DOS-Aufruf UNTERBRECHEN 21Hex zum Öffnen einer Datei benutzt. Solch ein Aufruf geht an DOS 24 und , wie das vorher angegeben wurde., wird SCHNELLÖFFNEN installiert, um solch eine Unterbrechung abzufangen und auf sie hin tätig zu werden. Die erste Entscheidung besteht natürlich darin, zu bestimmen, ob oder ob nicht SCHNELLÖFFNEN installiert wurde, und dies erfolgt im Schritt 52. Ist das nicht der Fall, dann schreitet die Prozedur entsprechend dem aus dem Stand der Technik bekannten Schritt 54 des Zugreifens auf die Platte fort, um jedes Unterverzeichnis und jede Datei in normaler Weise zu lokalisieren, wonach der Schritt 56 zum Benutzer oder der Anwendung zurückkehrt. Wenn SCHNELLÖFFNEN installiert ist, dann sucht der Schritt 58 die Anforderung in einer Weise, die später im einzelnen beschrieben wird. Wenn ein Fehler vorlag, der während des Prozesses aufgetreten sein kann, zweigt Schritt 60 nach 54 und der Prozeß schreitet fort gemäß dem Prozeß nach dem Stand der Technik. Wenn kein Fehler vorlag, bestimmt Schritt 62, ob der Pfad teilweise oder umgekehrt ob er vollständig gefunden wurde. Wenn er nicht teilweise gefunden wurde, d. h. der gesamte Pfad und der Dateiname wurden gefunden, dann wird die gleiche Information, die im Schritt 54 geliefert wird, dann im Schritt 56 zum Benutzer zurückgemeldet. Wenn die Information nur teilweise gefunden wurde, dann beginnt der Schritt 64, ausgehend von dem Punkt, welche Informationen gefunden wurden, auf die Platte zuzugreifen, um die restlichen Teile des Pfades und den Dateinamen zu lokalisieren. Jeder Teil wird im Schritt 66 eingefügt, und Schritt 68 veranlaßt, daß der Prozeß von Schritt 64 an wiederholt wird, bis das Ende des Pfades oder der Dateiname erreicht ist, zu welchem Zeitpunkt die geeignete Information zum Benutzer zurückgemeldet wird.
  • Es wird auf Fig. 3 Bezug genommen. Der zentrale Teil der Prozedur ist als "Haupt" bekannt und wird benutzt, um zu entscheiden, welche von vier Unterprozeduren zu benutzen sind. Die Unterprozeduren sind bekannt als "Suchen", "Einfügen", "Löschen" und "Aktualisieren". Diese verschiedenen Prozeduren können beispielsweise aufgerufen werden durch Einfügen einer ihnen entsprechenden verschiedenen Zahl in eines der Prozessorregister. In jedem Fall entscheidet der Schritt 70, ob es eine Suchoperation ist. Die Schritte 72, 74 und 76 entscheiden in ähnlicher Weise, ob es eine Einfügungs-, Lösch- oder Aktualisierungsoperation ist. Wenn keine dieser Operationen aufgerufen wird, dann wird ein Fehlersignal zurückgemeldet. Diese verschiedenen Unterprozeduren werden nun mit Bezug auf ihre getrennten Figuren beschrieben.
  • Es wird jetzt auf Fig. 4 Bezug genommen. Entsprechend den Suchprozeduren lokalisiert Schritt 78 zuerst den Cache 30, der dem angeforderten Laufwerk zugeordnet ist. Schritt 80 legt dann die LRU-Kette aus dem Vor-LRU-Puffer fest. Dieser Puffer ist ein logischer Puffer, der benutzt wird, um das baumartig strukturierte Unterverzeichnis beim Warten der LRU-Kette in Ordnung zu halten. Als nächstes bildet der Schritt 82 den Start einer Schleife, in der der aktuelle Knoten der Zeiger ist, und er wird anfänglich gesetzt, um auf den Kennsatz des Laufwerks zu zeigen und der danach gesetzt wird, um auf den Eintrag des aktuellen Knotens zu zeigen. Das aktuelle Geschwister wird auf Null gesetzt und das Verzeichnis oder der Dateiname wird gesucht. Das Ende des Pfades oder der Dateiname wird bestimmt durch Antreffen des ASCII-Wertes Null und Schritt 84 entscheidet dann, ob er erreicht wurde. Wenn nicht, was der übliche Fall ist, wenn eine erste Suche beginnt, dann würde Schritt 86, der den Zeiger von dem aktuellen Eintrag zu dem Kind benutzt, einen Kind-Eintrag des aktuellen Knotens finden. Schritt 88 sieht nach, ob es irgendwelche weiteren Kinder gibt. D.h. ob er der Eintrag des letzten Kindes in der Folge ist. Diese Tatsache würde angezeigt durch ein minus eins in dem Kind-Feld. Der gewünschte Name wird dann mit dem Kind-Dateinnamen verglichen. Wenn solch ein Vergleich als Ergebnis des Schrittes 90 o.k. ist, dann schafft der Schritt 92 den Vor-LRU-Puffer, speichert die Adresse des aktuellen Knotens in dem Puffer und verzweigt zu Schritt 82 zurück. Dieser Prozeß geht weiter, bis der Dateiname gefunden wurde, an dem die Ja- oder positive Bestimmung aus Schritt 84 zu Schritt 94 verzweigt und der Datensatz oder die Information, die gefunden wurde, zum DOS zurückgemeldet werden. Wenn der Schritt 90 in einer negativen Bestimmung resultiert, dann schaut der Schritt 98 auf den Zeiger zu dem Geschwister-Feld, und eine Schleife, die zurück durch die Schritte 96, 90 und 98 verläuft, würde fortlaufend durchlaufen, bis keine weiteren Geschwister mehr übrig sind, zu welchem Zeitpunkt der Schritt 94 zum DOS zurückkehrt. Bei der Rückkehr zu DOS stellt SCHNELLÖFFNEN den Zeiger auf das Verzeichnis oder den Dateinamen ein, der in der von DOS gelieferten Pfad/Dateinamen-Zeichenfolge gefunden wurde. DOS seinerseits schaut auf den Zeiger, um zu bestimmen, ob der ganze Pfad gefunden wurde oder nur ein Teilpfad oder gar nichts. Wenn es mehrere Geschwister gibt, setzt der Schritt 96 den Zeiger für den aktuellen Knoten auf das aktuelle Geschwister.
  • Es wird auf Fig. 5 Bezug genommen. Der Zweck der Einfügungsprozedur besteht darin, ein Verzeichnis oder eine Dateiinformation als einen Eintrag in den Cache einzufügen, basierend auf der Information über den aktuellen Knoten und das aktuelle Geschwister. Schritt 102 macht einen Namenseintrag aus dem Eingang und Schritt 104 holt den nächsten verfügbaren Eintrag. Bis der Cache gefüllt ist, wird der aufgrund der LRU-Liste am längsten nicht benutzte Eintrag der am nächsten verfügbare Eintrag sein, der durch den neueren ersetzt wird. Schritt 106 löscht den Vor-LRU-Puffer in dem Umfang, wie etwas darin ist. Wenn der Zeiger für den aktuellen Geschwister gleich Null ist, dann wird der neue Eintrag durch Schritt 110 installiert als ein Kind unter dem aktuellen Knoten 0 und der Schritt 112 zeichnet solchen Knoten in dem Vor-LRU-Puffer auf. Wenn ein aktuelles Geschwister in Schritt 108 nicht gleich Null ist, dann installiert der Schritt 114 den neuen Eintrag als ein Geschwister des aktuellen Knotens.
  • Es wird auf die Fig. 6 und 7 Bezug genommen. Wenn eine Anwendung oder ein Benutzer fordert, daß eine spezielle Datei gelöscht wird, löscht eine Prozedur nicht nur die Datei auf der Platte in üblicher Weise, sondern löscht ebenso irgendwelche entsprechenden Einträge in dem Cache. Daher läuft der Prozeß als Antwort auf eine Benutzeranforderung in Schritt 116 durch DOS 24 und der Schritt 118 entscheidet, ob SCHNELLÖFFNEN installiert wurde. Wenn nicht, greift der Schritt 122 auf die Platte zu und löscht die Datei, worauf der Schritt 124 zum Benutzer zurückkehrt. Wenn SCHNELLÖFFNEN installiert ist, erfolgt die Löschanforderung 120. Als Antwort auf solch eine Anforderung fragt der Schritt 126 den Cache ab, um zu bestimmen, ob es einen entsprechenden Eintrag gibt oder nicht. Wenn kein Eintrag gefunden wird, wird die Prozedur einfach verlassen. Wenn der Eintrag gefunden wird, wird er von der baumartig strukturierten LRU-Kette durch den Schritt 132 entfernt, und dieser spezielle Eintrag wird an die Spitze der LRU-Kette gesetzt als verfügbar zur Benutzung durch einen neuen Eintrag. Ein Dateieintrag wird zuerst gelöscht und dann irgendwelche Elternverzeichnisse, die nicht irgendeinen Kind- oder Geschwisterzeiger enthalten.
  • Es wird auf die Fig. 8 und 9 Bezug genommen. Dort sind bestimmte Funktionen in die SCHNELLÖFFNEN-Prozeduren eingebaut, die direkt durch DOS aufgerufen werden können, um bestimmte Hilfsfunktionen für Funktionen durchzuführen, die DOS liefert. Die DOS-Anforderungen sind zusätzlich zu den Funktionen des Schließens einer Datei, des Schreibens von Null-Bytes in eine Datei oder der Knotenbildung, und die Schritte 142, 144 und 146 bestimmen, ob solche Funktionen erforderlich sind und verzweigen dann zu den Aktualisierungsschritten 134-140. Die positiven Ergebnisse der Schritte 136-140 aktualisieren einen Verzeichniseintrag, eine Gruppennummer, die einer Datei zugeordnet ist, und löschen einen Eintrag.
  • In der vorhergehenden Diskussion wurde der Vor-LRU-Puffer erwähnt, und dieser wird nun mit Bezug auf den LRU-Puffer erläutert, die beide die Verwendung der LRU- und der MRU- Zeiger in den Einträgen einschließen. Wenn der Prozeß einen Pfad durchläuft, geht er von dem Stammverzeichnis aus und durch irgendwelche Unterverzeichnisse, bis er den Dateinamen erreicht, und ein Vor-LRU-Puffer entsprechend der Reihenfolge geschaffen wird, in der auf die verschiedenen Knoten zugegriffen wird. Daher ist in einem Beispiel einer Datei, auf die zugegriffen wird oder die spezifiziert ist durch C:VERZ 1VERZ2Dateil die Reihenfolge der Einträge das Stammverzeichnis, VERZ 1, VERZ 2 und DATEI 1. Diese Reihenfolge schafft ein Problem in dem Ausmaß, daß das Stammverzeichnis der am längsten nicht benutzte Eintrag ist, und sollte solch ein Eintrag für das Ersetzen gelöscht werden, dann würde der Zugriff auf die restlichen Einträge abgeschnitten. Dieses Problem wird durch Benutzen des Vor-LRU- Puffers vermieden und durch Neuordnen der Einträge, nachdem der Pfad einmal festgelegt ist, um einen LRU-Puffer zu schaffen, in dem der Dateiname als der am längsten nicht benutzte Eintrag erscheint, und daher bei Ersatz der Dateiname wäre und nicht irgendeiner der älteren Verzeichnisse, die anfänglich ersetzt wurden.

Claims (5)

1. Verfahren zum Betreiben eines Datenverarbeitungssystems mit einem Hauptspeicher, einem Cache-Speicher in dem Hauptspeicher und mit einer Platte, in der eine Baumstruktur von Verzeichnissen und Dateien gespeichert ist, wobei jede Datei durch einen Pfad identifiziert ist, der eine Kette von Verzeichnis sen einschließlich eines Verzeichnisses mit einem Eintrag in demselben aufweist, der Informationen enthält, die anzeigen, wo die Datei auf der Platte gespeichert ist, dadurch gekennzeichnet, daß das Verfahren die folgenden Schritte umfaßt:
Suchen durch die Kette von auf der Platte gespeicherten Verzeichnis sen entsprechend einer ursprünglichen Anforderung zum Eröffnen einer ersten Datei, um aus ihr die Informationen zu lesen, die anzeigen, wo die Datei auf der Platte liegt
Speichern einer Mehrzahl geketteter Einträge einschließlich eines Eintrags für jedes der Verzeichnisse in dem Pfad zu der ersten Datei und eines Eintrags, welcher die Informationen enthält, die anzeigen, wo die Datei auf der Platte gespeichert ist, in dem Cache-Speicher,
Suchen durch die geketteten Einträge, um die Informationen zu lokalisieren, die anzeigen, wo die Datei auf der Platte gespeichert ist, entsprechend einer nachfolgenden Anforderung zum Eröffnen der ersten Datei
Suchen durch die Einträge in dem Cache-Speicher, welche den gemeinsamen Verzeichnis sen entsprechen entsprechend einer zweiten Anforderung zum Eröffnen einer zweiten Datei, die durch einen Pfad identifiziert ist, der ein oder mehrere Verzeichnisse ebenso wie ein oder mehrere der Verzeichnisse in dem Pfad der ersten Datei aufweist und anschließendes Lesen solcher weiteren Informationen aus der Platte, wie es notwendig ist, um einen vollständigen Pfad zu der zweiten Datei zu bilden.
2. Verfahren nach Anspruch 1, bei welchem das System eine Mehrzahl von Plattenlaufwerken und eine Mehrzahl den Plattenlaufwerken entsprechender Cache-Speicher aufweist, welches der folgende Schritt umfaßt:
Einbeziehen eines ein unterschiedliches der Laufwerke identifizierenden Laufwerkvorsatzes in jedem Cache-Speicher und bei welchem
das Suchen entsprechend der nachfolgenden Anforderung zum Eröffnen der ersten Datei folgendes einschließt: der vorausgehende Schritt des Zugreifens auf zumindest einen der Laufwerkvorsätze, um den Cache-Speicher zu lokalisieren, welcher die geketteten Einträge enthält.
3. Verfahren nach Anspruch 1, bei welchem der Cache-Speicher eine Größe für eine vorbestimmte Anzahl von Einträgen aufweist und welches die folgenden Schritte umfaßt:
Füllen des Cache-Speichers mit Einträgen, welche den verschiedenen Dateien entsprechen, entsprechend einer Mehrzahl von Anforderungen zum Eröffnen einer Mehrzahl verschiedener Dateien,
Speichern eines Protokolls jeder Datei in dem Cache-Speicher, das anzeigt, welche Datei LRU war und
Löschen von Einträgen, welche der LRU-Datei entsprechen und Hinzufügen von Einträgen, welche der zusätzlichen Datei entsprechen, entsprechend einer Anforderung zum Eröffnen einer zusätzlichen Datei.
4. Verfahren nach irgend einem vorgehenden Anspruch, welches folgenden Schritt umfaßt:
Speichern von Zeigern in den Einträgen, um eine Kette von Einträgen zu erzeugen, die aus einer am längsten benutzten Datei zu einer LRU-Datei geordnet sind.
5. Verfahren nach Anspruch 4, welches den folgenden Schritt umfaßt:
Erzeugen eines oder mehrerer neuer Einträge aus den weiteren Informationen und Hinzufügen der neuen Einträge dem Cache- Speicher, um in ihm einen vollständigen Pfad von Einträgen für eine zweite Datei zu bilden.
DE8787118540T 1987-03-30 1987-12-15 Verfahren zum schnellen oeffnen von mit pfadnamen identifizierten plattendateien. Expired - Fee Related DE3780807T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/032,210 US5008820A (en) 1987-03-30 1987-03-30 Method of rapidly opening disk files identified by path names

Publications (2)

Publication Number Publication Date
DE3780807D1 DE3780807D1 (de) 1992-09-03
DE3780807T2 true DE3780807T2 (de) 1993-03-11

Family

ID=21863700

Family Applications (2)

Application Number Title Priority Date Filing Date
DE8787118540T Expired - Fee Related DE3780807T2 (de) 1987-03-30 1987-12-15 Verfahren zum schnellen oeffnen von mit pfadnamen identifizierten plattendateien.
DE19873743890 Granted DE3743890A1 (de) 1987-03-30 1987-12-23 Verfahren zum schnellen eroeffnen von plattendateien

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE19873743890 Granted DE3743890A1 (de) 1987-03-30 1987-12-23 Verfahren zum schnellen eroeffnen von plattendateien

Country Status (19)

Country Link
US (1) US5008820A (de)
EP (1) EP0284664B1 (de)
JP (1) JPS63244243A (de)
KR (1) KR940005775B1 (de)
CN (1) CN1020014C (de)
AT (1) ATE78943T1 (de)
BE (1) BE1001068A4 (de)
BR (1) BR8801438A (de)
CA (1) CA1303747C (de)
DE (2) DE3780807T2 (de)
ES (1) ES2033786T3 (de)
FR (1) FR2613505A1 (de)
GB (1) GB2204161B (de)
GR (1) GR3005888T3 (de)
HK (1) HK33892A (de)
IT (1) IT8819948A0 (de)
MY (1) MY103353A (de)
PH (1) PH27427A (de)
SG (1) SG5292G (de)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5649205A (en) * 1989-07-07 1997-07-15 Martins; Augusto Baronio File retrieval system
US5276874A (en) * 1989-08-11 1994-01-04 Digital Equipment Corporation Method for creating a directory tree in main memory using an index file in secondary memory
US5371885A (en) * 1989-08-29 1994-12-06 Microsoft Corporation High performance file system
US5150473A (en) * 1990-01-16 1992-09-22 Dantz Development Corporation Data storage format for addressable or sequential memory media
JPH03296841A (ja) * 1990-04-16 1991-12-27 Nec Corp キャッシュ制御方式
JP2746734B2 (ja) * 1990-06-08 1998-05-06 富士通株式会社 ストリームファイルに対してのアクセス処理方式
CA2045788A1 (en) * 1990-06-29 1991-12-30 Kadangode K. Ramakrishnan Cache arrangement for file system in digital data processing system
US5241672A (en) * 1991-04-01 1993-08-31 Xerox Corporation System using the storage level of file updates in nonvolatile memory to trigger saving of RAM to disk and using the file updates to reboot after crash
JPH06175914A (ja) * 1992-09-21 1994-06-24 Eastman Kodak Co メモリ管理装置
US5422762A (en) * 1992-09-30 1995-06-06 Hewlett-Packard Company Method and apparatus for optimizing disk performance by locating a file directory on a middle track and distributing the file allocation tables close to clusters referenced in the tables
US5701463A (en) * 1994-09-09 1997-12-23 Cheyenne Advanced Technology Limited Method of replacing the identity of a file with another as part of a file open request in a computer system
US5590320A (en) * 1994-09-14 1996-12-31 Smart Storage, Inc. Computer file directory system
DE69535330T2 (de) * 1994-09-14 2007-05-31 Intel Corporation, Santa Clara Caching-System mit Explitzer Folgeliste
US5644736A (en) * 1995-05-25 1997-07-01 International Business Machines Corporation System and method for selecting components of a hierarchical file structure
US5765192A (en) * 1996-05-01 1998-06-09 Sun Microsystems, Inc. Method and computer program product to reuse directory search handles
US5819298A (en) * 1996-06-24 1998-10-06 Sun Microsystems, Inc. File allocation tables with holes
US5924116A (en) * 1997-04-02 1999-07-13 International Business Machines Corporation Collaborative caching of a requested object by a lower level node as a function of the caching status of the object at a higher level node
US6094706A (en) * 1998-03-02 2000-07-25 International Business Machines Corporation Caching in a data processing system using the pigeon hole principle
US6151595A (en) * 1998-04-17 2000-11-21 Xerox Corporation Methods for interactive visualization of spreading activation using time tubes and disk trees
US6654761B2 (en) 1998-07-29 2003-11-25 Inxight Software, Inc. Controlling which part of data defining a node-link structure is in memory
US6216199B1 (en) * 1999-08-04 2001-04-10 Lsi Logic Corporation Hardware mechanism for managing cache structures in a data storage system
AU771314B2 (en) * 1999-11-10 2004-03-18 Koninklijke Philips Electronics N.V. Record carrier, device for playing back a record carrier, method for playing back a record carrier, device for recording a record carrier and method for recording a record carrier
DE19960114A1 (de) * 1999-12-08 2001-06-13 Heidenhain Gmbh Dr Johannes Verfahren zum Speichern von Daten in einer Datei eines Datenspeichersystems
US6643754B1 (en) * 2000-02-15 2003-11-04 International Business Machines Corporation System and method for dynamically allocating computer memory
US6529897B1 (en) 2000-03-31 2003-03-04 International Business Machines Corporation Method and system for testing filter rules using caching and a tree structure
US6928466B1 (en) 2000-09-28 2005-08-09 Emc Corporation Method and system for identifying memory component identifiers associated with data
TWI230858B (en) * 2000-12-12 2005-04-11 Matsushita Electric Ind Co Ltd File management method, content recording/playback apparatus and content recording program
DE10162046A1 (de) * 2001-12-17 2003-06-26 Thomson Brandt Gmbh Wiedergabegerät mit einem Zwischenspeicher zum Verringern der mittleren Zugriffszeit auf einen Informationsträger
EP1400970A1 (de) * 2002-09-10 2004-03-24 Siemens Aktiengesellschaft Verfahren und Gerät zur Steuerung einer Speicheranordnung für Kraftfahrzeuge
US7287046B2 (en) * 2002-09-30 2007-10-23 Emc Corporation Method and system of compacting sparse directories in a file system
JP4543363B2 (ja) * 2002-12-18 2010-09-15 ネッツエスアイ東洋株式会社 コンピュータのセキュリティシステム
KR100962763B1 (ko) * 2003-01-20 2010-06-10 엘지전자 주식회사 데이터 방송 파일 시스템 처리 방법
US7873685B2 (en) * 2004-05-13 2011-01-18 Pixar System and method for flexible path handling
WO2006006781A1 (en) * 2004-07-12 2006-01-19 Samsung Electronics Co., Ltd. Method and apparatus for searching rights objects stored in portable storage device using object location data
JP4659537B2 (ja) * 2005-07-05 2011-03-30 株式会社日立製作所 ファイル提供方法、ストレージ装置及びファイル提供プログラム
KR101130090B1 (ko) * 2010-04-05 2012-03-28 주식회사 안철수연구소 단말 장치 및 상기 단말 장치의 파일 배포처 확인 방법
CN102279734A (zh) * 2010-06-12 2011-12-14 环旭电子股份有限公司 自动映像数据的嵌入式系统及其方法
AT510716B1 (de) * 2011-04-08 2012-06-15 Albrecht Dipl Ing Kadlec Reiner allokations-cache für echtzeitsysteme
CN111054082B (zh) * 2019-11-29 2023-10-13 珠海金山数字网络科技有限公司 Unity资源数据集编码的方法

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3905023A (en) * 1973-08-15 1975-09-09 Burroughs Corp Large scale multi-level information processing system employing improved failsaft techniques
GB1504112A (en) * 1976-03-17 1978-03-15 Ibm Interactive enquiry systems
US4215402A (en) * 1978-10-23 1980-07-29 International Business Machines Corporation Hash index table hash generator apparatus
US4277826A (en) * 1978-10-23 1981-07-07 Collins Robert W Synchronizing mechanism for page replacement control
US4598357A (en) * 1980-11-14 1986-07-01 Sperry Corporation Cache/disk subsystem with file number for recovery of cached data
US4489378A (en) * 1981-06-05 1984-12-18 International Business Machines Corporation Automatic adjustment of the quantity of prefetch data in a disk cache operation
US4533995A (en) * 1981-08-03 1985-08-06 International Business Machines Corporation Method and system for handling sequential data in a hierarchical store
US4530055A (en) * 1982-03-03 1985-07-16 Sperry Corporation Hierarchical memory system with variable regulation and priority of writeback from cache memory to bulk memory
JPS6058492B2 (ja) * 1982-06-26 1985-12-20 富士通株式会社 デ−タベ−ス検索方式
JP2539347B2 (ja) * 1982-09-13 1996-10-02 株式会社日立製作所 フアイル管理方法
US4571674A (en) * 1982-09-27 1986-02-18 International Business Machines Corporation Peripheral storage system having multiple data transfer rates
EP0117906B1 (de) * 1983-02-03 1990-01-17 International Business Machines Corporation Dateiorganisation mit Schlüsselzugriff
JPS59153251A (ja) * 1983-02-18 1984-09-01 Toshiba Corp デイスクキヤツシユシステム
JPS59163659A (ja) * 1983-03-07 1984-09-14 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション ワ−ド・プロセシング・システムにおけるデ−タ・セツトのアクセス方式
US4571700A (en) * 1983-06-16 1986-02-18 International Business Machines Corporation Page indexing system for accessing sequentially stored data representing a multi-page document
US4603380A (en) * 1983-07-01 1986-07-29 International Business Machines Corporation DASD cache block staging
JPS60254325A (ja) * 1984-05-31 1985-12-16 Fujitsu Ltd デ−タ検索キ−制御方式
JPS61175838A (ja) * 1985-01-31 1986-08-07 Ricoh Co Ltd デ−タ処理方式
JPS61228538A (ja) * 1985-04-01 1986-10-11 Nec Corp フアイル管理方式
JPS61271547A (ja) * 1985-05-27 1986-12-01 Mitsubishi Electric Corp デイスクフアイルアクセス方式
EP0203601B1 (de) * 1985-05-29 1992-08-05 Kabushiki Kaisha Toshiba Cache-Anordnung mit einem LRU-Verfahren und Magnetscheibensteuereinrichtung mit einer solchen Anordnung
US4779189A (en) * 1985-06-28 1988-10-18 International Business Machines Corporation Peripheral subsystem initialization method and apparatus
US4761737A (en) * 1986-01-16 1988-08-02 International Business Machines Corporation Method to automatically increase the segment size of unix files in a page segmented virtual memory data processing system
US4827462A (en) * 1987-03-26 1989-05-02 International Business Machines Corporation Modular data storage directories for large-capacity data storage units

Also Published As

Publication number Publication date
GB8728924D0 (en) 1988-01-27
EP0284664B1 (de) 1992-07-29
JPH0519175B2 (de) 1993-03-16
PH27427A (en) 1993-06-21
DE3743890A1 (de) 1988-10-27
ATE78943T1 (de) 1992-08-15
FR2613505A1 (fr) 1988-10-07
EP0284664A3 (en) 1989-03-15
GB2204161A (en) 1988-11-02
DE3743890C2 (de) 1989-03-23
SG5292G (en) 1992-03-20
CN88100793A (zh) 1988-10-19
EP0284664A2 (de) 1988-10-05
HK33892A (en) 1992-05-15
CA1303747C (en) 1992-06-16
CN1020014C (zh) 1993-03-03
BR8801438A (pt) 1988-11-01
GR3005888T3 (de) 1993-06-07
KR940005775B1 (ko) 1994-06-23
IT8819948A0 (it) 1988-03-25
BE1001068A4 (fr) 1989-06-27
DE3780807D1 (de) 1992-09-03
MY103353A (en) 1993-06-30
KR880011665A (ko) 1988-10-29
ES2033786T3 (es) 1993-04-01
US5008820A (en) 1991-04-16
GB2204161B (en) 1991-09-18
JPS63244243A (ja) 1988-10-11

Similar Documents

Publication Publication Date Title
DE3780807T2 (de) Verfahren zum schnellen oeffnen von mit pfadnamen identifizierten plattendateien.
DE69130312T2 (de) Dateisystem mit Schreib/Lesespeicher und einmaligen Schreib- und mehrmaligen Lese-speicher
DE69229982T2 (de) Verfahren und Gerät um ein rechnergestütztes Dateiensystem zu betreiben
DE69702568T2 (de) Mehrstufiges Cache-System für Massenspeichereinrichtung und Verfahren zum Einrichten eines solchen Systems
DE69031491T2 (de) Hypertextdatenverarbeitungssystem und Verfahren
DE69032517T2 (de) Verfahren und System zum dynamischen Identifizieren von Datenträgern in einem Gestaltungsdateisystem
DE69801112T2 (de) Dateispeicherverwaltungssystem für schnappschusskopieroperationen
DE69112694T2 (de) Verfahren zum Betrieb eines Datenverarbeitungssystems zur Ausführung von Datenbanktransaktionen.
DE68927621T2 (de) Echtzeitdatenbasis
DE69623227T2 (de) Verfahren und System zur Berechnung von Dateinamen mit hoher Wahrscheinlichkeit der Eindeutigkeit
DE3856090T2 (de) Aus Einheitsfunktionsgruppen aufgebaute Dateienspeicherungszuordnungstabellen für Dateienspeichereinheiten grosser Kapazität
DE69516538T2 (de) Speicherung von rechnerdaten
DE69332672T2 (de) Verfahren und System zum Einbinden von Änderungen in hierarchisch strukturierten Daten
DE69636761T2 (de) Speichern und wiederauffinden von geordneten schlüsselmengen in einem kompakten 0-kompletten baum
DE69700574T2 (de) Verfahren zum Cache-Speichern von Netzwerk- und CD-ROM-Zugriffen unter Verwendung einer lokalen Festplatte
DE69636192T2 (de) Datenmigrationssystem und -verfahren unter verwendung von undichten dateien
DE3784190T2 (de) Eintragung eines datenbasisindex in das journal zur verbesserten rueckstellung.
DE69431186T2 (de) Verfahren und Dateisystem zur Zuordnung von Datei-Blöcken zu Speicherplatz in einem RAID-Plattensystem
DE69333906T2 (de) Verfahren und System für die Dateienverwaltung mit einem schnell löschbaren, programmierbaren ROM
DE69601850T2 (de) Transaktionsgerättreiberverfahren für ein Dateiensystem mit Logging-Möglichkeit
DE69229121T2 (de) Verfahren und vorrichtung zur herstellung einer cd-rom-disc zur verwendung mit merhfachbetriebsystemen
DE69530405T2 (de) Schnappschuss von auf einem massenspeichersystem gespeicherten daten
DE60213867T2 (de) Vorrichtung zur verwaltung von datenreplikation
DE69802437T2 (de) Feinkörniger übereinstimmungsmechanismus für optimistische parallelsteuerung mit verriegelungsgruppen
DE3854667T2 (de) Datenbasissystem mit einer Baumstruktur.

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee