DE69326719T2 - Verfahren und System zur Organisation der internen Struktur einer Datei - Google Patents
Verfahren und System zur Organisation der internen Struktur einer DateiInfo
- Publication number
- DE69326719T2 DE69326719T2 DE69326719T DE69326719T DE69326719T2 DE 69326719 T2 DE69326719 T2 DE 69326719T2 DE 69326719 T DE69326719 T DE 69326719T DE 69326719 T DE69326719 T DE 69326719T DE 69326719 T2 DE69326719 T2 DE 69326719T2
- Authority
- DE
- Germany
- Prior art keywords
- file
- data
- bundle
- subfile
- generated
- 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 - Lifetime
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 150000001875 compounds Chemical class 0.000 claims abstract description 13
- 238000004590 computer program Methods 0.000 claims 5
- 230000006870 function Effects 0.000 description 80
- 238000010586 diagram Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 3
- 230000008676 import Effects 0.000 description 2
- 108010068991 arginyl-threonyl-prolyl-prolyl-prolyl-seryl-glycine Proteins 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/40—Data acquisition and logging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/116—Details of conversion of file system types or formats
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Crystals, And After-Treatments Of Crystals (AREA)
- Devices For Executing Special Programs (AREA)
- Document Processing Apparatus (AREA)
- Processing Or Creating Images (AREA)
Description
- Die vorliegende Erfindung betrifft ein Verfahren sowie ein System zum Speichern von Daten in einem Computersystem und insbesondere das Speichern von Daten in einem zusammengesetzten Dokument,
- Computerbetriebssyteme enthalten normalerweise ein Teilsystem, das als Dateisystem bezeichnet wird. Ein Dateisystem speichert Daten in Dateien. Ein Dateisystem stellt eine Anwenderprogrammschnittstelle (Application Programming Interface - API) dar, die den Zugang zu Daten ermöglicht, die auf der Festplatte oder einem anderem Dauerspeichermedium gespeichert sind. Eine Dateisystem-API erfüllt verschiedene Funktionen, die durch ein Anwenderprogramm aufgerufen werden, um auf die Daten zuzugreifen. Anwenderprogramme steuern das interne Format einer Datei und bestimmen, welche Daten in welchen Dateien gespeichert werden. Ein Dateisystem ermöglicht normalerweise die Gruppierung von Dateien in Verzeichnissen. Jedes Verzeichnis kann viele Dateien und Unterverzeichnisse enthalten. Die Unterverzeichnisse können ebenfalls Daten und weitere Unterverzeichnisse enthalten. Ein Dateisystem, das Dateien in Verzeichnissen und Unterverzeichnissen gruppiert, wird als hierarchisches Dateisystem bezeichnet Das Dokumeht PROCEEDINGS SEAS ANIVERSARY MEETING 1988, Band. 1,30. September 1988, AALBORG, DÄNEMARK, S. 399-440, D. R. CROKETT: "The VM/SP 6 shared file system" offenbart den Einsatz von hierarchischen Verzeichnissen und die Speicherung von Dateien in Gruppen.
- Bei vielen Anwenderprogrammen ist Zugang zu verschiedenen Typen von Daten erforderlich. So können z. B.. Textverarbeitungsprogramme Daten, die im Text-, Graphik- und Tabellenformat vorliegen, zu einem Dokument kombinieren. Ein Textformat ist als Ursprungs- bzw. Eigenformat für Textverarbeitungsprogramme bekannt. Ein Benutzer eines Textverarbeitungsprogramms kann festlegen, daß Graphik- oder Tabellendaten, die in einer Datei gespeichert sind, in das Dokument einbezogen werden. Um dies zu tun, können Textverarbeitungsprogramme Daten aus Dateien importieren, die mit einem Graphikprogramm oder einem Tabellenkalkulationsprogramm erzeugt wurden. Textverarbeitungsprogramme müssen normalerweise nicht nur das interne Format der Graphik- und Tabellendaten erkennen, sondern auch die Graphik- und Tabellendaten anzeigen bzw. drucken können.
- Die Konkurrenzfähigkeit eines Textverarbeitungsprogramms steigt mit seiner Fähigkeit, in vielen Formaten gespeicherte Daten zu importieren. Es kann jedoch sehr zeitaufwendig und teuer sein, den Zugriff eines Textverarbeitungsprogramms auf Daten in einem speziellen Nichttextformat zu ermöglichen. Um ein Textverarbeitungsprogramm entsprechend anzupassen, bräuchte der Entwickler eine vollständige Beschreibung des speziellen Formats und müßte dann einen Code zum Drucken, für die Anzeige und möglicherweise für die Speicherung der Daten entwickeln. Der Aufwand, der erforderlich ist, um ein Textverarbeitungsprogramm an ein spezielles Format anzupassen, nimmt noch zu, wenn das Format durch einen anderen Vertreiber definiert wurde. Der Vertreiber veröffentlicht möglicherweise keine komplette Spezifikation des Formats oder kann das Format ohne Ankündigung verändern. Dementsprechend kann der Entwickler eines Anwenderprogramms sich dafür entscheiden, nur einige der verbreiteteren Dateiformate außer dem eigenen Dateiformat zu unterstützen.
- Eine vorgeschlagene Lösung besteht darin, daß Textverarbeitungsprogramme das Anwenderprogramm aufrufen, das die Daten in dem speziellen Nichttextformat erzeugt hat, um die Nichttextdaten anzuzeigen bzw. zu drucken, die zu einem Textverarbeitungsdokument gehören. Wenn beispielsweise zu einem Dokument eine Graphik gehört, würde das Textverarbeitungsprogramm das Graphikprogramm aufrufen, das die Daten erzeugt hat, um die Graphik zu drucken bzw. anzuzeigen oder eine andere Aufgabe unter Verwendung der Daten auszuführen. Wenn jedoch das Graphikprogramm nicht speziell so entwickelt wurde, daß es von einem bestimmten Textverarbeitungsprogramm aufgerufen wird, ist es unter Umständen nicht möglich, das Graphikprogramm aufzurufen. Graphikprogramme erwarten normalerweise, daß Daten in einem bestimmten Format und in einer Datei gespeichert werden, die lediglich Graphikdaten enthält.
- Es sind verschiedene Verfahren vorgeschlagen worden, die es einem Textverarbeitungsprogramm ermöglichen sollen, andere Programme aufzurufen, um Nichttextdaten, die einen Teil eines Textverarbeitungsdokuments bilden, zu drucken, anzuzeigen oder auf andere Weise zu verarbeiten. Bei einem ersten Verfahren wird jedes der Programme, die die Nichttextdaten erzeugen, so modifiziert, daß sie das interne Format des Textverarbeitungsdokuments erkennen, die Nichttextdaten aus dem Dokument abrufen und die abgerufenen Daten verarbeiten können. Dieses Verfahren kann sehr aufwendig sein, da die Programme in der Lage sein müßten, das interne Format jedes Textverarbeitungsprogramms zu erkennen.
- Bei einem zweiten Verfahren wird jede Komponente des Textverarbeitungsdokuments in einer separaten Datei gespeichert. Bei diesem Verfahren würden Daten in dem Eigenformat jedes Anwenderprogramms gespeichert. So könnte das Anwenderprogramm aufgerufen werden, um die eigenen Daten direkt zu verarbeiten. Bei diesem Verfahren ist jedoch die Integrität des Textverarbeitungsdokuments gefährdet. Es kann dazu kommen, daß Benutzer eine Datei unter Verwendung der Betriebssytembefehle löschen. Ein Benutzer könnte eine der Dateien löschen, die einen Teil eines Textverarbeitungsdokuments darstellt. Das Textverarbeitungsdokument hätte dann eine Verknüpfung zu einer gelöschten Datei.
- Eine Aufgabe der vorliegenden Erfindung besteht darin, ein Verfahren und ein System zur Handhabung eines zusammengesetzten Dokuments zu schaffen.
- Eine weitere Aufgabe der vorliegenden Erfindung besteht darin, eine Schnittstelle für zusammengesetzte Dokumente zu schaffen, die parallel zur Schnittstelle des zugrundeliegenden Dateisystems ist.
- Eine weitere Aufgabe der vorliegenden Erfindung besteht darin, ein System für zusammengesetzte Dokumente zu schaffen, bei dem vorhandene Anwendungen zur Nutzung des Systems konvertiert werden können, wobei minimaler Konvertierungsaufwand entsteht.
- Diese und andere Aufgaben, die aus der folgenden ausführlicheren Beschreibung der Erfindung ersichtlich werden, werden mit einem Verfahren und einem System erfüllt, die es ermöglichen, daß Anwenderprogramm Daten in einem zusammengesetzten Dokument speichern. Mit der vorliegenden Erfindung können Daten in einem zusammengesetzen Dokument als Dateibündel organisiert werden. Ein Dateibündel ist eine Dateisystemdatei, die Unterdateien enthält, die hierarchisch organisiert sein können. Die Daten in einer Dateibündeldatei werden vorzugsweise in einem Format gespeichert, das von dem Programm definiert wird, das die Daten erzeugt (Eigendaten). Das Programm, das die Daten erzeugt, öffnet das von einem anderen Programm erzeugte Dateibündel und speichert und liest die Daten in der Dateibündeldatei aus.
- Fig. 1 ist ein Schema einer typischen Struktur eines Dateibündels der vorliegenden Erfindung.
- Fig. 2 ist ein Schema eines Dateibündels, das eine Dateibündeldatei enthält, die ein Dateibündel darstellt.
- Fig. 3 zeigt die Schnittstelle zwischen der Dateibündel-API und der Dateisystem-API.
- Fig. 4 ist eine schematische Darstellung von Musterdatenstrukturen zum Speichern von Daten in einer Ausführung der vorliegenden Erfindung.
- Fig. 5 ist ein Übersichtsflußdiagramm der Funktion fFBcreate, mit der ein Dateibündel erzeugt wird.
- Fig. 6 ist ein Übersichtsflußdiagramm einer Funktion fFBopen, mit der ein vorhandenes Dateibündel geöffnet wird.
- Fig. 7 ist ein Übersichtsflußdiagramm einer Funktion fFBcreate, mit der eine Dateibündeldatei erzeugt wird.
- Fig. 8 ist ein Übersichtsflußdiagramm einer Funktion fFBFwrite, mit der Daten in eine Dateibündeldatei geschrieben werden.
- In einer bevorzugten Ausführung schafft die vorliegende Erfindung ein Verfahren und ein System, die es Anwenderprogrammen ermöglichen, Daten, die in einem zusammengesetzten Dokument gespeichert sind, gemeinsam zu nutzen. Bei einem zusammengesetzten Dokument handelt es sich um eine Festplattendatei, die Daten enthält, die von verschiedenen Anwendungen erzeugt wurden. Die vorliegende Erfindung ermöglicht das Organisieren von Daten in dem zusammengesetzten Dokument als Dateibündel. Ein Dateibündel ist eine Dateisystemdatei, die Unterdateien enthält, die hierarchisch organisiert werden können. Eine Unterdatei wird als eine Dateibündeldatei bezeichnet. Die Daten in einer Dateibündeldatei werden vorzugsweise im Eigenformat gespeichert, das durch das erzeugende Format definiert wird. Wenn beispielsweise ein Textverarbeitungsdokument Tabellenkalkulationsdaten enthält, würde eine Dateibündeldatei die Eigendaten in dem Format enthalten, das von dem Tabellenkalkulationsprogramm erzeugt wird.
- Fig. 1 zeigt eine typische Struktur eines Dateibündels der vorliegenden Erfindung. Das Dateibündel ist eine Dateisystemdatei, die unter Verwendung der Dateisystem-APl erzeugt wird. Das Dateibündel 100 enthält ein Verzeichnis 110, ein Textdateibündel(FB)- Datei 120, eine Graphik(FB)-Datei 130 sowie eine Tabellen(FB)-Datei 140. Das Verzeichnis 110 enthält einen Eintrag 111, 112 und 113 für jede FB-Datei. Die Einträge enthalten jeweils einen Zeiger, der auf die entsprechende FB-Datei verweist, sowie andere Informationen, beispielsweise bezüglich der Länge der FB-Datei und des Zeitpunktes der Erzeugung. Bei einer bevorzugten Ausführung enthalten die Verzeichnis- Einträge Daten, die dem Datentyp entsprechen, der in den Verzeichnissen des Dateisystems gespeichert ist. Die Text-FB-Datei 120 enthält Verknüpfung 121 mit der Graphik-FB-Datei sowie Verknüpfung 122 mit der Tabellen-FB-Datei. Die Verknüpfungen 121 und 122 zeigen an, daß die Graphik- und die Tabellendaten Teil des Dokuments sind.
- Bei einer bevorzugten Ausführung kann ein FB-Dateibündel eine Datei enthalten, die selbst ein Dateibündel ist. Eine FB-Datei kann ein Verzeichniszeiger zum Formatieren verschachtelter Dateibündeldateien enthalten. Diese Verschachtelung von Dateibündeln ist analog zu einer hierarchischen Verzeichnisstruktur. Diese Verschachtelung ermöglicht die Integration von zusammengesetzten Dokumenten in einem zusammengesetzten Dokument. So kann ein Dateibündel für ein Textverarbeitungsdokument eine Dateibündeldatei für Tabellenkalkulationsdaten enthalten, die wiederum Graphikdaten enthalten. Fig. 2 zeigt ein Dateibündel, das eine FB-Datei enthält, die ein Dateibündel ist. Das Dateibündel 200 enthält das Verzeichnis 210 mit vier Einträgen 211, 212, 213 und 214. Verzeichniseintrag 214 verweist auf FB-Datei 250 und enthält einen Hinweis darauf, daß es auf eine FB-Datei verweist, die ein Dateibündel ist. FB-Datei 250 enthält Verzeichnis 253 mit den Einträgen 251 und 252, die auf FB-Dateien 254 und 255 verweisen.
- Obwohl Fig. 1 und 2 eine Ausführung zeigen, weiß der Fachmann, daß andere Verfahren zum Speichern des Verzeichnisses und der Dateien eines Dateibündels möglich wären. So wird ein Dateibündel z. B. ähnlich wie die Verzeichnis- und Dateistruktur des Dateisystems strukturiert.
- Vorhandene Anwenderprogramme können auf Daten zugreifen, die in einer Dateisystemdatei im Eigenformat gespeichert sind. Diese Anwendungen wurden jedoch nicht für den Zugriff auf ihre eigenen Daten entwickelt, die in einer Dateibündeldatei gespeichert sind. Die vorliegende Erfindung schafft auch eine Dateibündel-API, die es einem vorhandenen Anwenderprogramm mit minimalen Modifikationen ermöglicht, auf eigene Daten in einer Dateibündeldatei zuzugreifen.
- Die vorliegende Erfindung wird als in einem Computersystem mit Nicht-Mehrprogramm- Betriebssystemen, die beispielsweise MS-DOS, entwickelt von Microsoft Corporation, eingesetzt beschrieben. Der Fachmann weiß jedoch, daß die vorliegende Erfindung in einem Computersystem mit Mehrprogamm-Betriebssystem eingesetzt werden könnte. MS-DOS ermöglicht es einem Programm (Mutterprogramm) ein weiteres Programm (Tochterprogramm) zu laden und auszuführen. Wenn das Tochterprogramm beendet ist, wird die Steuerung wieder an das Mutterprogramm übergeben. Auf diese Weise kann ein Mutterprogramm ein Tochterprogramm laden, um auf seine eigenen Daten in einem zusammengesetzten Dokument zuzugreifen, das von dem Mutterprogramm er zeugt wurde. MS-DOS hat jedoch nur einen einzelnen Dateizeiger für jede offene Datei. Ein Dateizeiger verweist auf den momentanen Punkt, an dem der nächste Lese- bzw. Schreibvorgang ablaufen wird. MS-DOS ermöglicht es einem Programm (Mutterprogramm) ein anderes Programm (Tochterprogramm) zu laden, das ebenfalls die Datei öffnet, und dann beeinflussen Veränderungen des Dateizeigers, die das Tochterprogramm vornimmt, das Mutterprogramm.
- Von einem Betriebsystem, das nur einen einzelnen Dateizeiger für jede offene Datei unterstützt, wie es oben beschrieben ist, sagt man, daß es nur einen einzelnen Datenfluß unterstützt. Die Verfahren der vorliegenden Erfindung ermöglichen mehrere Datenflüsse in einem Einzeldateisystem-Datenfluß. Beim Einsatz dieser Verfahren können vorhandene Anwendungen so modifiziert werden, daß sie Dateibündel nutzen, ohne daß befürchtet werden muß, daß ein Tochterprogramm einen Dateizeiger verändert. Die vorliegende Erfindung ermöglicht das Öffnen ein in desselben Dateibündels durch eine Vielzahl von Anwenderprogrammen (Mutter- und Tochterprogramme), behält einen separaten Dateizeiger für jedes Anwenderprogramm bei und ermöglicht es jedem Anwenderprogramm Daten in seinem eigenen Format in dem offenen Dateibündel zu speichern.
- Fig. 3 ist eine schematische Darstellung, die die Schnittstelle zwischen Mehrbündel-API und der Dateisystem-API zeigt. Das Dateisystem 302 weist, wie oben beschrieben, Funktionen zum Zugriff auf das Speichermedium 301 auf. Bei einer Ausführung sind die Funktionen der Dateibündel-API 303 parallel zu den Funktionen der Dateisystem-API 302. Der Fachmann weiß beispielsweise, daß eine typische Dateisystem-API die folgenden Funktionen enthält:
- fcreate zum Erzeugen einer Datei
- fcreatedir zum Erzeugen eines Verzeichnisses
- fopen zum Öffnen einer Datei
- fclose zum Schließen einer Datei
- fread zum Lesen aus einer Datei
- fwrite zum Schreiben in eine Datei
- fseek zum Positionieren eines Speicherstellenzeigers
- Die Dateibündel-API 303 enthält vorzugsweise die folgenden Funktionen:
- fFBcreate zum Erzeugen eines Dateibündels
- fFBopen zum Öffnen eines Dateibündels
- fFBFcreate zum Erzeugen einer FB-Datei
- fFBFopen zum Öffnen einer Dateibündeldatei
- fFBFcreatedir zum Erzeugen eines FB-Verzeichnisses
- fFBFclose zum Schließen einer FB-Datei
- fFBFread zum Lesen aus einer FB-Datei
- fFBFwrlte zum Schreiben in eine FB-Datei
- fFBFseek zum Positionieren eines FB-Datei-Zeigers
- Wenn ein Textverarbeitungsprogramm gemäß der vorliegenden Erfindung ein Dokument erzeugt, das Text-, Graphik- und Tabellenkalkulationsdaten enthalten soll, erzeugt es ein Dateibündel zum Speichern der Daten. Das Textverarbeitungsprogramm nimmt normalerweise die Namen von Dateisystemdateien auf, die die Graphik- und Tabellendaten in deren Eigenformaten enthalten. Das Textverarbeitungsprogramm erzeugt eine Dateibündeldatei für die Graphikdaten und eine Dateibündeldatei für die Tabellendaten. Dann öffnet das Textverarbeitungsprogramm die Dateisystemdaten und kopiert die Daten aus der Graphik- und der Tabellendatei in die entsprechenden Dateibündeldateien. Wenn das Textverarbeitungsprogramm die Graphik- bzw. Tabellendaten anzeigt oder druckt, ruft es das Graphik- bzw. Tabellenkalkulationsprogramm auf, das die Daten erzeugt hat. Wenn das Anwenderprogramm aufgerufen wird, leitet das Textverarbeitungsprogramm ihm den Namen des Dateibündels, den Namen der Dateibündeldatei und Parameter bezüglich der auszuführenden Funktion (beispielsweise die Anzeige von Daten) zu. Das Anwenderprogramm nutzt dann die Funktion fFBopen zum Öffnen des Dateibündels, die Funktion fFBFopen zu Öffnen der Dateibündeldatei sowie die Funktion fFBFread zum Lesen der Daten und zur anschließenden Anzeige derselben. Diese Funktionen, die mit der vorliegenden Erfindung geschaffen werden und weiter unten ausführlich beschrieben werden, behalten einen Dateizeiger für jedes Programm bei, das ein Dateibündel geöffnet hat. Das Textverarbeitungsprogramm wird als Client (client) des Anwenderprogramms bezeichnet, das den Server (server) darstellt.
- Fig. 4 ist eine schematische Darstellung von Musterdatenstrukturen zum Speichern von Daten in einer Ausführung der vorliegenden Erfindung. Dateibündel 410 enthält Verzeichnis 411 sowie die Dateien 412, 413 und 414. Die Verzeichnisstruktur und jede Datei sind als logisch sequentiell dargestellt. Der Fachmann weiß, daß es bekannte Dateisystemverfahren, wie beispielsweise das Dateizuordnungstabellen(file allocation table - FAT)-Verfahren von MS-DOS, zur nicht-sequentiellen Speicherung von logisch sequentiellen Daten gibt. Bei einer bevorzugten Ausführung führt die Dateibündel-API einen FAT-Vorgang zum Speichern von Daten in einem Dateibündel aus. Wenn das Dateibündel 410 geöffnet wird (unter Verwendung von fFBopen) initialisiert das Dateisystem Datenstruktur 420 so, daß sie den momentanen Zustand der Datei enthält. Datenstruktur 420 enthält Dateizeiger 421, der den Dateizeiger für das Dateibündel 410 enthält. Dateizeiger 421 ist der einzige Dateizeiger, den das Dateisystem beibehält. Wenn ein Dateibündel geöffnet wird (unter Verwendung der Funktion fFBFopen) fügt die Dateibündel-API der Dateibündeltabelle (FBTable) 430 einen Eintrag hinzu. FBTable enthält einen Eintrag für jedes offene Dateibündel. Die Einträge enthalten den Handle für die offene Datei (Fhandle), der der von dem Datensystem zur Verfügung gestellte Handle ist, sowie einen Handle für jede offene Dateibündeldatei (FBFhandle) in dem Dateibündel, bei dem es sich um einen von der Dateibündel-API erzeugten Handle handelt. So enthält beispielsweise der Eintrag 431 den Handle für das Dateibündel 410 und die Handle, die jedem Auftreten einer offenen Dateibündeldatei entsprechen. Jeder Eintrag wird durch einen Dateibündel-Handle (FBhandle) identifiziert. Die Dateibündel- API weist immer dann eine Dateibündeldatei-Datenstruktur zu, wenn eine Anwendung eine Dateibündeldatei öffnet (unter Verwendung von fFBFopen). Die Dateibündeldatei- Datenstrukturen, wie beispielsweise die Datenstrukturen 440, 450 und 460, enthalten jeweils einen Zeiger, der auf den Beginn der Dateibündeldatei in dem Dateibündel verweist, einen Dateizeiger für die Dateibündeldatei, sowie den Handle des Dateibündels in FBTable 430. Bei einer bevorzugten Ausführung behält die Dateibündel-API eine Datenstruktur bei, die der Datensystemdatei-Datenstruktur für jede Dateibündeldatei gleicht, die ein Verzeichnis enthält.
- Fig. 5 ist ein Übersichtsflußdiagramm einer Funktion fFBcreate, mit der ein Dateibündel erzeugt wird. Die Parameter, die dieser Funktion zugeleitet und von ihr empfangen werden, entsprechen vorzugsweise denen der Funktion fereate der Dateisystem-API 302, die die Dateibündel-API 303 nutzt. Die Funktion führt einen Handle zu dem erzeugten Dateibündel zurück, der eine Dateisystemdatei-Datenstruktur 420 erzeugt und einen Handle zu dem Dateibündel rückführt. In Schritt S01 ruft die Funktion Funktion fcreate zum Erzeugen des Dateibündels auf, die eine Dateisystemdatei-Datenstruktur 420 erzeugt und einen Handle zu dem Datei-Handle rückführt. Wenn in Schritt SO&sub2; eine Fehlermeldung von der Funktion fcreate rückgeführt wird, führt die Funktion eine Fehlermeldung zurück, und ansonsten wird die Funktion in Schritt SO&sub3; fortgesetzt. In Schritt SO&sub3; ruft die Funktion Funktion fwrite zum Initialisieren des Dateibündels auf. Zu dieser Initialisierung gehört normalerweise die Initialisierung der Verzeichnishierarchie und der Dateizuweisungstabellen. In Schritt SO&sub4; initialisiert die Funktion FBTable 430 für das erzeugte Dateibündel und anschließend führt die Funktion FBhandle zurück, der auf den FBTable-Eintrag verweist.
- Fig. 6 ist ein Übersichtsflußdiagramm von fFBopen, mit der ein vorhandenes Dateibündel geöffnet wird. Die dieser Funktion zugeleiteten und von ihr empfangenen Parameter entsprechen vorzugsweise denen der Funktion fopen. Die Funktion führt einen Handle zu dem geöffneten Dateibündel zurück. In Schritt 601 führt die Funktion, wenn die Datei bereits geöffnet ist, wie dies von FBTable angezeigt wird, eine Fehlermeldung zurück, und ansonsten wird die Funktion in Schritt 602 fortgesetzt. In Schritt 602 ruft die Funkti on Funktion fopen zum Öffnen des Dateibündels auf. In Schritt 603 führt die Funktion, wenn von der Funktion fopen eine Fehlermeldung zurückgeführt wird, eine Fehlermeldung zurück, und ansonsten wird die Funktion in Schritt 604 fortgesetzt. In Schritt 604 ruft die Funktion Funktion fread zum Lesen von Identifizierungsdaten aus dem Dateibündel auf. Wenn in Schritt 605 die geöffnete Datei ein gültiges Dateibündel ist, wird die Funktion in Schritt 606 fortgesetzt, und ansonsten führt die Funktion eine Fehlermeldung zurück. In Schritt 606 weist die Funktion die geöffneten Dateibündel FB-Table zu und initialisiert sie, und die Funktion kehrt zurück.
- Fig. 7 ist ein Übersichtsflußdiagramm einer Funktion fFBFcreate, mit der eine Dateibündeldatei erzeugt wird. Die dieser Funktion zugeleiteten und von ihr empfangenen Parameter entsprechen vorzugsweise denen der Funktion fcreate. Der Funktion wird der Dateibündel-Handle (Fbhandle) zugeleitet, und sie führt der offenen Dateibündeldatei einen Handle (FBFhandle) zurück. In Schritt 701 ruft die Funktion Funktion fread auf, um das Dateibündelverzeichnis zu lesen und festzustellen, ob die Dateibündeldatei bereits existiert. In Schritt 702 führt die Funktion, wenn die Dateibündeldatei bereits existiert, eine Fehlermeldung zurück, und ansonsten wird die Funktion in Schritt 703 fortgesetzt. In Schritt 703 ruft die Funktion Funktion fwrite zum Erzeugen der Dateibündeldatei auf. Diese Erzeugung schließt das Hinzufügen eines Verzeichniseintrages zu dem Dateibündel ein. In Schritt 704 weist die Funktion der erzeugten Dateibündeldatei eine Dateibündeldatei-Datenstruktur zu und initialisiert sie, und kehrt zurück.
- Funktion fFBFopen ähnelt Funktion fFBFcreate. Der Hauptunterschied besteht darin, daß die Dateibündeldatei, die geöffnet werden soll, bereits existieren muß.
- Fig. 8 ist ein Übersichtsflußdiagramm einer Funktion fFBFwrite, mit der Daten in eine Dateibündeldatei geschrieben werden. Die dieser Funktion zugeleiteten und von ihr empfangenen Parameter entsprechen vorzugsweise denen der Funktion fwrite zugeleiteten. Der Funktion wird der Handle (FBFhandle) der Dateibündeldatei zugeleitet. In Schritt 801 wird die Funktion, wenn die Dateibündeldatei offen ist (die Funktion prüft, um sicherzustellen, daß der Handle auf eine gültige FB-Datei-Datenstruktur verweist), in Schritt 802 fortgesetzt, und ansonsten führt die Funktion eine Fehlermeldung zurück. In Schritt 802 wird die Funktion, wenn das Schrieben die Vergrößerung der Dateigröße erforderlich macht, den Schritt 803 fortgesetzt, und ansonsten wird die Funktion in Schritt 804 fortgesetzt. In Schritt 803 weist die Funktion der Dateibündeldatei Speicherplatz in dem Dateibündel zu. In Schritt 804 ruft die Funktion Funktion fseek auf, um den Dateizeiger für das Dateibündel so zu positionieren, daß der dem Speicherplatz in Dateibündeldatei entspricht, an dem der Schreibvorgang beginnen soll. In Schritt 805 ruft die Funktion Funktion fwrite auf, um die Daten in die Datei zu schreiben. In Schritt 806 aktualisiert die Funktion den Dateibündeldatei-Zeiger in der Dateibündeldatei-Datenstruktur, und die Funktion kehrt zurück.
- Funktion fFBFread ähnelt Funktion fFBFwrite. Der Hauptunterschied besteht darin, daß beim Lesen kein Speicherplatz zugewiesen wird.
- Mit Funktion fFBFseek wird eine Funktion ausgeführt, die analog zur Funktion fseek ist. Der fFBFseek wird ein Dateibündeldatei-Handle zugeführt, und sie positioniert den Dateizeiger für diese Dateibündeldatei neu.
- Obwohl die vorliegende Erfindung anhand einer bevorzugten Ausführung beschrieben wurde, soll die Erfindung nicht auf diese Ausführungen beschränkt sein. Der Schutzumfang der vorliegenden Erfindung wird durch die folgenden Ansprüche definiert.
Claims (8)
1. Verfahren in einem Computersystem zum Speichern von Daten in einem
zusammengesetzten Dokument, in dem Daten in einer Vielzahl von Formaten
gespeichert sind, wobei jedes Format ein Eigenformat eines Computerprogramms
ist und das Computersystem ein Dateisystem zum Organisieren von Daten in
Dateien des Dateisystems hat und das Verfahren die folgenden Schritte umfaßt:
Erzeugen einer Datei des Dateisystems, und gekennzeichnet durch:
Speichern einer Verzeichnisstruktur in der erzeugten Datei, wobei die
Verzeichnisstruktur auf Unterdateien hinweist, die in der erzeugten Datei enthalten sind;
für jedes Computerprogramm:
Erzeugen einer Unterdatei in der erzeugten Datei durch Zuweisen einer
Speicherstelle für die Unterdatei und durch Speichern eines Namens der Unterdatei
und der zugewiesenen Speicherstelle in der Verzeichnisstruktur; und
Speichern von Daten in dem Eigenformat des Computerprogramms in der
erzeugten Unterdatei an der zugewiesenen Speicherstelle, wobei auf die Daten in
dem Eigenformat mit dem Computerprogramm zugegriffen werden kann.
2. Verfahren nach Anspruch 1, wobei der Schritt des Speicherns durch das
Computerprogramm ausgeführt wird.
3. Verfahren nach Anspruch 1, wobei jede Unterdatei einen Namen hat und die
Verzeichnisstruktur einen Verweis von dem Namen der Unterdatei auf die
zugewiesene Speicherstelle für die Unterdatei enthält.
4. Verfahren nach Anspruch 1, wobei das Verzeichnis hierarchisch ist.
5. Computersystem zum Speichern von Daten, die von einer Vielzahl von
Anwendungen erzeugt wurden, in einer Dateisystemdatei, das umfaßt:
eine Einrichtung zum Erzeugen einer Dateisystemdatei;
gekennzeichnet durch:
eine Einrichtung, die eine Verzeichnisstruktur in der erzeugten Dateisystemdatei
speichert;
eine Einrichtung, die eine Unterdatei in der erzeugten Datensystemdatei zum
Speichern von durch eine Anwendung erzeugten Daten erzeugt;
eine Einrichtung, die die Anwendung, die die Daten erzeugt, auffordert, die Daten
in der erzeugten Unterdatei zu speichern; und
eine Einrichtung, die von der aufgeforderten Anwendung gesteuert die erzeugten
Daten in der erzeugten Unterdatei speichert.
6. Verfahren in einem Computersystem zum Zugriff auf Daten in einem
Dateibündel, wobei das Computersystem ein Dateisystem hat, das Dateibündel eine Datei
des Dateisystems ist, das Dateibündel eine Verzeichnisstruktur und eine Vielzahl
von Unterdateien enthält, wobei die Verzeichnisstruktur von Kennungen jeder
Unterdatei auf Speicherstellen in dem Dateibündel verweist, in dem die
Unterdatei enthalten ist, wobei das Verfahren die folgende Schritte umfaßt:
gesteuert von einem ersten Anwenderprogramm:
Öffnen des Dateibündels durch Aufrufen eines Öffnungsvorgangs, der von dem
Dateisystem zur Verfügung gestellt wird;
Identifizieren einer Unterdatei in dem geöffneten Dateibündel, die von einem
zweiten Anwenderprogramm erzeugte Daten enthält; und
Auffordern des zweiten Anwenderprogramms zum Zugriff auf die Daten in der
identifizierten Unterdatei; und
gesteuert von dem zweiten Anwenderprogramm:
Öffnen des Dateibündels durch Aufrufen des Öffnungsvorgangs, der von dem
Dateisystem zur Verfügung gestellt wird wird;
Öffnen der identifizierten Unterdatei durch Aufrufen eines
Unterdatei-Öffnungsvorgangs, wobei der Unterdatei-Öffnungsvorgang auf die Verzeichnisstruktur des
Dateibündels zugreift, um eine Speicherstelle der identifizierten Unterdatei in
dem Dateibündel zu bestimmen; und
Zugriff auf Daten der geöffneten Unterdatei.
7. Verfahren nach Anspruch 6, wobei die von dem zweiten Anwenderprogramm
erzeugten Daten in einem Eigenformat des zweiten Anwenderprogramms
vorliegen.
8. Computerlesbarer Speicher für ein Computersystem, wobei das Computersystem
ein Dateisystem hat und der Speicher eine Datei des Dateisystems enthält und
die Datei umfaßt:
eine Vielzahl von Unterdateien, wobei jede Unterdatei Daten und eine Kennung
hat und an einer Speicherstelle in der Datei gespeichert ist, die Daten jeder
Unterdatei durch ein Anwenderprogramm erzeugt werden und in einem Eigenformat
des erzeugenden Anwenderprogramms vorliegen; und
eine Verzeichnisstruktur, die von der Kennung jeder Unterdatei auf die
Speicherstelle der Unterdatei verweist, wobei das erzeugende Anwenderprogramm für
jede Unterdatei auf die Unterdatei zugreifen kann.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US90924592A | 1992-07-06 | 1992-07-06 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69326719D1 DE69326719D1 (de) | 1999-11-18 |
DE69326719T2 true DE69326719T2 (de) | 2000-04-06 |
Family
ID=25426883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69326719T Expired - Lifetime DE69326719T2 (de) | 1992-07-06 | 1993-07-06 | Verfahren und System zur Organisation der internen Struktur einer Datei |
Country Status (7)
Country | Link |
---|---|
US (1) | US5664178A (de) |
EP (1) | EP0578209B1 (de) |
JP (1) | JP3902797B2 (de) |
KR (1) | KR100359670B1 (de) |
AT (1) | ATE185633T1 (de) |
CA (1) | CA2099916C (de) |
DE (1) | DE69326719T2 (de) |
Families Citing this family (74)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5506983A (en) * | 1992-07-06 | 1996-04-09 | Microsoft Corporation | Method and system for transactioning of modifications to a tree structured file |
US5873097A (en) * | 1993-05-12 | 1999-02-16 | Apple Computer, Inc. | Update mechanism for computer storage container manager |
US5652879A (en) * | 1993-05-12 | 1997-07-29 | Apple Computer, Inc. | Dynamic value mechanism for computer storage container manager enabling access of objects by multiple application programs |
US5870764A (en) * | 1993-05-12 | 1999-02-09 | Apple Computer, Inc. | Method of managing a data structure for concurrent serial and parallel revision of a work |
NL9401237A (nl) * | 1994-07-28 | 1996-03-01 | Oce Nederland Bv | Afdrukinrichting. |
US6026416A (en) * | 1996-05-30 | 2000-02-15 | Microsoft Corp. | System and method for storing, viewing, editing, and processing ordered sections having different file formats |
US6401099B1 (en) | 1996-12-06 | 2002-06-04 | Microsoft Corporation | Asynchronous binding of named objects |
US6460058B2 (en) * | 1996-12-06 | 2002-10-01 | Microsoft Corporation | Object-oriented framework for hyperlink navigation |
US6185560B1 (en) | 1998-04-15 | 2001-02-06 | Sungard Eprocess Intelligance Inc. | System for automatically organizing data in accordance with pattern hierarchies therein |
US6018745A (en) * | 1997-12-23 | 2000-01-25 | Ericsson Inc. | Coupled file access |
US7346848B1 (en) | 2000-06-21 | 2008-03-18 | Microsoft Corporation | Single window navigation methods and systems |
US7155667B1 (en) | 2000-06-21 | 2006-12-26 | Microsoft Corporation | User interface for integrated spreadsheets and word processing tables |
US7191394B1 (en) | 2000-06-21 | 2007-03-13 | Microsoft Corporation | Authoring arbitrary XML documents using DHTML and XSLT |
WO2001098928A2 (en) | 2000-06-21 | 2001-12-27 | Microsoft Corporation | System and method for integrating spreadsheets and word processing tables |
US7117435B1 (en) | 2000-06-21 | 2006-10-03 | Microsoft Corporation | Spreadsheet fields in text |
US7000230B1 (en) | 2000-06-21 | 2006-02-14 | Microsoft Corporation | Network-based software extensions |
US6883168B1 (en) | 2000-06-21 | 2005-04-19 | Microsoft Corporation | Methods, systems, architectures and data structures for delivering software via a network |
US6948135B1 (en) | 2000-06-21 | 2005-09-20 | Microsoft Corporation | Method and systems of providing information to computer users |
US7624356B1 (en) | 2000-06-21 | 2009-11-24 | Microsoft Corporation | Task-sensitive methods and systems for displaying command sets |
US6874143B1 (en) | 2000-06-21 | 2005-03-29 | Microsoft Corporation | Architectures for and methods of providing network-based software extensions |
US6594674B1 (en) * | 2000-06-27 | 2003-07-15 | Microsoft Corporation | System and method for creating multiple files from a single source file |
US6970892B2 (en) * | 2001-02-16 | 2005-11-29 | Stratus Technologies Bermuda Ltd | Implementing standards-based file operations in proprietary operating systems |
KR100748498B1 (ko) * | 2001-05-23 | 2007-08-13 | 엘지전자 주식회사 | 임베디드 시스템의 파일 읽기 방법 |
US6947947B2 (en) * | 2001-08-17 | 2005-09-20 | Universal Business Matrix Llc | Method for adding metadata to data |
CN1591400A (zh) * | 2001-11-09 | 2005-03-09 | 无锡永中科技有限公司 | 集成数据处理*** |
US7415672B1 (en) | 2003-03-24 | 2008-08-19 | Microsoft Corporation | System and method for designing electronic forms |
US7370066B1 (en) | 2003-03-24 | 2008-05-06 | Microsoft Corporation | System and method for offline editing of data files |
US7275216B2 (en) | 2003-03-24 | 2007-09-25 | Microsoft Corporation | System and method for designing electronic forms and hierarchical schemas |
US7296017B2 (en) | 2003-03-28 | 2007-11-13 | Microsoft Corporation | Validation of XML data files |
US7913159B2 (en) | 2003-03-28 | 2011-03-22 | Microsoft Corporation | System and method for real-time validation of structured data files |
US7516145B2 (en) | 2003-03-31 | 2009-04-07 | Microsoft Corporation | System and method for incrementally transforming and rendering hierarchical data files |
US7168035B1 (en) | 2003-06-11 | 2007-01-23 | Microsoft Corporation | Building a view on markup language data through a set of components |
US7451392B1 (en) | 2003-06-30 | 2008-11-11 | Microsoft Corporation | Rendering an HTML electronic form by applying XSLT to XML using a solution |
US7197515B2 (en) | 2003-06-30 | 2007-03-27 | Microsoft Corporation | Declarative solution definition |
US7406660B1 (en) | 2003-08-01 | 2008-07-29 | Microsoft Corporation | Mapping between structured data and a visual surface |
US7581177B1 (en) | 2003-08-01 | 2009-08-25 | Microsoft Corporation | Conversion of structured documents |
US7334187B1 (en) | 2003-08-06 | 2008-02-19 | Microsoft Corporation | Electronic form aggregation |
US20050068582A1 (en) * | 2003-09-30 | 2005-03-31 | Ferlitsch Andrew R. | Systems and methods for providing printing with document indicia |
EP1697942A1 (de) * | 2003-12-19 | 2006-09-06 | Koninklijke Philips Electronics N.V. | Verfahren zum zugreifen auf dateninhalt in speicher-bausteinen |
US8819072B1 (en) | 2004-02-02 | 2014-08-26 | Microsoft Corporation | Promoting data from structured data files |
US7430711B2 (en) | 2004-02-17 | 2008-09-30 | Microsoft Corporation | Systems and methods for editing XML documents |
US7318063B2 (en) | 2004-02-19 | 2008-01-08 | Microsoft Corporation | Managing XML documents containing hierarchical database information |
US7496837B1 (en) | 2004-04-29 | 2009-02-24 | Microsoft Corporation | Structural editing with schema awareness |
US7568101B1 (en) | 2004-05-13 | 2009-07-28 | Microsoft Corporation | Digital signatures with an embedded view |
US7281018B1 (en) | 2004-05-26 | 2007-10-09 | Microsoft Corporation | Form template data source change |
US7774620B1 (en) | 2004-05-27 | 2010-08-10 | Microsoft Corporation | Executing applications at appropriate trust levels |
US7692636B2 (en) | 2004-09-30 | 2010-04-06 | Microsoft Corporation | Systems and methods for handwriting to a screen |
US7516399B2 (en) | 2004-09-30 | 2009-04-07 | Microsoft Corporation | Structured-document path-language expression methods and systems |
US8487879B2 (en) | 2004-10-29 | 2013-07-16 | Microsoft Corporation | Systems and methods for interacting with a computer through handwriting to a screen |
US7584417B2 (en) | 2004-11-15 | 2009-09-01 | Microsoft Corporation | Role-dependent action for an electronic form |
US7712022B2 (en) | 2004-11-15 | 2010-05-04 | Microsoft Corporation | Mutually exclusive options in electronic forms |
US7509353B2 (en) | 2004-11-16 | 2009-03-24 | Microsoft Corporation | Methods and systems for exchanging and rendering forms |
US7721190B2 (en) | 2004-11-16 | 2010-05-18 | Microsoft Corporation | Methods and systems for server side form processing |
US7904906B2 (en) * | 2004-11-23 | 2011-03-08 | Stratus Technologies Bermuda Ltd. | Tracking modified pages on a computer system |
US7904801B2 (en) | 2004-12-15 | 2011-03-08 | Microsoft Corporation | Recursive sections in electronic forms |
US7437376B2 (en) | 2004-12-20 | 2008-10-14 | Microsoft Corporation | Scalable object model |
US7937651B2 (en) | 2005-01-14 | 2011-05-03 | Microsoft Corporation | Structural editing operations for network forms |
US7725834B2 (en) | 2005-03-04 | 2010-05-25 | Microsoft Corporation | Designer-created aspect for an electronic form template |
US8010515B2 (en) | 2005-04-15 | 2011-08-30 | Microsoft Corporation | Query to an electronic form |
US8521752B2 (en) * | 2005-06-03 | 2013-08-27 | Osr Open Systems Resources, Inc. | Systems and methods for arbitrary data transformations |
US7543228B2 (en) | 2005-06-27 | 2009-06-02 | Microsoft Corporation | Template for rendering an electronic form |
US8200975B2 (en) | 2005-06-29 | 2012-06-12 | Microsoft Corporation | Digital signatures for network forms |
US7613996B2 (en) | 2005-08-15 | 2009-11-03 | Microsoft Corporation | Enabling selection of an inferred schema part |
US8001459B2 (en) | 2005-12-05 | 2011-08-16 | Microsoft Corporation | Enabling electronic documents for limited-capability computing devices |
US7779343B2 (en) | 2006-01-30 | 2010-08-17 | Microsoft Corporation | Opening network-enabled electronic documents |
US7953879B1 (en) * | 2006-01-31 | 2011-05-31 | Symantec Operating Corporation | System and method for assigning symbolic names to data streams |
US8949933B2 (en) * | 2006-08-15 | 2015-02-03 | International Business Machines Corporation | Centralized management of technical records across an enterprise |
US7512748B1 (en) | 2006-08-17 | 2009-03-31 | Osr Open Systems Resources, Inc. | Managing lock rankings |
US8539228B1 (en) | 2006-08-24 | 2013-09-17 | Osr Open Systems Resources, Inc. | Managing access to a resource |
US8024433B2 (en) | 2007-04-24 | 2011-09-20 | Osr Open Systems Resources, Inc. | Managing application resources |
US7949693B1 (en) | 2007-08-23 | 2011-05-24 | Osr Open Systems Resources, Inc. | Log-structured host data storage |
US9122691B2 (en) * | 2010-05-13 | 2015-09-01 | International Business Machines Corporation | System and method for remote file search integrated with network installable file system |
US8903874B2 (en) | 2011-11-03 | 2014-12-02 | Osr Open Systems Resources, Inc. | File system directory attribute correction |
US9830329B2 (en) | 2014-01-15 | 2017-11-28 | W. Anthony Mason | Methods and systems for data storage |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4899136A (en) * | 1986-04-28 | 1990-02-06 | Xerox Corporation | Data processor having a user interface display with metaphoric objects |
US5101345A (en) * | 1988-11-29 | 1992-03-31 | International Business Machines Inc. | Method of filing stapled documents with a staple relationship involving one or more application programs |
US5089956A (en) * | 1988-11-29 | 1992-02-18 | International Business Machines Corporation | Method of distributing related documents to identified end users in an information processing system |
US5179718A (en) * | 1988-11-29 | 1993-01-12 | International Business Machines Corporation | Method of filing having a directed relationship through defining a staple relationship within the context of a folder document |
JPH02297772A (ja) * | 1989-05-11 | 1990-12-10 | Mitsubishi Electric Corp | ディジタルデータの記緑方法 |
JPH02297773A (ja) * | 1989-05-11 | 1990-12-10 | Mitsubishi Electric Corp | ディジタルデータの記緑方法 |
US5162992A (en) * | 1989-12-19 | 1992-11-10 | International Business Machines Corp. | Vector relational characteristical object |
US5237679A (en) * | 1990-05-24 | 1993-08-17 | International Business Machines Corporation | Method and system for automatic deletion of a folder having temporary document relationships within a data processing system |
US5204947A (en) * | 1990-10-31 | 1993-04-20 | International Business Machines Corporation | Application independent (open) hypermedia enablement services |
-
1993
- 1993-07-06 AT AT93110801T patent/ATE185633T1/de not_active IP Right Cessation
- 1993-07-06 EP EP93110801A patent/EP0578209B1/de not_active Expired - Lifetime
- 1993-07-06 CA CA002099916A patent/CA2099916C/en not_active Expired - Lifetime
- 1993-07-06 DE DE69326719T patent/DE69326719T2/de not_active Expired - Lifetime
- 1993-07-06 KR KR1019930012596A patent/KR100359670B1/ko not_active IP Right Cessation
- 1993-07-06 JP JP16714393A patent/JP3902797B2/ja not_active Expired - Lifetime
-
1995
- 1995-06-07 US US08/477,084 patent/US5664178A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US5664178A (en) | 1997-09-02 |
CA2099916C (en) | 2002-12-24 |
ATE185633T1 (de) | 1999-10-15 |
EP0578209B1 (de) | 1999-10-13 |
EP0578209A3 (de) | 1994-03-16 |
JP3902797B2 (ja) | 2007-04-11 |
CA2099916A1 (en) | 1994-01-07 |
KR100359670B1 (ko) | 2003-01-29 |
KR940006034A (ko) | 1994-03-23 |
EP0578209A2 (de) | 1994-01-12 |
DE69326719D1 (de) | 1999-11-18 |
JPH06175898A (ja) | 1994-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69326719T2 (de) | Verfahren und System zur Organisation der internen Struktur einer Datei | |
DE69317443T2 (de) | Dateienumsetzungssystem | |
DE69531119T2 (de) | Datentransfer mit erweitertem Format für die Zwischenablage | |
DE69229982T2 (de) | Verfahren und Gerät um ein rechnergestütztes Dateiensystem zu betreiben | |
DE69429378T2 (de) | Gemeinsamer Speicherbereich für lange und kurze Dateinamen | |
DE69332672T2 (de) | Verfahren und System zum Einbinden von Änderungen in hierarchisch strukturierten Daten | |
DE3586273T2 (de) | Implizite erzeugung einer superblockstruktur in einem vieldaten-edierungsgeraet. | |
DE69031494T2 (de) | Verfahren zum lesen und schreiben von dateien auf nichtlöschbaren speichermedien | |
DE69229121T2 (de) | Verfahren und vorrichtung zur herstellung einer cd-rom-disc zur verwendung mit merhfachbetriebsystemen | |
DE69525243T2 (de) | System zum binden von dokumentteilen und editoren in einer mensch-maschinen-schnittstelle | |
DE60319229T2 (de) | Verfahren und system zur erweiterung der api eines dateisystems | |
DE69328053T2 (de) | Verzeichnissystem für Mehrfachdateiennamen | |
DE3586272T2 (de) | Integriertes vieldaten-edierungsgeraet. | |
DE3586274T2 (de) | Vieldaten-edierungsgeraet mit gebrauch von attributstroemen fuer textobjekte. | |
DE69428848T2 (de) | Mehrsprachige Standardressourcen | |
DE112010003925B4 (de) | Erweiterbare Zugriffssteuerungslisten-Grundstruktur | |
DE3855475T2 (de) | Software-Verwaltungsstruktur | |
DE69623227T2 (de) | Verfahren und System zur Berechnung von Dateinamen mit hoher Wahrscheinlichkeit der Eindeutigkeit | |
DE69528738T2 (de) | Systeme und Verfahren zur Herstellung und Auffrischung zusammengesetzter Dokumente | |
DE69700574T2 (de) | Verfahren zum Cache-Speichern von Netzwerk- und CD-ROM-Zugriffen unter Verwendung einer lokalen Festplatte | |
DE69600794T2 (de) | Graphische entwicklungs- und verwaltungsumgebung für anwendungsprogramme | |
DE69425017T2 (de) | Verkapselung in Objekten von extrahierten Teilen von Dokumenten | |
DE69400870T2 (de) | Dynamisches verknüpfungssystem | |
DE69600754T2 (de) | Aufteilung einer Teilung in einem Plattenspeichersystem | |
DE69127399T2 (de) | Verfahren zur automatischen Löschung vorübergehender Dokumentverbindungen in einem Datenverarbeitungssystem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |