DE3743890A1 - Verfahren zum schnellen eroeffnen von plattendateien - Google Patents
Verfahren zum schnellen eroeffnen von plattendateienInfo
- Publication number
- DE3743890A1 DE3743890A1 DE19873743890 DE3743890A DE3743890A1 DE 3743890 A1 DE3743890 A1 DE 3743890A1 DE 19873743890 DE19873743890 DE 19873743890 DE 3743890 A DE3743890 A DE 3743890A DE 3743890 A1 DE3743890 A1 DE 3743890A1
- Authority
- DE
- Germany
- Prior art keywords
- file
- entry
- files
- drive
- main memory
- 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.)
- Granted
Links
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 ein Verfahren zum
Eröffnen von Dateien nach dem Oberbegriff des
Anspruchs 1.
Die Erfindung wurde entworfen als eine Verbesserung
eines bekannten, kommerziell verfügbaren Systems von
einem Typ, in welchem Hardware, wie z. B. in IBM PC,
unter einem Plattenbetriebssystem (Disk Operating
System, DOS) betrieben wird, und in welchem Dateien
auf Festplatten unter Verwendung von Inhaltsverzeich
nissen mit Baumstruktur und Pfadnamen gespeichert
werden. Die Information ist auf einer Platte gemäß
eines vorbestimmten Musters von Zylindern und Sektoren
gespeichert, wobei jeder Sektor eine vorbestimmte Zahl
von Bytes enthält. Um zu einem gewünschten Sektor
zuzugreifen, muß der Lese/Schreib-Kopf zunächst zu dem
Zylinder bewegt werden, der den gewünschten Sektor
enthält, und die Platte muß am Kopf vorbei bewegt
werden, bis der gewünschte Sektor erreicht ist, dann
wird der Sektor gelesen und sein Inhalt in einem
Puffer gespeichert. Betrachtet man den gesamten
Zeitaufwand, der notwendig ist, um auf Daten einer
Platte zuzugreifen, dann sieht man, daß die haupt
sächliche Verzögerung durch die physische Bewegung des
Kopfes zustande kommt. Wo eine Anwendung eine große
Eingabe/Ausgabe (E/A) Aktivität erfordert, ist es
wünschenswert, die Kopfbewegung soweit wie möglich zu
reduzieren.
Dateien werden auf der Platte in einer Gruppe
(Cluster) oder in Gruppen von Sektoren gespeichert,
wobei jedes Cluster eine vorbestimmte Zahl von Sekto
ren umfaßt. Jedes Cluster hat eine eindeutige, eigene
Startadresse. Die Orte, an denen die Dateien auf einer
Platte gespeichert sind, werden mittels einer Dateizu
ordnungstabelle (FAT, File Allocation Table), die
ihrerseits auf der Platte gespeichert ist, regi
striert. Jede Position in der FAT ist einem anderen
Cluster zugeordnet und enthält einen Eintrag, welcher
besagt, daß keine weiteren Cluster mit einer Datei
verbunden sind, oder welcher auf das nächste Cluster
einer Datei zeigt. Kleine Dateien sind in einem
einzigen Cluster enthalten. Lange Dateien sind in
Clustern enthalten, die miteinander verkettet sind.
Dateien werden durch die Benutzung von Inhaltsver
zeichnissen mit Baumstruktur aufgefunden. Jede Platte
enthält ein Stamm(inhalts)verzeichnis, viele Un
ter(inhalts)verzeichnisse und eine Vielzahl von
Dateien. Eine gegebene Datei mag sich am Ende eines
Pfades, der durch das Stammverzeichnis und mehrere
Unterverzeichnisse geht, befinden. Jedes Verzeichnis
enthält Einträge über zusätzliche Verzeichnisse und
Dateien. Eine spezielle Datei kann durch die Angabe
von Laufwerk, Pfad und Dateinamen identifiziert
werden; z. B. C:Verz 1/Verz 2/Datei 1 identifiziert einen
Dateinamen Datei 1, der sich in einem Verzeichnis Verz 2
befindet, welches ein Unterverzeichnis von Verz 1 ist
und darin aufgeführt wird, wobei Verz 1 ein Unterver
zeichnis vom Stammverzeichnis des Laufwerks C ist und
darin aufgeführt wird.
Wenn eine Datei eröffnet wird, ist es notwendig, auf
das Laufwerk zuzugreifen und durch alle Verzeichnisse
zu suchen, die in dem Pfad angegeben sind, um das
Verzeichnis zu finden, das den Eintrag des Dateinamens
enthält. In einem letzteren Verzeichnis werden alle
Einträge und Dateinamen gesucht, bis der gewünschte
Dateiname gefunden ist. Wenn eine Datei vorher noch
nicht eröffnet wurde, dann wird es keinen Eintrag
geben und darum müssen Einträge gemacht werden, bevor
eine Datei benutzt werden kann. Wenn die Datei vorher
eröffnet wurde, dann ist im Eintrag des Verzeichnis
ses, in welchem der Dateinahme aufgeführt ist, ein
Index in der FAT eingetragen, der dem Cluster ent
spricht, bei dem die Datei beginnt. Während einer
solchen Eröffnungsprozedur müssen physische E/A
Aktivitäten vorgenommen werden, um auf das Stammver
zeichnis und jedes Unterverzeichnis zuzugreifen, und
um durch eine lange Liste von Dateinamen zu suchen. In
einigen Anwendungen müssen dieselben Dateien mehrfach
im Lauf eines gegebenen Programms eröffnet werden,
wobei ein relativ großer Zeitverlust entstehen kann,
weil jedes Eröffnen mit viel E/A Aktivität verbunden
ist.
Die Erfindung, wie sie in den Ansprüchen gekennzeich
net ist, stellt sich daher die Aufgabe, ein Verfahren
gemäß dem Oberbegriff von Anspruch 1 bereitzustel
len, bei dem die mit dem Eröffnen einer Datei verbun
dene physische E/A Aktivität sehr reduziert wird und
eine anfänglich bereits einmal eröffnete Datei später
schnell eröffnet werden kann.
Diese Aufgabe wird durch die in Anspruch 1 genannten
Maßnahmen gelöst. Die Unteransprüche betreffen weitere
Ausgestaltungen der Erfindung.
Kurz gesagt wird diese Aufgabe gelöst, indem in einem
Cachebereich des Hauptspeichers die Geschichte der
Dateibenutzungen erzeugt und aufrechterhalten (gespei
chert) wird. Jedesmal wenn auf ein Verzeichnis oder
eine Datei zugegriffen werden soll, dann wird diese
Geschichte überprüft, und wenn sich die zum Eröffnen
erforderliche Information im Cache befindet, dann wird
die Geschichte direkt benutzt, ohne daß ein weiterer
Suchprozeß über die Baumstruktur nach einem Verzeich
nis oder Dateinamen notwendig wäre, der mit physischen
E/A Aktivitäten verbunden sein könnte. Durch Festhal
ten in einem Cachebereich des Hauptspeichers wird auf
solche Informationen mit den hohen Geschwindigkeiten
des Hauptspeichers zugegriffen, und es sind damit
nicht die niedrigeren Geschwindigkeiten der physischen
E/A Aktivitäten eines Plattenzugriffs verbunden.
Es ist ein Vorteil des erfindungsgemäßen Verfahrens,
daß der Zeitverlust beim Eröffnen einer früher schon
einmal eröffneten Datei sehr klein ist. Es ist ein
weiterer Vorteil, daß beim Eröffnen einer Datei nicht
mehr durch alle Verzeichnisse eines Plattenlaufwerks
und durch viele Dateinamen gesucht werden muß, wenn zu
dieser Datei kurz vorher zugegriffen wurde. Diese
Vorteile gelten insbesonders auch für verschachtelte
Dateien.
Im folgenden Ausführungsbeispiel wird auf die
Abb. 1 bis 9 Bezug genommn. Hierbei bedeutet
Fig. 1 ein schematisches Diagramm, in welchem
in allgemeiner Weise die Beziehung der Er
findung zur Umgebung oder zum Stand der
Technik, in welchem das erfindungsgemäße
Verfahren ausgeführt wird, dargestellt ist;
Fig. 2 ein Flußdiagramm der allgemeinen
Schritte der Erfindung, die in Antwort auf
eine Benutzeranforderung vorgenommen werden;
Fig. 3 ein Flußdiagramm für die Auswahl von
verschiedenen Unterprozeduren aus den
Hauptprozeduren;
Fig. 4 ein Flußdiagramm der Prozedur
"Nachschlagen";
Fig. 5 ein Flußdiagramm der Prozedur
"Einfügen";
Fig. 6 ein Flußdiagramm der Prozedur
"Benutzeranforderung löschen";
Fig. 7 ein Flußdiagramm der Prozedur "Löschen";
Fig. 8 ein Flußdiagramm der Prozedur
"Fortschreiben";
Fig. 9 ein Flußdiagramm, das zeigt, wie DOS
verschiedene Prozeduren der Erfindung
aufrufen kann.
Im folgenden wird auf Fig. 1 Bezug genommen. Ein
Datenverarbeitungssystem 10, wie z. B. ein IBM PC AT,
enthält einen Prozessor 12, der über eine Daten
sammelleitung (Bus) 14 mit einem Hauptspeicher 16 und
einer Plattensteuereinheit 18 verbunden ist. Die
Plattensteuereinheit ihrerseits ist mit einem Platten
laufwerk 20 verbunden, welche eine Platte 22 enthält,
die ein übliches Speichermedium zur Aufzeichnung von
Informationsbits hat. Während des Betriebs des Systems
10 werden DOS Prozeduren 24 den Hauptspeicher 16
geladen oder sind dort resident. Diese Prozeduren
werden hauptsächlich dazu benutzt, um den Zugriff zu
den Informationen auf der Platte 22 zu steuern. Zu DOS
gehören Systempuffer 26, in welche oder über welche
Informationen zwischen der Platte 22 und dem Haupt
speicher 16 in der üblichen Art und Weise übertragen
werden.
Darüber hinaus wird ein Satz von Prozeduren mit Namen
"Schnell-Eröffnen" 28, die dem Betrieb des Cache 30
"Schnell-Eröffnen" zugeordnet sind, in den Hauptspei
cher 16 geladen und verbleiben resident in ihm. Die
Details dieser Prozduren werden weiter unten be
schrieben. Wenn es mehr als ein Laufwerk in dem System
gibt, dann gibt es eine entsprechende Anzahl von
Caches 30, einen für jedes Laufwerk. Die Platte 22
selbst wird so formatiert, so daß sie eine Dateizu
ordnungstabelle (FAT) 32 und ein Stamminhaltsverzeich
nis 34 enthält. In Fig. 1 ist auch ein Beispiel einer
Dateienstruktur dargestellt, in welcher Datei 40 mit
Namen Datei 1 in einem Unterverzeichnis 38 mit Namen
Verz 2 enthalten ist, welches seinerseits ein Unterver
zeichnis von Unterverzeichnis 36 mit Namen Verz 1 ist,
das ein Unterverzeichnis des Stammverzeichnisses 34
ist. Ohne Installation der Prozdur Schnell-Eröffnen
28 arbeitet das System in der üblichen bekannten Art
und Weise. Die Prozdur Schnell-Eröffnen 28 wird in
stalliert, indem verschiedene Variable, die weiter
unten beschrieben werden, initialisiert werden, und
sie wird danach beendet, verbleibt aber resident im
Hauptspeicher 16, um bei Bedarf für die Benutzung
verfügbar zu sein.
Wie bereits erwähnt, gibt es einen Cache 30 für jedes
Plattenlaufwerk im System. Jeder Cache enthält einen
Informationsblock, der als Kopf des Laufwerkcaches
bekannt ist. Ein solcher Kopf enthält verschiedene
Felder, deren Bedeutung in Tabelle 1 angegeben ist.
FeldBedeutung
1Kopf der LRU-Kette von diesem Laufwerk
2Abstand (Offset) zum letzten Eintrag der
LRU-Kette
3Zeiger zum ersten Kind in der Kette der
Einträge
4Zeiger zum Kopf des nächsten Laufwerkscaches
5Laufwerkkennzeichnung
Darüber hinaus sind in jedem Cache 30 eine Anzahl von
Verzeichnis- und Dateieinträgen gespeichert, von denen
jeder die Informationsfelder enthält, die in Tabelle 2
aufgeführt sind. Diese Einträge bilden eine verkettete
Datenstruktur, die weiter unten ausführlicher be
schrieben wird. Die Größe des Caches 30 wird durch die
gewünschte Anzahl von Einträgen bestimmt. Diese Anzahl
kann gewählt werden durch einen vom System bestimmten
Standardwert oder durch den Benutzer, der die Anzahl
FeldBedeutung
1Zeiger zum nächsten LRU-Eintrag
2Zeiger zum nächsten MRU-Eintrag
3Zeiger zum Kind
4Zeiger zum Mitkind
5Zeiger zum vorherigen Knoten
6Verzeichnis/Datei-Information
der Einträge wählt. Normalerweise sollte die vom
Benutzer gewählte Anzahl größer als die tiefste
Verschachtelung der Pfadeinträge in diesem Laufwerk
sein.
Wie man erkennt, werden die Einträge in einer Kette so
verwaltet, daß, wenn Cache 30 mit Einträgen voll ist
und ein neuer Eintrag hinzugefügt werden soll, dieser
neue Eintrag den am längsten nicht mehr angesprochenen
(Least Recently Used, LRU) Eintrag im Cache ersetzt.
So werden die Felder 1 und 2 gebraucht, u m die Einträ
ge gemäß des LRU-, MRU- (Most Recently Used, zuletzt
angesprochen) Konzepts zu verketten. Jeweils ein
Eintrag wird für jede eröffnete Datei und für jedes
Unterverzeichnis, das in dem Pfad zu dieser Datei
liegt, hinzugefügt. Zwei Dateinen oder Verzeichnisse,
oder Kombinationen davon, im selben Unterverzeichnis
werden als auf der gleichen Stufe befindlich betrach
tet und als "Mitkinder" bezeichnet. Jeder Eintrag, der
ein Unterverzeichnis eines anderen oder eine Datei
ist, wird "Kind" genannt. Für Suchzwecke werden die
Einträge in dem Cache durch die Zeigerfelder 3 bis 5
in einer Baumstruktur angeordnet. Feld 6 enthält jene
Information, die zum üblichen Verzeichniseintrag
gehört, der auf dem Plattenmedium enthalten ist, mit
dem Unterschied, daß diese Information in das Feld 6
des Namenseintrages eingefügt wird und darum im
Hauptspeicher resident ist. Auf solche Informationen
kann deshalb schnell zugegriffen werden, wenn es notwen
dig ist, eine Datei zu eröffnen, für die ein
entsprechender Eintrag im Cache 30 vorhanden ist. Die
Informationen für eine Datei sind Dateiname und
Erweiterung, Attribute, Zeit des letzten Schreibens,
Datum des letzten Schreibens, das erste Cluster der
Datei und die Dateigröße.
Im folgenden wird Bezug genommen auf Fig. 2. Wenn die
Anwendung oder das Benutzerprogramm eine Datei er
öffnen will, dann wird der bekannte DOS-Aufruf "Unter
brechung (Interrupt) 21Hex" für die Eröffnung einer
Datei benutzt. Ein solcher Aufruf geht zu DOS 24 und
das Schnell-Eröffnen ist, wie vorhin angezeigt, so
installiert, um eine solche Unterbrechung abzufangen
und darauf zu reagieren. Die erste Entscheidung
besteht natürlich darin, zu bestimmen, ob das
Schnell-Eröffnen bereits installiert ist oder nicht;
dies wird in Schritt 52 getan. Wenn nicht, dann
schreitet die Prozdur voran, gemäß des im Stand der
Technik bekannten Plattenzugriffschrittes 54, um jedes
Unterverzeichnis und die Datei in der bekannten Weise
aufzufinden; danach kehrt Schrit 56 zum Benutzer oder
zur Anwendung zurück. Wenn das Schnell-Eröffnen
installiert ist, dann schlägt Schritt 58 die Anforde
rung in einer Weise aus, die ausführlicher weiter
unten beschrieben werden soll. Wenn es während des
Prozesses einen Fehler gab, verzweigt Schritt 60 nach
54 und der Prozeß schreitet gemäß der Prozesse des
Standes der Technik voran. Wenn es keinen Fehler gab,
bestimmt Schritt 62, ob der Pfad teilweise oder
vollständig gefunden wurde. Wenn er nicht teilweise
gefunden wurde, d. h. wenn der ganze Pfad und der
Dateiname gefunden wurde, dann wird in Schritt 56
dieselbe Information an den Benutzer zurückgegeben wie
durch den Schritt 54. Wenn die Information nur teil
weise gefunden wurde, dann greift Schritt 64,
beginnend bei der Stelle der gefundenen Information,
auf die Platte zu, um die restlichen Teile des Pfads
und den Dateinamen aufzufinden. Jeder Teil wird in
Schritt 66 eingefügt, und Schritt 68 veranlaßt, daß
der Prozeß ab Schritt 64 wiederholt wird, bis das Ende
des Pfads oder der Dateiname erreicht wird, woraufhin
die entsprechende Information an den Benutzer zurück
gegeben wird.
Im folgenden wird Bezug genommen auf Fig. 3. Der
zentrale Teil der Prozedur ist bekannt als "Haupt
prozedur", und er wird benutzt, um zu entscheiden,
welche von 4 Unterprozeduren benutzt werden sollen.
Die Unterprozeduren sind bezeichnet als "Nachschla
gen", "Einfügen", "Löschen", bzw. "Fortschreiben".
Diese verschiedenen Prozeduren können z. B. dadurch
aufgerufen werden, daß verschiedene, ihnen entspre
chende Nummern in eines der Prozessorregister einge
setzt werden. In jedem Fall entscheidet Schritt 70, ob
es eine Nachschlagen-Operation ist, die Schritte 72,
74 und 76 entscheiden in ähnlicher Weise, ob es eine
Einfügen-, Löschen- bzw. Fortschreiben-Operation ist.
Wenn keine dieser Operationen aufgerufen ist, wird
eine Fehlermeldung zurückgegeben. Diese verschiedenen
Unterprozeduren werden mit Bezug auf die ihnen ent
sprechenden verschiedenen Figuren beschrieben.
Im folgenden wird Bezug genommen auf Fig. 4. In der
Prozedur "Nachschlagen" findet Schritt 78 zunächst
denjenigen Cache 30, der dem angesprochenen Laufwerk
zugeordnet ist. Schritt 80 setzt die LRU-Kette aus
dem Vor-LRU-Stapelspeicher. Dieser Stapelspeicher ist
ein logischer Stapelspeicher, der benutzt wird, um das
entsprechend einem Baum strukturierte Unterverzeichnis
aufzunehmen und dabei die LRU-Kette aufrechtzuerhal
ten.
Als nächstes bildet Schritt 82 den Startpunkt einer
Schleife, in welcher der jetzige (current, gerade
angesprochene) Knoten ein Zeiger ist, welcher anfangs
so gesetzt wird, daß er auf den Kopf des
Laufwerkscaches zeigt, und welcher danach so gesetzt
wird, daß er auf den Eintrag des jetzigen Knotens
zeigt. Die Variable "jetziges Mitkind" wird auf 0
gesetzt, und dann wird das Verzeichnis oder der
Dateinamen gelesen. Das Ende des Pfades oder der
Dateiname wird dadurch bestimmt, daß der Ascii-Wert 0
gefunden wird, und Schritt 84 entscheidet dann, ob das
Ende erreicht wurde. Wenn es nicht erreicht wurde, was
gewöhnlich der Fall sein wird, wenn eine Suche zum
ersten Mal beginnt, dann findet Schritt 86 üblicher
weise einen Eintrag des Kindes des jetzigen Knotens,
wobei der Zeiger zum Kind des jetzigen Eintrags
benutzt wird. Schritt 88 schaut, ob es keine weiteren
Kinder gibt, d. h. ob der Eintrag das letzte Kind in
der Folge ist. Diese Tatsache würde durch eine -1 in
dem Feld des Kindes angezeigt. Der gewünschte Name
wird dann mit dem Dateinamen des Kindes verglichen.
Wenn ein solcher Vergleich, als Resultat des Schrittes
90, eine Übereinstimmung feststellt, dann erzeugt
Schritt 92 den Vor-LRU-Stapelspeicher, speichert die
Adresse des jetzigen Knotens im Stapelspeicher und
verzweigt nach Schritt 82 zurück. Diese Schritte
laufen so oft ab, bis der Dateiname gefunden ist,
wonach das Ja (positives Ergebnis) aus Schritt 84 die
Verzweigung nach Schritt 94 verursacht und der ge
fundene Datensatz oder die gefundene Information an
DOS zurückgegeben wird. Wenn Schritt 90 zu einem
negativen Ergebnis führt, dann schaut Schritt 98 nach
dem Zeiger für das Feld des Mitkindes und eine
Schleife, die die Schritte 96, 90 und 98 umfaßt, würde
so oft durchlaufen, bis keine weiteren Mitkinder mehr
übrig sind, woraufhin dann Schritt 94 zu DOS zurück
kehrt. Bei der Rückkehr zu DOS setzt die Prozedur
"Schnell-Eröffnen" den Zeiger auf das Verzeichnis oder
den Dateinamen, das bzw. der in der von DOS bereitge
stellten Zeichenfolge Pfad/Dateinamen gefunden wurde.
DOS seinerseits untersucht den Zeiger, um zu be
stimmen, ob der ganze Pfad gefunden wurde, oder nur
ein Teil oder gar nichts. Wenn es weitere Mitkinder
gibt, dann setzt Schritt 96 den Zeiger des jetzigen
Knotens auf das jetzige Mitkind.
Im folgenden wird Bezug genommen auf Fig. 5. Der Zweck
der Prozedur "Einfügen" ist es, Information über das
Verzeichnis oder die Datei als einen Eintrag in den
Cache einzufügen, wobei von der Information über den
jetzigen Knoten und das jetzige Mitkind ausgegangen
wird. Schritt 102 macht einen Eintrag der Namensdaten
aus der Eingabe und Schritt 104 holt den nächsten
verfügbaren Eintrag. Solange der Cache nicht voll ist,
wird ein neuer Eintrag einfach an irgend eine freie
Stelle gesetzt werden. Sobald der Cache gefüllt ist,
wird der in der LRU-Liste am längsten nicht mehr ange
sprochene Eintrag der nächste verfügbare Eintrag sein,
der durch den neueren ersetzt werden soll. Schritt 106
löscht den Vor-LRU-Stapelspeicher, sofern etwas darin
ist. Wenn der jetzige Zeiger zum Mitkind gleich 0 ist,
dann wird der neue Eintrag durch Schritt 110 als ein
Kind unter dem jetzigen Knoten installiert und Schritt
112 verzeichnet diesen Knoten in dem Vor-LRU-Stapel
speicher. Wenn ein jetziges Mitkind in Schritt 108
ungleich 0 ist, dann installiert Schritt 114 den neuen
Eintrag als ein Mitkind des jetzigen Knotens.
Im folgenden wird Bezug genommen auf die Fig. 6 und
7. Wenn eine Anwendung oder ein Benutzer verlangt, daß
eine bestimmte Datei gelöscht werde, dann löscht eine
Prozedur nicht nur die Datei auf der Platte in der
üblichen Art und Weise, sondern löscht auch alle
entsprechenden Einträge im Cache. Als Antwort auf die
Benutzeranforderung in Schritt 116 geht so der Prozeß
über DOS 24, und Schritt 118 entscheidet, ob die Pro
zedur "Schnell-Eröffnen" installiert wurde. Wenn
nicht, dann greift Schritt 122 auf die Platte zu und
löscht die Datei, wonach Schritt 124 zum Benutzer
zurückkehrt. Wenn die Prozedur "Schnell-Eröffnen" in
stalliert ist, dann wird die Anforderung "Löschen" 120
gegeben. Infolge einer solchen Anforderung schlägt
Schritt 126 im Cache nach, um festzustellen, ob es
einen entsprechenden Eintrag gibt oder nicht. Wenn
kein Eintrag gefunden wird, wird die Prozedur einfach
verlassen. Wenn der Eintrag gefunden wird, dann wird
er aus der LRU-Kette mit Baumstruktur von Schritt 132
entfernt, und dieser spezielle Eintrag wird an die
oberste Stelle der LRU-Kette gesetzt, wodurch er für
die Benutzung (Ersetzung) durch einen neuen Eintrag
verfügbar wird. Der Eintrag des Dateinamens wird
zuerst gelöscht und anschließend alle
Eltern-Verzeichnisse, die keine Zeiger zu Kindern oder
Mitkindern enthalten.
Im folgenden wird Bezug genommen auf die Fig. 8 und
9. Es gibt gewisse Funktionen, die in der Prozedur
"Schnell-Eröffnen" enthalten sind und die direkt durch
DOS aufgerufen werden können, um gewisse Funktionen
auszuführen, die die von DOS bereitgestellten Funktio
nen unterstützen. Die DOS-Anforderungen betreffen die
Funktionen, eine Datei abzuschließen, Null-Bytes in
eine Datei zu schreiben oder einen Knoten zu erzeugen.
Die Schritte 142, 144 und 146 bestimmen dementspre
chend, ob solche Funktionen angefordert sind und
verzweigen dann zu den Schritten 134 bis 140 der
Prozedur "Fortschreiben". Die positiven Ergebnisse der
Schritte 136 bis 140 schreiben entsprechend die
Verzeichniseinträge und die Anzahl der Cluster, die
mit einer Datei verbunden sind, fort, bzw. löschen
einen Eintrag.
In der vorangegangenen Diskussion wurde der Vor-LRU-
Stapelspeicher erwähnt, und nun soll seine Beziehung
zum LRU-Stapelspeicher erklärt werden. Beide Stapel
speicher schließen die Benutzung von LRU- und
MRU-Zeigern in den Einträgen ein. Wenn der Prozeß
einen Pfad verfolgt, dann geht er vom Stammverzeichnis
aus durch alle Unterverzeichnisse, bis er den Dateina
men erreicht; ein Vor-LRU-Stapelspeicher wird in
Übereinstimmung mit der Ordnung erzeugt, in welcher
auf die verschiedenen Knoten zugegriffen wird. So ist
z. B. bei einer Datei, die durch C:/Verz 1/Verz 2/Datei 1
spezifiziert ist, die Ordnung der Einträge: das
Stammverzeichnis, Verz 1, Verz 2 und Datei 1. Diese
Reihenfolge stellt deswegen ein Problem dar, weil das
Stammverzeichnis den am längsten nicht mehr ange
sprochenen Eintrag darstellt, und sollte ein solcher
Eintrag zum Ersetzt-werden freigegeben werden, dann
würde ein Zugriff auf die übrigen Einträge abgeschnit
ten werden. Dieses Problem wird vermieden durch die
Benutzung des Vor-LRU-Stapelspeichers und, sobald der
Pfad aufgestellt ist, durch Neuordnung der Einträge,
um ein LRU-Stapelspeicher zu erzeugen, in welchem der
Dateiname als der am längsten nicht mehr angesprochene
Eintrag erscheint, wodurch bei einer Ersetzung zu
nächst der Dateiname und nicht irgend ein Eltern-Ver
zeichnis ersetzt wird.
Claims (6)
1. Verfahren zum Eröffnen von Dateien in einem
Datenverarbeitungssystem (10) mit mindestens
einem Laufwerk (20) für ein externes Speicherme
dium (22), vorzugsweis einer Speicherplatte, auf
dem die Dateien (40) und ein Inhaltsverzeichnis
mit Baumstruktur für Datei- und Unterverzeich
nisnamen (24, 36, 38) gespeichert sind,
dadurch gekennzeichnet,
daß im Hauptspeicher (16) des Datenverarbeitungs
systems für jedes Laufwerk ein Bereich
vorgebbarer Größe vorgesehen wird, in dem ein
Ausug des Inhaltverzeichnisses mit Zugriffs
information über Dateien aufrecht erhalten wird,
die in der zurückliegenden Zeit eröffnet worden
sind, und daß bei Anforderungen zum Eröffnen von
Dateien der Auszug des Inhaltsverzeichnisses
zuerst durchsucht wird.
2. Verfahren nach Anspruch 1,
dadurch gekennzeichnet,
daß in jedem Hauptspeicherbereich eine feste
Anzahl von verketteten Einträgen gleichen
Formats für Namen von Dateien bzw. von Unter
verzeichnissen vorgesehen ist, und daß neue
Einträge nach dem Prinzip des LRU verwaltet
werden.
3. Verfahren nach Anspruch 2,
dadurch gekennzeichnet,
daß die Einträge in einem LRU-Stapelspeicher ver
waltet und in einem Vor-LRU-Stapelspeicher
vorbereitet werden.
4. Verfahren nach einem der Ansprüche 1 bis 3,
dadurch gekennzeichnet,
daß jeder Eintrag Zeiger enthält, von denen je
einer auf den dem betreffenden Eintrag in der
Baumstruktur übergeordneten Eintrag (Eltern),
einer auf einen in der Baumstruktur gleichrangi
gen Eintrag (Mitkind) und einer auf einen dem
betreffenden Eintrag in der Baumstruktur unterge
ordneten Eintrag (Kind) zeigt.
5. Verfahren nach einem der vorangehenden Ansprüche,
dadurch gekennzeichnet,
daß beim Eröffnen einer Datei zuerst auf die im
zugehörigen Hauptspeicherbereich vorhandenen
Informationen über die Datei zugegriffen wird und
möglicherweise fehlende weitere Informationen
über den vollständigen Pfad zum Datei-Inhaltsver
zeichnis aus dem Speichermedium gelesen werden.
6. Verfahren nach einem der vorherigen
Ansprüche,
dadurch gekennzeichnet,
daß in jedem Hauptspeicherbereich ein
Laufwerkskopf zur Identifikation des zugeordneten
Laufwerkes enthalten ist, und daß die Laufwerk
köpfe über Zeiger miteinander verkettet sind.
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 |
---|---|
DE3743890A1 true DE3743890A1 (de) | 1988-10-27 |
DE3743890C2 DE3743890C2 (de) | 1989-03-23 |
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 Before (1)
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. |
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) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19960114A1 (de) * | 1999-12-08 | 2001-06-13 | Heidenhain Gmbh Dr Johannes | Verfahren zum Speichern von Daten in einer Datei eines Datenspeichersystems |
AT510716A4 (de) * | 2011-04-08 | 2012-06-15 | Albrecht Dipl Ing Kadlec | Reiner allokations-cache für echtzeitsysteme |
Families Citing this family (37)
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 | 富士通株式会社 | ストリームファイルに対してのアクセス処理方式 |
EP0463874A2 (de) * | 1990-06-29 | 1992-01-02 | Digital Equipment Corporation | Cache-Anordnung für ein Dateisystem in einem digitalen Datenverarbeitungssystem |
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 |
DE69535330T2 (de) * | 1994-09-14 | 2007-05-31 | Intel Corporation, Santa Clara | Caching-System mit Explitzer Folgeliste |
US5590320A (en) * | 1994-09-14 | 1996-12-31 | Smart Storage, Inc. | Computer file directory system |
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 |
CN1344413A (zh) * | 1999-11-10 | 2002-04-10 | 皇家菲利浦电子有限公司 | 记录载体、用于重放记录载体的装置、用于重放记录载体的方法、用于录制记录载体的装置以及用于录制记录载体的方法 |
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 |
EP1779253A4 (de) * | 2004-07-12 | 2010-01-27 | Samsung Electronics Co Ltd | Verfahren und vorrichtung zum durchsuchen von in einem tragbaren speichergerät gespeicherten rechteobjekten unter verwendung von objektortsdaten |
JP4659537B2 (ja) * | 2005-07-05 | 2011-03-30 | 株式会社日立製作所 | ファイル提供方法、ストレージ装置及びファイル提供プログラム |
KR101130090B1 (ko) * | 2010-04-05 | 2012-03-28 | 주식회사 안철수연구소 | 단말 장치 및 상기 단말 장치의 파일 배포처 확인 방법 |
CN102279734A (zh) * | 2010-06-12 | 2011-12-14 | 环旭电子股份有限公司 | 自动映像数据的嵌入式系统及其方法 |
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 |
DE3381124D1 (de) * | 1983-02-03 | 1990-02-22 | Ibm | Dateiorganisation mit schluesselzugriff. |
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 | デイスクフアイルアクセス方式 |
EP0452989A3 (en) * | 1985-05-29 | 1992-04-15 | Kabushiki Kaisha Toshiba | Magnetic disk controller incorporating a cache system adopting an lru system |
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 ES ES198787118540T patent/ES2033786T3/es not_active Expired - Lifetime
- 1987-12-15 AT AT87118540T patent/ATE78943T1/de not_active IP Right Cessation
- 1987-12-15 EP EP87118540A patent/EP0284664B1/de 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
Non-Patent Citations (2)
Title |
---|
DE-Buch Wilhelm G. Spruth Interaktive Systeme, Science Research Associates GmbH, S. 200-213 * |
US-B.: J. Martin Computer Data-Base Organization 2. Aufl., 1977, Prentice Hall Inc. S. 444-446 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19960114A1 (de) * | 1999-12-08 | 2001-06-13 | Heidenhain Gmbh Dr Johannes | Verfahren zum Speichern von Daten in einer Datei eines Datenspeichersystems |
AT510716A4 (de) * | 2011-04-08 | 2012-06-15 | Albrecht Dipl Ing Kadlec | Reiner allokations-cache für echtzeitsysteme |
AT510716B1 (de) * | 2011-04-08 | 2012-06-15 | Albrecht Dipl Ing Kadlec | Reiner allokations-cache für echtzeitsysteme |
Also Published As
Publication number | Publication date |
---|---|
EP0284664A2 (de) | 1988-10-05 |
ATE78943T1 (de) | 1992-08-15 |
GB2204161A (en) | 1988-11-02 |
MY103353A (en) | 1993-06-30 |
GB2204161B (en) | 1991-09-18 |
KR880011665A (ko) | 1988-10-29 |
GR3005888T3 (de) | 1993-06-07 |
JPH0519175B2 (de) | 1993-03-16 |
EP0284664A3 (en) | 1989-03-15 |
DE3780807T2 (de) | 1993-03-11 |
US5008820A (en) | 1991-04-16 |
CN88100793A (zh) | 1988-10-19 |
CA1303747C (en) | 1992-06-16 |
GB8728924D0 (en) | 1988-01-27 |
CN1020014C (zh) | 1993-03-03 |
EP0284664B1 (de) | 1992-07-29 |
PH27427A (en) | 1993-06-21 |
DE3780807D1 (de) | 1992-09-03 |
ES2033786T3 (es) | 1993-04-01 |
SG5292G (en) | 1992-03-20 |
DE3743890C2 (de) | 1989-03-23 |
HK33892A (en) | 1992-05-15 |
BR8801438A (pt) | 1988-11-01 |
KR940005775B1 (ko) | 1994-06-23 |
JPS63244243A (ja) | 1988-10-11 |
FR2613505A1 (fr) | 1988-10-07 |
BE1001068A4 (fr) | 1989-06-27 |
IT8819948A0 (it) | 1988-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3743890C2 (de) | ||
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 | |
DE69623227T2 (de) | Verfahren und System zur Berechnung von Dateinamen mit hoher Wahrscheinlichkeit der Eindeutigkeit | |
DE69702568T2 (de) | Mehrstufiges Cache-System für Massenspeichereinrichtung und Verfahren zum Einrichten eines solchen Systems | |
DE68925746T2 (de) | Versionen-Verwaltungswerkzeug | |
DE69530405T2 (de) | Schnappschuss von auf einem massenspeichersystem gespeicherten daten | |
DE19740525C1 (de) | Verfahren zur Abspeicherung und Wiedergewinnung von Daten in einem Steuersystem, insbesondere in einem Kraftfahrzeug | |
DE68927621T2 (de) | Echtzeitdatenbasis | |
DE69031494T2 (de) | Verfahren zum lesen und schreiben von dateien auf nichtlöschbaren speichermedien | |
DE69636192T2 (de) | Datenmigrationssystem und -verfahren unter verwendung von undichten dateien | |
DE69032517T2 (de) | Verfahren und System zum dynamischen Identifizieren von Datenträgern in einem Gestaltungsdateisystem | |
DE69700574T2 (de) | Verfahren zum Cache-Speichern von Netzwerk- und CD-ROM-Zugriffen unter Verwendung einer lokalen Festplatte | |
DE69533786T2 (de) | Vorrichtung zum Erzeugen von objektorientierten Schnittstellen für relationale Datenbanken und von dieser Vorrichtung durchgeführtes Verfahren | |
DE69333906T2 (de) | Verfahren und System für die Dateienverwaltung mit einem schnell löschbaren, programmierbaren ROM | |
DE69926227T2 (de) | System und verfahren zum verbessern von programmstartzeit | |
DE69801112T2 (de) | Dateispeicherverwaltungssystem für schnappschusskopieroperationen | |
DE68929229T2 (de) | Steuergerät mit einem Cache-Speicher und Verfahren zur Steuerung des Cache-Speichers | |
DE68924833T2 (de) | Verfahren und Anordnung zur Datenabbildung in einem Datenverarbeitungssystem mit virtuellem Speicher. | |
DE112020000749T5 (de) | Indexerstellung für sich entwickelnde umfangreiche Datensätze in Hybriden Transaktions- und Analysenverarbeitungssystemen mit mehreren Mastern | |
DE69310908T2 (de) | Verfahren und geraet um nicht loeschbare dateien auf ein speichermedium zu schreiben | |
DE60035432T2 (de) | System zur verwaltung der rdbm fragmentierungen | |
DE60112257T2 (de) | Virtuelles Dateisystem für dynamisch erzeugte Webseiten | |
DE19961499A1 (de) | Caching von Objekten in Platten-gestützten Datenbanken | |
EP3084638A1 (de) | Posix-kompatibles dateisystem, verfahren zum erzeugen einer dateiliste und speichervorrichtung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |