DE19983359B4 - Verfahren und Einrichtung zum Verwalten von Dateien in einem Speichermedium - Google Patents

Verfahren und Einrichtung zum Verwalten von Dateien in einem Speichermedium Download PDF

Info

Publication number
DE19983359B4
DE19983359B4 DE19983359T DE19983359T DE19983359B4 DE 19983359 B4 DE19983359 B4 DE 19983359B4 DE 19983359 T DE19983359 T DE 19983359T DE 19983359 T DE19983359 T DE 19983359T DE 19983359 B4 DE19983359 B4 DE 19983359B4
Authority
DE
Germany
Prior art keywords
file
storage medium
files
registry
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE19983359T
Other languages
English (en)
Other versions
DE19983359T1 (de
Inventor
Mark T. Portland Gross
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE19983359T1 publication Critical patent/DE19983359T1/de
Application granted granted Critical
Publication of DE19983359B4 publication Critical patent/DE19983359B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Automatic Tape Cassette Changers (AREA)

Abstract

Verfahren zum Verwalten eines Speichermediums, umfassend:
Durchsuchen (502) des Speichermediums nach einer ausführbaren Code oder Daten enthaltenden ersten Datei, die auch eine in der ersten Datei enthaltene Bezugnahme auf eine ausführbaren Code oder Daten enthaltende zweite Datei, die zu einem neuen Ort auf dem Speichermedium bewegt worden ist, aufweist, wobei die Bezugnahme ein Suchpfad zu einem Ort auf dem Speichermedium ist, an dem sich die zweite Datei aufhält; und
Aktualisieren (505) der in der ersten Datei enthaltenen Bezugnahme derart, daß sie anzeigt, daß die zweite Datei zu dem neuen Ort bewegt worden ist, wobei die aktualisierte Bezugnahme ein neuer Suchpfad zu einem Ort auf dem Speichermedium ist, zu dem die zweite Datei bewegt worden ist.

Description

  • Die Erfindung betrifft ein Verfahren zum Verwalten eines Speichermediums eines Computersystems sowie einen eine solche Verwaltung ausführenden Speichermediummanager und ein diesen Speichermediummanager enthaltendes Computersystem.
  • Die Erfindung befasst sich mit der Problematik des Analysierens von Datei-Abhängigkeiten von Dateien auf einem Speichermedium und mit dem Aktualisieren von Abhängigkeitsverknüpfungen derart, daß ein Bewegen/Verschieben einer verknüpften Datei nicht die Funktionalität der Datei mit einer Abhängigkeit verringert. Dateiabhängigkeiten sind vorhanden, wenn eine erste Datei Daten aus einer zweiten Datei erfordert. Die erste Datei kann mit der zweiten Datei über eine Registraturdatei (oder Registry-Datei) verknüpft (linked) sein, die auf die zweite Datei verweist. Alternativ kann die erste Datei direkt mit der zweiten Datei über eine Bezugnahme oder Referenz auf die zweite Datei in der ersten Datei verknüpft sein. In Situationen, in denen Dateien von einem Ort eines Speichermediums zu einem anderen bewegt werden, kann es sein, daß die Verknüpfungen zwischen den abhängigen Dateien unterbrochen werden, wenn die Referenzen nicht mehr aktuell sind. Wenn die erste Datei nicht mehr in der Lage ist, die zweite Datei zu lokalisieren, kann es sein, daß die Funktionalität der ersten Datei verringert wird.
  • Eine in der Vergangenheit verwendete Lösung, um die Unterbrechung von Verknüpfungen abhängiger Dateien zu vermeiden, während sich Dateien bewegen, umfaßte das Deinstallieren der Dateien aus ihren ursprünglichen Orten und das Wiederinstallieren der Dateien an ihren neuen Orten. Indem die Dateien neu installiert wurden (Reinstallation), wurden die Verknüpfungen zwischen den bewegten Dateien und den von den bewegten Dateien abhängigen Dateien aktualisiert, um deren aktuelle Orte zu reflektieren. Die Verknüpfungen zu den bewegten Dateien wurden aktualisiert, indem die aktuellen Orte der bewegten Dateien anzeigende neue Referenzen in Registraturen oder direkt in die abhängigen Dateien eingeschrieben wurden.
  • Ein Nachteil dieser Lösung bestand darin, daß der Prozeß des Deinstallierens und Neuinstallierens von Dateien eine beträchtliche Zeitdauer erforderte. Darüber hinaus kann es sein, daß wichtige Daten und Dateien, die nachfolgend von den Dateien erzeugt und mit den Dateien gesichert wurden, versehentlich während des Deinstallationsprozesses gelöscht wurden.
  • In dem "HP-UX Linker and Librarys User's Guide, HP9000 Computers" von HEWLETT-PACKARD, November 1997, B2355–90655, ist ein Linker und ein Linker-Tool ldd beschrieben. Der Linker wird verwendet, um Dateien während der Kompilierung zu verknüpfen. Die Option -W1 -L zum Kompilieren gestattet es dem Linker, einen spezifizierten Pfad zu durchsuchen, bevor die Standardpfade für gemeinsame Bibliotheken durchsucht werden. Das Linker-Tool ldd listet/findet lediglich Abhängigkeiten ausführbarer Dateien. Darüber hinaus druckt ldd Abhängigkeitsbeziehungen und dynamische Pfadinformationen aus. Unter einem dynamischen Pfad wird der Pfad verstanden, der während des Verknüpfens und Kompilierens gefunden wurde. Das Tool ldd wirkt an ausführbaren Dateien, welch neu verknüpft und neu kompiliert werden müssten, wenn ein Pfad zu einer Datei, die verknüpft (linked) wurde, sich ändert.
  • Das US-Patent 5,758,154 beschreibt eine Registrierung von Computeranwendungssoftware. Wenn Anwendungssoftware erstmalig in einen Computer geladen wird, wird eine Registrierungsroutine aufgerufen, die Informationen aus einer Konfigurationsdatei gewinnt und die Informationen in die Registry speichert. Jedes Mal dann, wenn eine neuere Version einer Softwareanwendung auf einen Computer geladen wird, wird die Registry mit den neuen Informationen überschrieben. Ferner ist beschrieben, dass Platzhalter für Dateipfadnamen verwendet werden können und dass ein Server verwendet werden kann, um die Pfadnamen zu gewinnen, um diese in die Platzhalter zu bringen. Wenn sich ein Pfadname ändert und nur Platzhalter verwendet werden, muss der Server aktualisiert werden, um den Pfadnamen über die Platzhalter zu aktualisieren.
  • Aufgabe der Erfindung ist es, die Aktualisierung von Abhängigkeiten von einer bewegten Datei zu beschleunigen, insbesondere ein Deinstallieren und Neuinstallieren von Dateien zu vermeiden.
  • Diese Aufgabe wird erfindungsgemäß durch ein Verfahren mit den Merkmalen des Anspruchs 1, einen Speichermediummanager mit den Merkmalen des Anspruchs 12 bzw. ein Computersystem mit den Merkmalen des Anspruchs 18 gelöst. Vorteilhafte und/oder bevorzugte Weiterbildungen der Erfindung sind in den Unteransprüchen gekennzeichnet. Die vorliegende Erfindung wird beispielhaft und nicht in einem einschränkenden Sinne in den Figuren der begleitenden Zeichnungen veranschaulicht, in welchen gleiche Bezugszeichen auf ähnliche Elemente hinweisen und in welchen:
  • 1 eine Blockdarstellung eines ein Ausführungsbeispiel der vorliegenden Erfindung implementierenden Computersystems ist;
  • 2 eine Blockdarstellung ist, die richtig verknüpfte Dateien in einem Speichermedium veranschaulicht;
  • 3 eine Blockdarstellung ist, die Dateien in einem Speichermedium veranschaulicht, welche Verknüpfungen aufweisen, die unterbrochen sind;
  • 4 eine Blockdarstellung einer Verknüpfungsaktualisierungseinheit gemäß einem Ausführungsbeispiel der vorliegenden Erfindung ist; und
  • 5 ein Ablaufdiagramm ist, das ein Verfahren zum Verwalten von Dateien auf einem Speichermedium gemäß einem Ausführungsbeispiel der vorliegenden Erfindung veranschaulicht.
  • DETAILLIERTE BESCHREIBUNG
  • Es wird auf 1 Bezug genommen, in der ein Computersystem als 100 gezeigt ist, bei welchem ein Ausführungsbeispiel der vorliegenden Erfindung implementiert werden kann. Das Computersystem 100 enthält einen Prozessor 101, der Datensignale verarbeitet. Der Prozessor 101 kann ein Mikroprozessor mit einem komplexen Befehlssatz (CISC), ein Mikroprozessor mit einem reduzierten Befehlssatz (RISC), ein Mikroprozessor mit sehr langen Befehlsworten (VLIW), ein eine Kombination von Befehlssätzen implementierender Prozessor oder eine andere Prozessoreinrichtung sein. 1 zeigt ein Beispiel der vorliegenden Erfindung, das auf einem Einzel-Prozessor-Computersystem 100 implementiert ist. Es ist jedoch klar, daß die vorliegende Erfindung in einem Computersystem implementiert werden kann, das mehrere Prozessoren aufweist. Der Prozessor 101 ist mit einem CPU-Bus 110 gekoppelt, der Datensignale zwischen dem Prozessor 101 und weiteren Komponenten in dem Computersystem 100 übermittelt.
  • Das Computersystem 100 enthält einen Speicher 113. Der Speicher 113 kann eine Speichereinrichtung mit dynamischem Speicher mit wahlfreiem Zugriff (DRAN), mit statischem Speicher mit wahlfreiem Zugriff (SRAM) oder eine andere Speichereinrichtung sein. Der Speicher 113 kann Befehle und durch Datensignale dargestellten Code enthalten, der durch den Prozessor 101 ausgeführt werden kann. Ein Cache-Speicher 102 hält sich innerhalb des Prozessors 101 auf und speichert in dem Speicher 113 gespeicherte Datensignale. Der Cache 102 beschleunigt Speicherzugriffe des Prozessors 101, indem er einen Vorteil aus dessen Lokalität der Zugriffe zieht. Bei einem alternativen Ausführungsbeispiel des Computersystem 100 hält sich der Cache 102 außerhalb des Prozessors 101 auf.
  • Eine Brücken-Speichersteuereinrichtung 111 ist mit dem CPU-Bus 110 und dem Speicher 113 gekoppelt. Die Brücken-Speichersteuereinrichtung 111 lenkt Datensignale zwischen dem Prozessor 101, dem Speicher 113 und weiteren Komponenten in dem Computersystem 100 und bildet eine Brücke für die Datensignale zwischen dem CPU-Bus 110, dem Speicher 113 und einem ersten I/O-Bus 120.
  • Der erste I/O-Bus 120 kann ein Einzelbus oder eine Kombination mehrerer Busse sein. Beispielsweise kann der erste I/O-Bus 120 einen Peripheriekomponentenverbindungsbus (PCI-Bus), einen Personal Computer Memory Card International Association Bus (PCMCIA-Bus), einen NuBus oder weitere Busse umfassen. Der erste I/O-Bus 120 schafft Kommunikationsverbindungen zwischen den Komponenten in dem Computersystem 100. Eine Netzwerksteuereinrichtung 121 ist mit dem ersten I/O-Bus 120 gekoppelt. Die Netzwerksteuereinrichtung 121 verknüpft das Computersystem 100 mit einem (in 1 nicht gezeigten) Netzwerk von Computern und unterstützt die Kommunikation zwischen den Maschinen. Eine Anzeigegerät-Steuereinrichtung 122 ist mit dem ersten I/O-Bus 120 gekoppelt. Die Anzeigegerät-Steuereinrichtung 122 gestattet eine Kopplung eines Anzeigegeräts mit dem Computersystem 100 und dient als Schnittstelle zwischen dem Anzeigegerät und dem Computersystem 100. Die Anzeigegerät-Steuereinrichtung kann eine Monochromanzeigeadapter(MDA)-Karte, eine Farbgrafikadapter(CGA)-Karte, eine Verbesserte-Grafikadapter(EGA)-Karte, eine Erweiterte-Grafik-Array(XGA)-Karte oder eine andere Anzeigegerät-Steuereinrichtung sein. Das Anzeigegerät kann ein Fernsehapparat, ein Computermonitor, eine Flachpaneelanzeige oder eine andere Anzeigeeinrichtung sein. Das Anzeigegerät empfängt Datensignale aus dem Prozessor 101 über die Anzeigegerät-Steuereinrichtung 122 und zeigt die Informationen und Datensignale einem Benutzer des Computersystems 100 an. Optional ist eine Videokamera 123 mit dem ersten I/O-Bus gekoppelt. Die Videokamera 123 dient dazu, ein Abbild eines Objekts aufzunehmen. Die Videokamera 123 kann eine digitale Videokamera mit einer internen digitalen Videoaufnahmehardware sein, die das aufgenommene Bild in digitale grafische Daten umsetzt. Alternativ kann die Videokamera 123 eine analoge Videokamera sein, die eine digitale Videoaufnahmehardware außerhalb der Videokamera 123 zum Digitalisieren der aufgenommenen Bilder aufweist.
  • Ein zweiter I/O-Bus 130 kann ein Einzelbus oder eine Kombination mehrerer Busse sein. Beispielsweise kann der zweite I/O-Bus 130 einen PCI-Bus, einen PCMCIA-Bus, einen NuBus, einen Industriestandardarchitektur(ISA)-Bus oder andere Busse umfassen. Der zweite I/O-Bus 130 schafft Kommunikationsverbindungen zwischen Komponenten in dem Computersystem 100. Ein Speichermedium 131 ist mit dem zweiten I/O-Bus 130 gekoppelt. Das Speichermedium 131 kann eine Datenspeichereinrichtung zum Speichern von Daten enthalten. Die Datenspeichereinrichtung kann ein Festplattenlaufwerk, ein Diskettenlaufwerk, ein CD-ROM-Laufwerk, eine Flash-Speichereinrichtung oder eine andere Speichereinrichtung sein. Das Speichermedium 131 kann eine oder eine Vielzahl der beschriebenen Datenspeichereinrichtungen enthalten.
  • Eine Tastaturschnittstelle 132 ist mit dem zweiten I/O-Bus 130 gekoppelt. Die Tastaturschnittstelle 132 kann eine Tastatursteuereinrichtung oder eine andere Tastaturschnittstelle sein. Die Tastaturschnittstelle 132 kann eine spezielle Einrichtung sein oder sie kann sich in einer anderen Einrichtung, wie beispielsweise einer Bussteuereinrichtung oder einem anderen Controller, aufhalten. Die Tastaturschnittstelle 132 gestattet das Koppeln einer Tastatur mit dem Computersystem 100 und sendet Datensignale aus einer Tastatur zu dem Computersystem 100. Eine Audio-Steuereinrichtung 133 ist optional mit dem zweiten I/O-Bus 130 gekoppelt. Die Audio-Steuereinrichtung 133 dient dazu, das Aufzeichnen und die Wiedergabe von Klängen zu koordinieren, und ist ebenfalls mit dem I/O-Bus 130 gekoppelt.
  • Eine Busbrücke 124 koppelt den ersten I/O-Bus 120 mit dem zweiten I/O-Bus 130. Die Busbrücke 124 dient dazu, Datensignale zwischen dem ersten I/O-Bus 120 und dem zweiten I/O-Bus 130 zu Puffern und für diese eine Brücke zu bilden.
  • Die vorliegende Erfindung bezieht sich auf die Verwendung des Computersystems 100 zum Verwalten von Dateien in einem Speichermedium. Gemäß einem Ausführungsbeispiel wird das Verwalten von Dateien in einem Speichermedium von dem Computersystem 100 in Erwiderung des Empfangens von Sequenzen von Befehlen aus dem Hauptspeicher 113 durch den Prozessor 101 durchgeführt. Derartige Befehle können in den Speicher 113 aus einem anderen computerlesbaren Medium, wie beispielsweise der Datenspeichereinrichtung 131 oder aus einer anderen Quelle über die Netzwerksteuereinrichtung 121 gelesen werden. Die Ausführung der Sequenzen von Befehlen veranlaßt den Prozessor 101, die Dateien in dem Speichermedium zu verwalten, wie im folgenden beschrieben werden wird. Bei einem alternativen Ausführungsbeispiel kann eine fest verdrahtete Schaltung anstelle der oder in Kombination mit den Softwarebefehlen verwendet werden, um die vorliegende Erfindung zu implementieren. So ist die vorliegende Erfindung nicht auf irgendeine spezielle Kombination von Hardwareschaltungen und Software eingeschränkt.
  • 2 ist eine Blockdarstellung, die richtig verknüpfte Dateien in einem Speichermedium 131 veranschaulicht. Das Speichermedium 131 speichert eine Mehrzahl von Dateien 210, 220, 230, 240 und 250. Das Speichermedium 131 enthält eine erste Datei 210, die eine Abhängigkeit von einer zweiten Datei 220 aufweist. Die erste Datei 210 enthält eine Referenz 211 zu der zweiten Datei 220, die die erste Datei direkt mit der zweiten Datei 220 derart verknüpft, daß die erste Datei Daten aus der zweiten Datei 220 erhalten kann. Die Referenz 211 kann einen Pfadnamen enthalten, der einen Ort der zweiten Datei 220 identifiziert.
  • Die erste Datei 210 kann eine ausführbare Datei sein. Eine ausführbare Datei enthält Daten in einem Format, das ein Prozessor direkt ausführen kann. Die erste Datei 210 kann eine Referenz zu einer zweiten ausführbaren Datei, zu einer Datei einer dynamischen Verknüpfungsbibliothek (dynamic link library), einer Datendatei oder einer anderen Datei enthalten. Die erste Datei 210 kann eine dynamischen Verknüpfungsbibliotheksdatei sein. Eine dynamische Verknüpfungsbibliothek ist eine Bibliothek ausführbarer Funktionen oder Daten, die von anderen Dateien verwendet werden können. Typischerweise stellt eine dynamische Verknüpfungsbibliotheksdatei eine oder mehrere spezielle Funktionen zur Verfügung, und eine Datei greift auf diese Funktionen zu, indem sie eine statische oder dynamische Verknüpfung (Verbindung) zu der dynamischen Verknüpfungsbibliotheksdatei erzeugt. Eine statische Verknüpfung bleibt während einer Programmausführung konstant, während eine dynamische Verknüpfung dann von dem Programm erzeugt wird, wenn sie benötigt wird. Dynamische Verknüpfungsbibliotheksdateien können auch Daten enthalten. Dynamische Verknüpfungsbibliotheksdateien weisen typischerweise die Dateinamenserweiterung DLL auf. Die dynamische Verknüpfungsbibliotheksdatei kann eine Referenz zu einer zweiten dynamischen Verknüpfungsbibliotheksdatei oder einer anderen Datei enthalten. Die erste Datei 210 kann auch eine Initialisierungsdatei sein. Initialisierungsdateien sind typischerweise einfache Textdateien, die Konfigurationsinformationen enthalten. Diese Dateien werden von anderen Dateien verwendet, um sich auf Referenzen und Betriebs umgebungen beziehende Informationen zu sichern. Initialisierungsdateien weisen typischerweise die Dateinamenserweiterungen INI auf. Initialisierungsdateien können eine Referenz zu einer ausführbaren Datei, einer Datendatei oder einer anderen Datei enthalten. Die erste Datei 210 kann auch eine Abkürzungsdatei (short cut file) sein. Abkürzungsdateien sind Dateien, die ein Icon auf dem Bildschirm eines Benutzers erzeugen. Wenn sie ausgewählt werden, führen die Abkürzungen ein Programm in einer Datei aus, zu der die Abkürzung verknüpft ist. Eine Abkürzungsdatei kann eine Referenz zu einer ausführbaren Datei enthalten. Abkürzungsdateien haben typischerweise eine Erweiterung einer Programminformationsdatei (PIF – program information file) oder einer Verknüpfungsdatei (LNK – link).
  • Die zweite Datei 220 kann eine dynamische Verknüpfungsbibliotheksdatei sein, die zu einer ersten Datei 210 verknüpft ist, die eine dynamische Verknüpfungsbibliotheksdatei, eine ausführbare Datei oder eine andere Datei ist. Die zweite Datei 220 kann auch eine ausführbare sein, die mit einer ersten Datei 210 verknüpft ist, die eine ausführbare Datei, eine dynamische Verknüpfungsbibliotheksdatei, eine Initialisierungsdatei, eine Abkürzungsdatei oder eine andere Datei ist. Die zweite Datei 210 kann auch eine Datendatei sein, die mit einer ersten Datei 210 verknüpft sein kann, die eine ausführbare Datei, eine Initialisierungsdatei oder eine andere Datei ist.
  • Das Speichermedium 131 enthält eine dritte Datei 230, die eine Abhängigkeit von einer vierten Datei 240 aufweist. Die dritte Datei 230 ist mit der vierten Datei 240 über eine Registraturdatei (Registry-Datei) 250 verknüpft. Eine Registry-Datei 250 ist eine Datenbasis, die von einem Betriebssystem verwendet wird, um Konfigurationsinformationen, Dateiinhalte und Dateiortinformationen zu speichern. Die Registry-Datei 250 enthält eine Pfadnamensdatei 251, die Dateiortinformationen speichert. Die dritte Datei 230 ent hält eine Referenz zu einem globalen einzigartigen Identifizierer (GUID – global unique identifier) 231, der von der dritten Datei 230 benötigte Daten identifiziert. Die Daten können eine Funktion in einer dynamischen Verknüpfungsbibliotheksdatei, einer ausführbaren Datei, einer Datendatei oder andere Daten sein. Ein GUID wird von einem Betriebssystem verwendet, um eine Datei den erforderlichen Daten zuzuordnen. Das Betriebssystem durchsucht die Registry-Datei 250 und verknüpft die Datei, die die Daten aufweist, mit der dritten Datei 230. Das Betriebssystem ist in der Lage, die die Daten aufweisende Datei mit der dritten Datei 230 zu verknüpfen, weil die Registry-Datei 250 Dateiortinformationen der Datei mit den Daten, wie beispielsweise ihren Pfadnamen, enthält. Gemäß 2 weist die vierte Datei 240 die Daten auf und ist mit der dritten Datei 230 über die Registratur (Registry) 250 verknüpft.
  • Die dritte Datei 230 kann eine dynamische Verknüpfungsbibliotheksdatei, eine ausführbare Datei oder eine andere Datei sein. Die vierte Datei kann eine dynamische Verknüpfungsbibliotheksdatei sein, die mit einer dritten Datei verknüpft ist, die eine dynamische Verknüpfungsbibliotheksdatei, eine ausführbare Datei oder eine andere Datei ist. Die vierte Datei 240 kann auch eine ausführbare Datei sein, die mit einer dynamischen Verknüpfungsbibliotheksdatei, einer ausführbaren Datei oder einer anderen Datei verknüpft ist. Die vierte Datei 240 kann auch eine Datendatei sein, die mit einer dynamischen Verknüpfungsbibliotheksdatei, einer ausführbaren Datei oder einer anderen Datei verknüpft ist.
  • 3 ist eine Blockdarstellung, die Dateien mit unterbrochenen Verknüpfungen veranschaulicht. Wenn Datendateien in einem Speichermedium bewegt werden, werden den Dateien neue Pfadnamen gegeben. Solange nicht der Dateiname einer bewegten Datei in einer Datei, die von der bewegten Datei abhängig ist, oder in einer für das Verknüpfen der bewegten Datei verantwortlichen Registratur aktualisiert wird, ist die Verknüpfung (Verbindung) zu der bewegten Datei unterbrochen. 3 veranschaulicht die in 2 gezeigten Dateien, wobei die zweite Datei 220 zu einem neuen Ort in dem Speichermedium 131 bewegt wurde. Der neue Ort in dem Speichermedium 131 kann beispielsweise ein neuer Laufwerksort oder ein neues Verzeichnis sein, wobei der zweiten Datei 220 ein neuer Pfadname gegeben wurde. Die erste Datei 210 enthält eine Referenz 211 zu dem alten Ort der zweiten Datei 220, was durch den Block 320 veranschaulicht ist. Wenn somit die erste Datei 210 versucht, auf die Daten aus der zweiten Datei 220 zuzugreifen, ist die erste Datei 210 nicht in der Lage, eine Schnittstelle zu der zweiten Datei 220 herzustellen.
  • 3 veranschaulicht, daß die vierte Datei 240 zu einem neuen Ort in dem Speichermedium 131 bewegt wurde. Der neue Ort in dem Speichermedium 131 kann beispielsweise ein neuer Laufwerksort oder ein neues Verzeichnis sein, wobei der vierten Datei 240 ein neuer Pfadname gegeben wurde. Die Registry-Datei 250 enthält eine Pfadnamensdatei 251, die eine Referenz zu dem alten Ort der vierten Datei 240 enthält, was durch den Block 340 veranschaulicht ist. Wenn somit ein Betriebssystem versucht, die dritte Datei 230 mit der vierten Datei 240 zu verknüpfen, um es der dritten Datei 230 zu ermöglichen, auf Daten aus der vierten Datei 240 zuzugreifen, so wird die dritte Datei 230 nicht in der Lage sein, eine Schnittstelle zu der vierten Datei 240 herzustellen.
  • 4 ist eine Blockdarstellung, die Module veranschaulicht, die einen Speichermediummanager 400 gemäß einem Ausführungsbeispiel der vorliegenden Erfindung implementieren. Bei einem Ausführungsbeispiel der vorliegenden Erfindung sind die Module durch Software implementiert und halten sich in dem Speichermedium 113 (das in 1 gezeigt ist) als Sequenz von Befehlen auf. Es ist klar, daß die Module auch durch Hardware als mit dem (in 1 gezeigten) Bus 120 gekoppelte Komponenten oder als Kombination von sowohl Hardware als auch Software implementiert werden können.
  • Block 410 repräsentiert eine Managerschnittstelle. Die Managerschnittstelle 410 erlangt die Identität einer Datei, die von einem Ort in dem (in 1 gezeigten) Speichermedium 131 zu einem anderen Ort bewegt worden ist. Gemäß einem Ausführungsbeispiel der vorliegenden Erfindung kann die Managerschnittstelle 410 diese Informationen direkt von einem Betriebssystem des Computersystems 100 erlangen. Gemäß einem alternativen Ausführungsbeispiel der vorliegenden Erfindung kann die Managerschnittstelle 410 eine Benutzerschnittstelle enthalten, die es einem Benutzer ermöglicht, eine Datei zu identifizieren, die der Benutzer von einem Ort auf dem Speichermedium zu einem anderen bewegt. Die Identität der Datei kann ein Pfadname der Datei sein, welcher das Laufwerk und irgendein Verzeichnis und Unterverzeichnisse, in denen die Datei gespeichert ist, den Namen der Datei und eine Erweiterung der Datei umfassen kann.
  • Mit der Managerschnittstelle 410 ist eine Abhängigkeitssucheinheit 420 gekoppelt. Die Abhängigkeitssucheinheit 420 empfängt die Identität der Datei, die bewegt worden ist, von der Managerschnittstelle 410. Die Abhängigkeitssucheinheit 420 durchsucht das Speichermedium 131 nach der Identität irgendeiner Datei, die von der Datei, die bewegt worden ist, abhängig ist und die mit dem vorhergehenden Ort der Datei, die bewegt worden ist, verknüpft ist. Die Abhängigkeitssucheinheit 420 durchsucht das Speichermedium 131 nach irgendeiner Datei, die auf die Datei, die bewegt worden ist, Bezug nimmt (diese referenziert). Die Referenz stellt eine Abhängigkeitsverknüpfung zu der Datei, die bewegt worden ist, zur Verfügung. Die Abhängigkeitssucheinheit 420 enthält eine Registry-Dateischnittstelle 421. Die Registry-Dateischnittstelle 421 durchsucht eine Registry-Datei in dem Speichermedium 131 nach einer Referenz zu der bewegten Datei. Die Registry-Dateischnittstelle 421 greift auf eine Pfadnamensdatei in der Registry-Datei zu, die Dateiortinformationen, wie beispielsweise den Pfadnamen, von Dateien speichert, auf die von der Registry-Datei Bezug genommen wird. Die Registry-Datei kann auf eine bewegte Datei Bezug nehmen, die beispielsweise eine ausführbare Datei, eine dynamische Verknüpfungsbibliotheksdatei, eine Datendatei, eine anwendungsspezifische Datendatei oder eine andere Datei enthalten kann. Die Abhängigkeitssucheinheit 420 enthält eine Dateischnittstelle 422. Die Dateischnittstelle 422 durchsucht Nicht-Registry-Dateien in dem Speichermedium 131 nach einer Referenz (einem Verweis) auf die bewegte Datei. Die Referenz stellt eine Abhängigkeitsverknüpfung zu der bewegten Datei zur Verfügung. Die Dateischnittstelle 422 greift auf sämtliche Nicht-Registry-Dateien auf dem Speichermedium 131 zu und durchsucht die Nicht-Registry-Dateien nach einer Referenz, wie beispielsweise dem Pfadnamen, der bewegten Datei. Die Nicht-Registry-Dateien, auf die zugegriffen werden kann, umfassen dynamische Verknüpfungsbibliotheksdateien, ausführbare Dateien, Initialisierungsdateien, Abkürzungsdateien, und Datendateien. Die Nicht-Registry-Dateien können auf eine bewegte Datei Bezug nehmen, die beispielsweise eine ausführbare Datei, dynamische Verknüpfungsbibliotheksdatei, Datendatei, anwendungsspezifische Datendatei oder eine andere Datei enthalten kann. Wenn die Registry-Schnittstelle 421 oder die Dateischnittstelle 422 eine Referenz auf die bewegte Datei in einer anwendungsspezifischen Datendatei finden, erkennt die Dateischnittstelle 422, daß dies eine Datei ist, die nicht-aktualisierbar ist.
  • Eine Aktualisierungseinheit 430 ist mit der Abhängigkeitssucheinheit 420 gekoppelt. Die Aktualisierungseinheit 430 empfängt die Identität einer aktualisierbaren Datei, die von der bewegten Datei abhängig ist. Die Aktualisierungseinheit 430 aktualisiert die Referenz (Bezugnahme, Verweis) der bewegten Datei in der Datei, die von der bewegten Datei abhängig ist. Die Aktualisierungseinheit 430 enthält eine Pfadschreibeinheit 431. Die Pfadschreibeinheit 431 überschreibt einen alten Pfadnamen der bewegten Datei mit dem neuen Pfadnamen, der den neuen Ort der bewegten Datei wiedergibt. Gemäß einem Ausführungsbeispiel der vorliegenden Erfindung überschreibt die Pfadschreibeinheit 431 alte Pfadnamen der bewegten Dateien, auf die in Registry-Dateien, Initialisierungsdateien und anderen Dateien Bezug genommen wird. Die Aktualisierungseinheit 430 enthält eine Pfadaktualisierungseinheit 432. Die Pfadaktualisierungseinheit 432 aktualisiert einen Suchpfad in einer Datei, die von einer bewegten Datei abhängig ist, derart, daß dieser den neuen Pfadnamen der bewegten Datei enthält. Gemäß einem Ausführungsbeispiel der vorliegenden Erfindung aktualisiert die Pfadaktualisierungseinheit 432 Suchpfade der bewegten Dateien, auf die in dynamischen Verknüpfungsbibliotheksdateien, Abkürzungsdateien und anderen Dateien Bezug genommen wird.
  • Eine Signalisiereinheit (flagging unit) 440 ist mit der Abhängigkeitssucheinheit 420 gekoppelt. Die Signalisiereinheit 440 empfängt die Identität von nicht-aktualisierbaren Dateien, die auf die bewegte Datei Bezug nehmen. Anwendungsspezifische Datendateien und Dateien, die auf anwendungsspezifische Datendateien Bezug nehmen, sind typischerweise in einem eigenen Datenformat geschrieben, welches das Aktualisieren der Dateien problematisch macht. Um zu verhindern, daß eine Datei auf einen aktualisierten Pfadnamen einer anwendungsspezifischen Datendatei Bezug nimmt, bringt die Signalisiereinheit 440 die bewegte Datei zu ihrem ursprünglichen Ort zurück und benachrichtigt den Benutzer. Gemäß einem alternativen Ausführungsbeispiel der vorliegenden Erfindung benachrichtigt die Signalisiereinheit 440 den Benutzer über die unterbrochene Verknüpfung, ohne die bewegte Datei zu ihrem ursprünglichen Ort zurückzubringen.
  • Die Managerschnittstelle 410, die Abhängigkeitssucheinheit 430, die Registry-Schnittstelle 421, die Dateischnittstelle 422, die Aktualisierungseinheit 430, die Pfadschreibeinheit 431, die Pfadaktualisierungseinheit 432 und die Signalisiereinheit 440 können unter Verwendung einer beliebigen bekannten Schaltung oder irgendeiner bekannten Technik implementiert werden. Bei einem Ausführungsbeispiel der vorliegenden Erfindung, bei der der Speichermediummanager 400 in Hardware implementiert ist, halten sich die Abhängigkeitssucheinheit 420, die Registry-Schnittstelle 421, die Dateischnittstelle 422, die Aktualisierungseinheit 430, die Pfadschreibeinheit 431, die Pfadaktualisierungseinheit 432 und die Signalisiereinheit 440 sämtlich auf einem einzigen Siliziumsubstrat auf.
  • 5 ist ein Ablaufdiagramm, das ein Verfahren zum Verwalten (Managen) eines Speichermediums gemäß einem Ausführungsbeispiel der vorliegenden Erfindung veranschaulicht. Beim Schritt 501 wird eine Datei, die von einem ersten Ort zu einem zweiten Ort auf dem Speichermedium bewegt wurde, identifiziert. Gemäß einem Ausführungsbeispiel der vorliegenden Erfindung kann die bewegte Datei durch ein Betriebssystem oder einen Benutzer des Computersystems identifiziert werden.
  • Beim Schritt 502 wird das Speichermedium nach einer ersten Datei durchsucht, die eine Referenz zu der bewegten zweiten Datei aufweist. Gemäß einem Ausführungsbeispiel der vorliegenden Erfindung werden Registry-Dateien und Nicht-Registry-Dateien nach einer Bezugnahme (Referenz) auf die zweite Datei durchsucht. Die Referenz auf die zweite Datei kann ein Pfadname der zweiten Datei sein. Die Nicht-Registry-Dateien, die durchsucht werden, können dynamische Verknüpfungsbibliotheksdateien, ausführbare Dateien, Datendateien, Initialisierungsdateien, Abkürzungsdateien oder andere Dateien umfassen.
  • Beim Schritt 503 wird festgestellt, ob die erste Datei, die auf die bewegte zweite Datei Bezug nimmt, eine aktualisierbare Datei ist. Sofern die erste Datei eine aktualisierbare Datei ist, fährt die Steuerung zum Schritt 505 fort. Sofern die erste Datei eine nicht-aktualisierbare Datei ist, fährt die Steuerung zum Schritt 504 fort. Gemäß einem Ausführungsbeispiel der vorliegenden Erfindung sind Dateien, die anwendungsspezifische Datendateien referenzieren, Dateien, die nicht-aktualisierbar sind.
  • Beim Schritt 504 wird eine Benachrichtigung gesendet, um anzuzeigen, daß eine unterbrochene Verknüpfung zwischen der ersten Datei und der bewegten zweiten Datei vorhanden ist. Gemäß einem Ausführungsbeispiel der vorliegenden Erfindung wird die bewegte zweite Datei zu ihrem ersten Ort zurückgebracht.
  • Beim Schritt 505 wird die Referenz in der ersten Datei derart aktualisiert, daß sie anzeigt, daß sich die zweite Datei zu dem zweiten Ort bewegt hat. Gemäß einem Ausführungsbeispiel der vorliegenden Erfindung kann die Aktualisierung der Referenz erreicht werden, indem ein Suchpfad für die zweite Datei aktualisiert oder die Referenz auf die zweite Datei durch ihren neuen Pfadnamen überschrieben wird.
  • In der vorstehenden Beschreibung wurde die Erfindung unter Bezugnahme auf ihre speziellen Ausführungsbeispiele beschrieben. Es ist jedoch klar, daß verschiedene Modifikationen und Änderungen daran vorgenommen werden können, ohne von dem breiteren Geist und Umfang der vorliegenden Erfindung abzuweichen, wie er in den anhängigen Ansprüchen angegeben ist. Die Beschreibung und die Zeichnungen sind in einem veranschaulichenden und keinem einschränkenden Sinne zu verstehen.

Claims (18)

  1. Verfahren zum Verwalten eines Speichermediums, umfassend: Durchsuchen (502) des Speichermediums nach einer ausführbaren Code oder Daten enthaltenden ersten Datei, die auch eine in der ersten Datei enthaltene Bezugnahme auf eine ausführbaren Code oder Daten enthaltende zweite Datei, die zu einem neuen Ort auf dem Speichermedium bewegt worden ist, aufweist, wobei die Bezugnahme ein Suchpfad zu einem Ort auf dem Speichermedium ist, an dem sich die zweite Datei aufhält; und Aktualisieren (505) der in der ersten Datei enthaltenen Bezugnahme derart, daß sie anzeigt, daß die zweite Datei zu dem neuen Ort bewegt worden ist, wobei die aktualisierte Bezugnahme ein neuer Suchpfad zu einem Ort auf dem Speichermedium ist, zu dem die zweite Datei bewegt worden ist.
  2. Verfahren nach Anspruch 1, wobei der Schritt des Durchsuchens des Speichermediums nach der ersten Datei, die die Bezugnahme auf die zweite Datei aufweist, das Durchsuchen einer Registratur-Datei nach einem Pfadnamen der zweiten Datei umfaßt.
  3. Verfahren nach Anspruch 1, wobei der Schritt des Durchsuchens des Speichermediums nach der ersten Datei, die eine Bezugnahme auf die zweite Datei aufweist, das Durchsuchen von auf dem Speichermedium gespeicherten Nicht-Registratur-Dateien nach einem Pfadnamen der zweiten Datei umfaßt.
  4. Verfahren nach Anspruch 3, wobei das Durchsuchen von auf dem Speichermedium gespeicherten Nicht-Registratur-Dateien das Durchsuchen von Initialisierungsdateien umfaßt.
  5. Verfahren nach Anspruch 3, wobei das Durchsuchen von auf dem Speichermedium gespeicherten Nicht-Registratur-Dateien das Durchsuchen von dynamischen Verknüpfungsbibliotheksdateien umfaßt.
  6. Verfahren nach Anspruch 3, wobei das Durchsuchen von auf dem Speichermedium gespeicherten Nicht-Registratur-Dateien das Durchsuchen von Programminformationsdateien umfaßt.
  7. Verfahren nach Anspruch 3, wobei das Durchsuchen von auf dem Speichermedium gespeicherten Nicht-Registratur-Dateien das Durchsuchen ausführbarer Dateien umfaßt.
  8. Verfahren nach Anspruch 3, wobei das Durchsuchen von auf dem Speichermedium gespeicherten Nicht-Registratur-Dateien das Durchsuchen von Datendateien umfaßt.
  9. Verfahren nach Anspruch 1, wobei der Schritt des Aktualisierens der Bezugnahme das Aktualisieren eines Suchpfades für die Datei umfaßt.
  10. Verfahren nach Anspruch 1, wobei der Schritt des Aktualisierens der Bezugnahme das Ersetzen der Bezugnahme auf die zweite Datei durch eine neue Bezugnahme auf die zweite Datei, die den neuen Ort der Datei reflektiert, umfaßt.
  11. Verfahren nach Anspruch 1, ferner umfassend den Schritt des Erzeugens einer Benachrichtigung (504), wenn die erste Datei eine nicht-aktualisierbare Datei ist.
  12. Speichermediummanager (400), aufweisend: eine Abhängigkeitssucheinheit (420), die ein Speichermedium (131) nach einer ausführbaren Code oder Daten enthaltenden ersten Datei durchsucht, wobei die erste Datei eine in der ersten Datei enthaltene Bezugnahme auf eine spezifizierte, ausführbaren Code oder Daten enthaltende zweite Datei aufweist, wobei die Bezugnahme ein Suchpfad zu einem Ort auf dem Speichermedium ist, an dem sich die zweite Datei aufhält; und eine mit der Abhängigkeitssucheinheit (420) gekoppelte Aktualisierungseinheit (430), die die in der ersten Datei enthaltene Bezugnahme auf die spezifizierte zweite Datei aktualisiert, wobei die aktualisierte Bezugnahme ein neuer Suchpfad zu einem Ort auf dem Speichermedium ist, zu dem die zweite Datei bewegt worden ist.
  13. Speichermediummanager nach Anspruch 12, wobei die Abhängigkeitssucheinheit (420) eine Registratur-Datei-Schnittstelle (421) aufweist, die eine Registratur-Datei in dem Speichermedium (131) nach einem Pfadnamen der spezifizierten zweiten Datei durchsucht.
  14. Speichermediummanager nach Anspruch 12, wobei die Abhängigkeitssucheinheit (420) eine Dateischnittstelle (422) aufweist, die Nicht-Registratur-Dateien in dem Speichermedium (131) nach einem Pfadnamen der spezifizierten zweiten Datei durchsucht.
  15. Speichermediummanager nach Anspruch 12, wobei die Aktualisierungseinheit (430) eine Pfadaktualisierungseinheit (432) enthält, die eine neue Bezugnahme auf die spezifizierte zweite Datei hinzufügt.
  16. Speichermediummanager nach Anspruch 12, wobei die Aktualisierungseinheit (430) eine Pfadschreibeinheit (431) enthält, die die Bezugnahme auf die spezifizierte zweite Datei mit einer neuen Bezugnahme auf die spezifizierte Datei überschreibt.
  17. Speichermediummanager nach Anspruch 12, ferner aufweisend eine mit der Abhängigkeitssucheinheit (420) gekoppelte Signalisiereinheit (440), die eine Benachrichtigung erzeugt, wenn die erste Datei eine nicht-aktualisierbare Datei ist.
  18. Computersystem (100), aufweisend: einen Bus (110, 111, 120, 124, 130); einen mit dem Bus gekoppelten Prozessor (101); ein mit dem Bus gekoppeltes Speichermedium (131); und einen Speichermediummanager (400) nach Anspruch 12.
DE19983359T 1998-07-09 1999-06-28 Verfahren und Einrichtung zum Verwalten von Dateien in einem Speichermedium Expired - Fee Related DE19983359B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/113,810 1998-07-09
US09/113,810 US6192375B1 (en) 1998-07-09 1998-07-09 Method and apparatus for managing files in a storage medium
PCT/US1999/014722 WO2000003334A1 (en) 1998-07-09 1999-06-28 Method and apparatus for managing files in a storage medium

Publications (2)

Publication Number Publication Date
DE19983359T1 DE19983359T1 (de) 2001-05-31
DE19983359B4 true DE19983359B4 (de) 2009-07-09

Family

ID=22351652

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19983359T Expired - Fee Related DE19983359B4 (de) 1998-07-09 1999-06-28 Verfahren und Einrichtung zum Verwalten von Dateien in einem Speichermedium

Country Status (8)

Country Link
US (1) US6192375B1 (de)
JP (1) JP4663878B2 (de)
KR (1) KR100467438B1 (de)
AU (1) AU4844299A (de)
DE (1) DE19983359B4 (de)
GB (1) GB2357173B (de)
TW (1) TW501031B (de)
WO (1) WO2000003334A1 (de)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19839847A1 (de) * 1998-09-02 2000-03-09 Ibm Speichern von Datenobjekten im Speicher einer Chipkarte
US7028019B2 (en) * 1998-11-11 2006-04-11 Wise Solutions, Inc. Method and system of managing software conflicts in computer system that receive, processing change information to determine which files and shared resources conflict with one another
US6832371B1 (en) * 1999-01-04 2004-12-14 Microsoft Corporation Method for automatically updating a computer registry
JP4214651B2 (ja) * 1999-03-31 2009-01-28 ソニー株式会社 データコミュニケーションシステム、データ管理方法
WO2000058837A1 (fr) * 1999-03-26 2000-10-05 Sony Corporation Gestion de fichiers, enregistrement/reproduction de donnees et dispositifs a cet effet
US6606653B1 (en) * 1999-10-07 2003-08-12 International Business Machines Corporation Updating of embedded links in World Wide Web source pages to have the new URLs of their linked target Web pages after such target Web pages have been moved
JP5220974B2 (ja) * 1999-10-14 2013-06-26 ブルアーク ユーケー リミテッド ハードウェア実行又はオペレーティングシステム機能の加速のための装置及び方法
TW552502B (en) * 2000-11-21 2003-09-11 Matsushita Electric Ind Co Ltd File management method and content recording/playback apparatus
US7032124B2 (en) * 2001-03-09 2006-04-18 Greenbaum David M Method of automatically correcting broken links to files stored on a computer
US20030131005A1 (en) * 2002-01-10 2003-07-10 International Business Machines Corporation Method and apparatus for automatic pruning of search engine indices
GB2386712A (en) * 2002-03-20 2003-09-24 Magus Res Ltd Selective updating of an index of webpages by a search engine
US7403955B2 (en) * 2002-03-21 2008-07-22 International Business Machines Corporation Method and system for updating attachment files
US7457822B1 (en) * 2002-11-01 2008-11-25 Bluearc Uk Limited Apparatus and method for hardware-based file system
US8041735B1 (en) 2002-11-01 2011-10-18 Bluearc Uk Limited Distributed file system and method
JP2006508436A (ja) * 2002-11-28 2006-03-09 インターナショナル・ビジネス・マシーンズ・コーポレーション ファイルをハイパーリンクするための方法及びシステム
US7401105B2 (en) * 2003-10-02 2008-07-15 International Business Machines Corporation Method, system, and program product for retrieving file processing software
EP1587324A1 (de) * 2004-04-15 2005-10-19 Deutsche Thomson-Brandt Gmbh Verfahren und Vorrichtung zur Bearbeitung von Metadaten
GB2413409B (en) * 2004-04-23 2006-10-11 Oracle Int Corp Data storage method and system
US20060074979A1 (en) * 2004-09-29 2006-04-06 Martin Kaiser Static sample data switch
US7536378B2 (en) * 2004-09-30 2009-05-19 Sap Ag Copy template/read only data in application tables
US7406457B2 (en) 2004-09-30 2008-07-29 Sap Ag Dynamic sample data switch
US20070028231A1 (en) * 2005-08-01 2007-02-01 International Business Machines Corporation System and method for start menu and application uninstall synchronization
GB2428834A (en) * 2005-08-04 2007-02-07 Ibm Linking objects with graphical user interface items
US9047344B2 (en) * 2005-10-17 2015-06-02 International Business Machines Corporation Guaranteeing data and metadata referential integrity in content management archival solutions
US7599971B1 (en) * 2006-10-03 2009-10-06 Emc Corporation Detecting and managing missing parents between primary and secondary data stores for content addressed storage
US7640406B1 (en) 2006-10-03 2009-12-29 Emc Corporation Detecting and managing orphan files between primary and secondary data stores for content addressed storage
US7603397B1 (en) * 2006-10-03 2009-10-13 Emc Corporation Detecting and managing missing parents between primary and secondary data stores
US7685177B1 (en) 2006-10-03 2010-03-23 Emc Corporation Detecting and managing orphan files between primary and secondary data stores
US8776038B2 (en) 2008-08-07 2014-07-08 Code Systems Corporation Method and system for configuration of virtualized software applications
US8434093B2 (en) 2008-08-07 2013-04-30 Code Systems Corporation Method and system for virtualization of software applications
CN101478619B (zh) * 2009-01-05 2011-11-23 腾讯科技(深圳)有限公司 实现多路语音混音的方法、系统及节点设备
US8954958B2 (en) 2010-01-11 2015-02-10 Code Systems Corporation Method of configuring a virtual application
US8959183B2 (en) 2010-01-27 2015-02-17 Code Systems Corporation System for downloading and executing a virtual application
US9104517B2 (en) 2010-01-27 2015-08-11 Code Systems Corporation System for downloading and executing a virtual application
US9229748B2 (en) * 2010-01-29 2016-01-05 Code Systems Corporation Method and system for improving startup performance and interoperability of a virtual application
US8763009B2 (en) 2010-04-17 2014-06-24 Code Systems Corporation Method of hosting a first application in a second application
US8782106B2 (en) 2010-07-02 2014-07-15 Code Systems Corporation Method and system for managing execution of virtual applications
US9021015B2 (en) 2010-10-18 2015-04-28 Code Systems Corporation Method and system for publishing virtual applications to a web server
US9209976B2 (en) 2010-10-29 2015-12-08 Code Systems Corporation Method and system for restricting execution of virtual applications to a managed process environment
US10204016B1 (en) * 2014-07-08 2019-02-12 EMC IP Holding Company LLC Incrementally backing up file system hard links based on change logs
US9922044B2 (en) * 2015-05-28 2018-03-20 International Business Machines Corporation File path modification based management
US20180367597A1 (en) * 2017-06-15 2018-12-20 Ramakrishnan Kolli Method and System of Sharing a File

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5758154A (en) * 1996-06-05 1998-05-26 Microsoft Corporation Method and system for storing configuration data into a common registry

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5537585A (en) * 1994-02-25 1996-07-16 Avail Systems Corporation Data storage management for network interconnected processors
US5873103A (en) * 1994-02-25 1999-02-16 Kodak Limited Data storage management for network interconnected processors using transferrable placeholders
DE69517945T2 (de) * 1994-09-21 2001-01-11 Kodak Ltd Verbindungsverwalter zum integrieren der daten zwischen anwenderprogrammen
JPH08161210A (ja) * 1994-12-05 1996-06-21 Nippon Telegr & Teleph Corp <Ntt> ファイル管理方法およびファイル管理システム
JP2912840B2 (ja) * 1994-12-07 1999-06-28 富士通株式会社 ファイル管理システム
JP3371044B2 (ja) * 1994-12-28 2003-01-27 株式会社日立製作所 ディスクアレイのための領域割り当て方法およびディスクアレイアクセス方法
JP4215286B2 (ja) * 1995-05-18 2009-01-28 セイコーエプソン株式会社 記憶装置内容整理システムおよび記憶装置内容整理方法
JPH09185633A (ja) * 1996-01-05 1997-07-15 Toshiba Corp ハイパーメディアシステムにおける情報公開支援方法
JPH09288606A (ja) * 1996-04-24 1997-11-04 Oki Electric Ind Co Ltd ファイル管理装置
JPH09293010A (ja) * 1996-04-26 1997-11-11 Mitsubishi Electric Corp 情報同期化方法
US5920873A (en) * 1996-12-06 1999-07-06 International Business Machines Corporation Data management control system for file and database

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5758154A (en) * 1996-06-05 1998-05-26 Microsoft Corporation Method and system for storing configuration data into a common registry

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
>>HP-UX Linker and Libraries User's Guide, HP 9000 Computers<<, HEWLETT-PACKARD, November 1997, B2355-90655 *

Also Published As

Publication number Publication date
GB2357173A (en) 2001-06-13
KR20010071817A (ko) 2001-07-31
AU4844299A (en) 2000-02-01
US6192375B1 (en) 2001-02-20
JP2002520714A (ja) 2002-07-09
GB0100099D0 (en) 2001-02-14
KR100467438B1 (ko) 2005-01-24
TW501031B (en) 2002-09-01
GB2357173B (en) 2003-01-15
WO2000003334A1 (en) 2000-01-20
JP4663878B2 (ja) 2011-04-06
DE19983359T1 (de) 2001-05-31

Similar Documents

Publication Publication Date Title
DE19983359B4 (de) Verfahren und Einrichtung zum Verwalten von Dateien in einem Speichermedium
US7461095B2 (en) Image server store system and method using combined image views
CN1129845C (zh) 计算机系统及修改受操作系统控制的图形用户界面的方法
US5339406A (en) Reconstructing symbol definitions of a dynamically configurable operating system defined at the time of a system crash
DE112011104356B4 (de) Aktualisieren von Software-Images auf der Grundlage von Streaming-Technik
US6618736B1 (en) Template-based creation and archival of file systems
CA2137492C (en) System for and method of providing delta-versioning of the contents of pcte file objects
US6871350B2 (en) User mode device driver interface for translating source code from the user mode device driver to be executed in the kernel mode or user mode
US6049663A (en) Method and facility for uninstalling a computer program package
US5455946A (en) Method and means for archiving modifiable pages in a log based transaction management system
DE10296798B4 (de) SMM-Lader und -Ausführungsmechanismus für Komponentensoftware für mehrere Architekturen
DE69908121T2 (de) Anwendungsprogrammierungsschnittstelle in einem betriebssystem
US6374401B1 (en) System, method, and program for updating registry objects with a cross-platform installation program
US5303392A (en) Accessing current symbol definitions in a dynamically configurable operating system
US7412457B2 (en) Mapping data from multiple data sources into a single or multiple reusable software components
JP2003528391A (ja) ファイルコンテンツの追加的なコピーを記憶する必要無しに、ファイル属性への変更を記憶するための方法及び装置
US20090271451A1 (en) On-Demand Access to Container File Directories
US20060195436A1 (en) Phased migration of database software application
JP2002529812A (ja) 実行時にコンパイルされたコンピュータコードの機能を改変するためのシステム
US6631521B1 (en) System, method, and program for performing program specific operations during the uninstallation of a computer program from a computer system
CA2530918A1 (en) Systems and methods for reconciling image metadata
US6360365B1 (en) System, method, and program for preserving background settings during install and uninstall operations
DE10112751B4 (de) Gerät und Verfahren zum Einstellen einer Umgebung eines Client in einem Client/Server-System und Programm-Aufzeichnungsmedium dafür
US20010056441A1 (en) Method for providing precise cumulative updates and fixes to a software product
US20030088709A1 (en) System and method of composing and decomposing a ROM image

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee