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
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 230000015654 memory Effects 0.000 claims abstract description 18
- 239000000872 buffer Substances 0.000 description 14
- 230000004044 response Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 102100038804 FK506-binding protein-like Human genes 0.000 description 3
- 101001031402 Homo sapiens FK506-binding protein-like Proteins 0.000 description 3
- 101100443272 Arabidopsis thaliana DIR2 gene Proteins 0.000 description 2
- 241000819038 Chichester Species 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000004886 head movement Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9017—Indexing; Data structures therefor; Storage structures using directory or table look-up
- G06F16/902—Indexing; 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
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database 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
- 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
- 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.
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)
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)
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 |
-
1987
- 1987-03-30 US US07/032,210 patent/US5008820A/en not_active Expired - Fee Related
- 1987-12-09 FR FR8717530A patent/FR2613505A1/fr not_active Withdrawn
- 1987-12-10 GB GB8728924A patent/GB2204161B/en not_active Revoked
- 1987-12-15 EP EP87118540A patent/EP0284664B1/de not_active Expired - Lifetime
- 1987-12-15 AT AT87118540T patent/ATE78943T1/de not_active IP Right Cessation
- 1987-12-15 ES ES198787118540T patent/ES2033786T3/es not_active Expired - Lifetime
- 1987-12-15 DE DE8787118540T patent/DE3780807T2/de not_active Expired - Fee Related
- 1987-12-16 BE BE8701441A patent/BE1001068A4/fr not_active IP Right Cessation
- 1987-12-23 DE DE19873743890 patent/DE3743890A1/de active Granted
-
1988
- 1988-02-04 CA CA000558110A patent/CA1303747C/en not_active Expired - Fee Related
- 1988-02-17 JP JP63032993A patent/JPS63244243A/ja active Granted
- 1988-02-19 PH PH36536A patent/PH27427A/en unknown
- 1988-02-27 CN CN88100793A patent/CN1020014C/zh not_active Expired - Lifetime
- 1988-02-29 KR KR1019880002095A patent/KR940005775B1/ko not_active IP Right Cessation
- 1988-03-07 MY MYPI88000225A patent/MY103353A/en unknown
- 1988-03-25 IT IT8819948A patent/IT8819948A0/it unknown
- 1988-03-29 BR BR8801438A patent/BR8801438A/pt not_active IP Right Cessation
-
1992
- 1992-01-22 SG SG52/92A patent/SG5292G/en unknown
- 1992-05-07 HK HK338/92A patent/HK33892A/xx unknown
- 1992-10-05 GR GR920402219T patent/GR3005888T3/el unknown
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 |