DE69416591T2 - Dateisicherungssystem - Google Patents

Dateisicherungssystem

Info

Publication number
DE69416591T2
DE69416591T2 DE69416591T DE69416591T DE69416591T2 DE 69416591 T2 DE69416591 T2 DE 69416591T2 DE 69416591 T DE69416591 T DE 69416591T DE 69416591 T DE69416591 T DE 69416591T DE 69416591 T2 DE69416591 T2 DE 69416591T2
Authority
DE
Germany
Prior art keywords
storage device
data
record
area
backup
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
Application number
DE69416591T
Other languages
English (en)
Other versions
DE69416591D1 (de
Inventor
Peter Malcolm
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.)
Cheyenne Advanced Technology Ltd
Original Assignee
Cheyenne Advanced Technology Ltd
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 Cheyenne Advanced Technology Ltd filed Critical Cheyenne Advanced Technology Ltd
Priority claimed from PCT/GB1994/001581 external-priority patent/WO1995019599A1/en
Application granted granted Critical
Publication of DE69416591D1 publication Critical patent/DE69416591D1/de
Publication of DE69416591T2 publication Critical patent/DE69416591T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1466Management of the backup or restore process to make the backup process non-disruptive
    • 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
    • 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/99955Archiving or backup

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Automatic Tape Cassette Changers (AREA)
  • Vehicle Body Suspensions (AREA)
  • Hardware Redundancy (AREA)

Description

    Hintergrund der Erfindung
  • Die vorliegende Erfindung betrifft ein Betriebsverfahren für ein Computersystem und im besonderen ein Verfahren zum Bereitstellen von Sicherungskopien von in einer Speichereinrichtung gespeicherten Daten zum Schutz gegen die Möglichkeit, daß die Speichereinrichtung beschädigt wird oder die Daten verfälscht werden, verloren gehen oder, seit neuestem, "von einem Computervirus befallen werden". Die Erfindung befaßt sich besonders mit der Bereitstellung von Sicherungen für Personalcomputer (PC).
  • In einem einfachen, Ein-Benutzer-Computersystem, das eine Speichereinrichtung wie eine Festplatte aufweist, hat konventionell zu jedem beliebigen Zeitpunkt jeweils nur ein Anwendungsprogramm Zugang zur Speichereinrichtung. Die Aufgabe der Sicherung von Daten, die von der Speichereinrichtung gespeichert werden, wird von einem Anwendungsprogramm durchgeführt, das während der Durchführung des Sicherungsvorgangs die ausschließliche Nutzung der Speichereinrichtung innehat, da in einer derartigen Umgebung keine andere Anwendung laufen kann, bis die Sicherungsanwendung beendet wird.
  • Aufgrund der Einführung von Multi-Tasking-Umgebungen, in denen mehrere Anwendungen gleichzeitig laufen können, und von Netzsystemen, mit denen mehrere Benutzer die gleichen Ressourcen gemeinsam nutzen können, kann eine Situation entstehen, in der mehr als eine Anwendung gleichzeitigen Zugang zur gleichen Speichereinrichtung haben. Wenn diese Situation entsteht, besteht die Möglichkeit eines Konflikts zwischen Anwendungen. Zum Beispiel könnte eine Anwendung eine Datei ändern oder löschen, die zur Zeit von einer anderen Anwendung genutzt wird. Dies würde zu Verwirrung und möglicherweise zur Verfälschung der Speichereinrichtung und folglich zu Datenverlust führen.
  • In Betriebssysteme wurden als "Dateischutz" und "Satzschutz" bekannte Verfahren eingeführt, um zu verhindern, daß im Fall des Dateischutzes mehr als eine Anwendung in eine Datei schreiben, bzw. im Fall des Satzschutzes zwei Anwendungen den gleichen Bereich einer bestimmten Datei ändern. Diese Verfahren sind für die meisten Anwendungen hochentwickelt genug, besonders wenn jede Anwendung an gemeinsam genutzten Dateien nur relativ geringfügige Änderungen vornimmt und deshalb andere Anwendungen, die Zugang zu einer gesperrten Datei oder einem gesperrten Satz wünschen, nicht wesentlich verlangsamt. Eine Anwendung zum periodischen Sichern von Daten in einem Computersystem, in dem die Speichereinrichtungen gemeinsam genutzt werden, ist aber ein besonderer Fall.
  • Die kleinste Dateneinheit, die gesichert werden kann, ist eine einzelne Datei, da weder die Sicherungsanwendung noch das Betriebssystem den inneren Aufbau einer Datei kennt, weil sie jedwedem Anwendungsprogramm zugeordnet werden könnte.
  • Außerdem muß die Sicherungskopie der Datei ein genaues Abbild des Originals an einem bestimmten Zeitpunkt sein. Das Kopieren einer Datei ist aber kein sofortiger Prozeß, und die zum Kopieren benötigte Zeit hängt von der Größe der Datei und der Geschwindigkeit des Kopiervorgangs ab. Dies verursacht ein Problem, wenn die Sicherungsanwendung nicht sicher sein kann, daß keine andere Anwendung die Datei während des Kopierprozesses ändern kann.
  • Zum Kopieren einer Datei bestimmt eine Sicherungsanwendung einen Bereich des Direktzugriffsspeichers (RAM) als Transferpufferspeicher und fährt dann mit alternierendem Einlesen von Blöcken der Quellendatei in den Pufferspeicher und dann Herausschreiben des Pufferspeicherinhalts in eine sekundäre Speichereinrichtung weiter. Außer wenn die Datei sehr klein ist, wird der Transferpufferspeicher mehrmals gefüllt und der Kopiervorgang erfordert mehrere Lese- und Schreibvorgänge, um eine vollständige Kopie der Datei anzufertigen.
  • Das potentielle Problem, das dadurch verursacht wird, daß die Datei während des Kopiervorgangs geändert werden kann, kann anhand des Beispiels einer Datei veranschaulicht werden, die als eine Serie von 10 Blöcken kopiert wird. Wenn die Datei durch eine Transaktion modifiziert würde, die Änderungen an der Datei erforderte, die Blöcken 3 und 8 entsprächen, nachdem Blöcke 1 bis 5 bereits kopiert wurden, würde der Kopiervorgang folglich die Änderung an Block 8 kopieren, aber nicht die Änderung an Block 3 kopieren, da dieser Block bereits vor der Transaktion kopiert wurde. Die Sicherungskopie enthält daher nur eine Teiltransaktion, wodurch die Sicherungskopie vielleicht völlig unbrauchbar wird, da die Anwendung, die sie "besitzt", die Datei möglicherweise als verfälscht betrachten wird.
  • US-Patent Nr. 5,086,502 beschreibt ein Verfahren zum Sichern jedes Schreibvorgangs, während er abläuft, indem es den Schreibvorgang in eine sekundäre Speichereinrichtung dupliziert. Zusätzlich zu diesem Verfahren gibt es noch zwei weitere Methoden zum Sichern von Dateien in einem Computersystem mit gemeinsam genutzten Speichereinrichtungen:
  • i) Sperren der Datei während der Sicherung. Dies hindert andere Benutzer daran, die Datei zu ändern, indem ihnen der Schreibzugriff verweigert wird. Wenn ein anderer Benutzer bereits Schreibzugriff hat, muß die Sicherungsanwendung entweder diese Datei überspringen oder warten, bis sie ausschließlichen Schreibzugriff erhalten kann.
  • ii) Erfassen von Änderungen an der Datei. Nach dem Kopieren der Datei kann die Sicherungsanwendung das Betriebssystem benutzen, um nachzuprüfen, ob während des Kopiervorgangs irgendwelche Änderungen vorgenommen wurden. Wenn Änderungen durchgeführt wurden, dann muß die Kopie wiederholt oder diese Datei übersprungen werden.
  • Keines der letzteren beiden Verfahren bietet eine angemessene Lösung, da viele Dateien (insbesondere Datenbankdateien) dauernd in Gebrauch sind. Darüber hinaus erfordern die zwei Verfahren, daß Benutzer effektiv ausgesperrt werden, während die Sicherung stattfindet. Außerdem sind nur wenige Kombinationen von sekundären Speichereinrichtungen und Betriebssystemen zu kontinuierlichen Transfergeschwindigkeiten von mehr als 15 Megabyte (Mb) pro Minute fähig, weshalb die zum Kopieren einer großen Datei benötigte Zeit beträchtlich ist.
  • Einige Anwendungsprogramme bewältigen das Problem zwar durch Bereitstellen von Verfahren zum sicheren Sichern ihrer eigenen Dateien in einer gemeinsam genutzten Umgebung, aber die Prozedur ist jeweils verschieden. Um die gesamte Speichereinrichtung zu sichern, muß die Sicherungsanwendung deshalb wissen, wie jede verschiedene eingebaute Prozedur funktioniert, oder sie muß auf manuellen Eingriff an einem geeigneten Punkt angewiesen sein.
  • Weil eine Sicherungsanwendung eine ganze Datei sichern muß und weil diese während des Sicherungsprozesses nicht von einem anderen Anwendungsprogramm geändert werden darf, führt die Verwendung von Sicherungsverfahren vom Stand der Technik somit in ein Computersystem mit gemeinsam genutzten Speichereinrichtungen Verzögerungen ein. Dies trifft besonders während des Sicherns großer Dateien zu.
  • Europäische Patentanmeldung EP-A-0 566 964 erläutert ein Sicherungssystem, in dem eine Konkordanz von logischen-zu- absoluten Datensatz-Systemadressen gebildet wird. Jede anwendungsinitiierte Aktualisierung wird im Speichersubsystem an unkopierten Teilen der bezeichneten Datensätze durch vorübergehendes Aufschieben oder Verzögern der Aktualisierungen verarbeitet.
  • Zusammenfassung der Erfindung
  • Die vorliegende Erfindung in ihren diversen Aspekten ist in den unabhängigen Ansprüchen unten definiert, auf welche jetzt Bezug genommen werden sollte. Vorteilhafte Merkmale sind in den anhängigen Ansprüchen dargelegt.
  • Kurze Erläuterung der Zeichnungen
  • Die Erfindung wird unten unter Bezugnahme auf die Zeichnungen beispielhaft erläutert. Dabei zeigt:
  • Fig. 1 ein Blockdiagramm eines Personalcomputers und eines Magnetbandkassetten-Laufwerks;
  • Fig. 2A und Fig. 2B Diagramme, die ein Systemspeicherabbild auf der Betriebssystemebene eines konventionellen Personalcomputers und eines Computers, der zum erfindungsgemäßen Betrieb geändert wurde, darstellen;
  • Fig. 3 ein Ablaufdiagramm eines Verfahren zum Aufzeichnen von Daten in einem Sicherungsvorgang, und
  • Fig. 4 ein Ablaufdiagramm einer zweiten Ausgestaltung des Verfahrens von Fig. 3.
  • Erläuterung der bevorzugten Ausgestaltung der Erfindung
  • Wie in Fig. 1 der Zeichnungen dargestellt, umfaßt ein Personalcomputer 10 typischenfalls eine Zentraleinheit 12, einen Direktzugriffsspeicher 14 und eine nichtflüchtige Speichervorrichtung in der Form eines Festplattenlaufwerks 16. In diesem Beispiel wird zum Zweck des Bereitstellens einer Sicherungsspeichereinrichtung eine Magnetbandeinheit 18 mit dem Computer 10 verbunden.
  • Erfindungsgemäß hat ein Teil einer Sicherungsprogrammanwendung die Form eines Aufzeichnungsprozesses, der die Aufgabe hat, normale Lese- und Schreibvorgänge vom bzw. zum Laufwerk 16 abzufangen, um den Datenfluß zwischen dem Laufwerk 16 und den anderen Teilen des Computers 10 zu steuern.
  • Bevor begonnen wird, eine Sicherungskopie einer Datei herzustellen, wird der Aufzeichnungsprozeß von der Sicherungsanwendung zum Umleiten aller Festplattenschreibtätigkeiten zu einem anderen Bereich der Festplatte 16 aktiviert, der als "Delta"-Bereich bekannt ist. Es wird eine Delta-Abbildungstabelle von allen Festplattenschreibvorgängen, die zum Deltabereich umgeleitet wurden, geführt. Diese Tabelle unterhält eine Abbildung zwischen dem beabsichtigten Ziel auf der Festplatte 16, den jedem Festplattenschreibvorgang zugeordneten Daten und von ihrer momentanen Speicherposition im Deltabereich. Wenn ein nachfolgender Vorgang zum Schreiben in einen Bereich erfolgt, der bereits der Gegenstand einer Eintragung in die Tabelle ist, dürfen die alten Daten im Deltabereich mit den neuen Daten überschrieben werden. Auf diese Weise ändern sich die Daten auf dem Hauptteil der Festplatte nicht, während eine Sicherungskopie hergestellt wird, da alle Änderungen zum Deltabereich umgeleitet werden.
  • Wenn ein Festplattenlesevorgang von der Sicherungsanwendung angefordert wird, wird er unverändert durchgelassen, so daß die zur Sicherungsanwendung zurückgeführten Daten vom Originaldatenbereich auf dem Hauptteil der Festplatte kommen. Wenn aber ein Festplattenlesevorgang von einer anderen Anwendung angefordert wird, hat der Aufzeichnungsprozeß zuerst die Aufgabe, die Tabelle zu prüfen, um zu sehen, ob ein Festplattenschreibvorgang in diesen Bereich stattgefunden hat, seit der Prozeß begann, Schreibvorgänge abzufangen, und wenn dies der Fall ist, wird der Lesevorgang zur entsprechenden Position im Deltabereich umgeleitet. Wenn kein Schreibvorgang stattgefunden hat, d. h. dieses Datenstück seit Beginn des Schreibvorgangabfangens nicht geändert wurde, dann wird der Lesevorgang ungeändert durchgelassen.
  • Auf diese Weise werden Änderungen an auf der Festplatte 16 gespeicherten Daten von allen Anwendungen außer der Sicherungsanwendung normal gesehen. Die Sicherungsanwendung sieht die Daten, die sich nicht ändern, bis eine Anweisung erteilt wird, um das Abfangen von Lese- und Schreibvorgängen durch den Aufzeichnungsprozeß anzuhalten.
  • Wenn der Sicherungskopiervorgang beendet ist, wird der Aufzeichnungsprozeß aktiviert, um den Computer wieder auf normalen Betrieb zu schalten. Diese Umspeicherphase wird durch Anwenden der im Deltabereich gespeicherten Änderungen auf die entsprechenden Originaldatenbereiche im Hauptteil der Festplatte 16 mit Hilfe der in der Tabelle gespeicherten Abbildungen erreicht. Während die Deltaänderungen angewendet werden, werden Festplattenschreibvorgänge wie oben erläutert weiterhin abgefangen. Wenn es keine weiteren Schreibvorgänge mehr gibt, die noch nicht auf den Originaldatenbereich angewendet worden sind, wird das Abfangen von Schreibvorgängen abgebrochen und das System funktioniert konventionell.
  • Darüber, wie weit der Sicherungskopierprozeß vorangeschritten ist, wird eine Aufzeichnung geführt, die eine zweite Aufzeichnung von der Delta-Abbildungstabelle bildet, und gemäß der vorliegenden Erfindung läßt die Software Schreibvorgänge zum Hauptteil der Festplatte 16 ungeändert durchlaufen, nachdem dieser Teil der Festplatte gesichert worden ist, da es nichts mehr ausmacht, wenn sich die Daten ändern. Das heißt, daß die Software gemäß der vorliegenden Erfindung bei Erhalt von Anweisungen für einen Schreibvorgang anhand der zweiten Aufzeichnung bestimmt, ob der Teil der Festplatte, auf den geschrieben werden soll, vom Sicherungsprozeß gesichert worden ist [sic...*1], und läßt, wenn dieser Teil gesichert worden ist, den Schreibvorgang auf die Festplatte schreiben, ohne daß der Schreibvorgang abgefangen wird. Dadurch wird die Größe der Delta-Abbildungstabelle verkleinert. Wenn der Bereich des Hauptteils der Festplatte, auf den dieser Vorgang gerichtet wird, bereits Gegenstand einer Eintragung in die Abbildungstabelle war, kann diese Eintragung außerdem einfach gelöscht werden, wodurch die in der Umspeicherphase benötigte Zeit verringert wird.
  • Die Erfindung ist besonders auf IBM-kompatible Personalcomputer anwendbar, d. h. die Mehrzahl von Personalcomputern, die Prozessorchip-Typennummern 8086, 8088, 80286, 80386, 80486 und von Intel gefertigte Pentium- und ähnliche Mikroprozessor-Systeme verwenden. In derartigen Computern ruft ein Programm, wenn es auf eine Datei zugreifen will, immer eine Standardroutine auf, die Daten auf die Festplatte schreibt. Diese Routine, die im Fall des DOS-Betriebssystems als Interrupt 21 hex (INT21h) bekannt ist, ist ein integrierter Bestandteil des Betriebssystems. Die von der Routine durchgeführte Operation hängt von den Parametern ab, die der Routine beim Einsprung zugeführt werden. Diese Routine wird in Fig. 2A als INT21h gezeigt, die Teil des Betriebssystem in einer Systemspeicherabbildung bildet, wobei der INT21h-Einsprungpunkt mit einem Pfeil angedeutet wird. Zum Durchführen des vorangehenden Verfahrens wird auf der Ebene der Betriebssystemschnittstelle ein zusätzlicher Programmcode hinzugefügt, wie in Fig. 2B gezeigt. In der Praxis kann dies in einer DOS-Umgebung mit Hilfe der CONFigurSYS-Datei als ein Gerätetreiber in den Computer geladen werden.
  • Die hinzugefügte Software bewirkt, daß eine Anweisung zum Schreiben von Daten durch einen alternativen Satz Anweisungen ersetzt wird. Eine ähnliche Methode kann zum Abfangen einer Anweisung zum Lesen von Daten von der Festplatte und zum Ersetzen dieser durch einen alternativen Satz Anweisungen verwendet werden. Der relevante Ablauf wird im Ablaufplan von Fig. 3 gezeigt.
  • Bei Erhalt eines INT21h-Aufrufs prüft das Programm zuerst, ob der Aufruf ein Schreibaufruf ist. Wenn ja, prüft das Programm in Schritt 20 nach, ob es Schreibaufrufe abfangen soll. Wenn nein, werden Daten in den Originaldatenbereich 24 geschrieben (Schritt 22).
  • Wenn Schreibaufrufe abgefangen werden, dann prüft das Programm die Delta-Abbildungstabelle (Schritt 26), um festzustellen, ob zuvor ein Schreibvorgang in diesen Bereich der Originaldatei 24 stattgefunden hat. Das heißt, daß die Delta- Abbildungstabelle abgefragt wird, um zu bestimmen, ob es einen früheren abgefangenen Schreibvorgang gegeben hat, der das Schreiben von Daten betrifft, die für den gleichen Teil der Festplatte bestimmt sind wie der laufende Schreibvorgang. Wenn (Schritt 28) zuvor ein Schreibvorgang stattfand, dann wird der Teil des Deltabereichs 30, der zuvor auf diesen Teil der Originaldatei 24 in der Delta-Abbildungstabelle bezogen wurde, mit den neuen Daten überschrieben (Schritt 32). Dieses Merkmal bildet den Gegenstand einer Teilanmeldung Nr. 98202128.9.
  • Wenn Schreibaufrufe abgefangen werden, aber zuvor kein Schreibvorgang zu diesem Teil der Originaldatei 24 durchgeführt wurde, dann wird der Schreibvorgang zur Tabelle hinzugefügt und diesem Datenstück wird ein neuer Bereich des Deltabereichs zugeordnet (Schritt 34). Die Daten werden dann in den neuen Deltabereich geschrieben (Schritt 36).
  • Wenn der Aufruf ein Leseaufruf ist, prüft das Programm in Schritt 38, ob es Leseaufrufe abfangen soll. Ist dies nicht der Fall, dann werden Daten aus der ursprünglichen Datei 24 (Schritt 40) gelesen.
  • Wenn das Programm Leseaufrufe abfängt, dann prüft es in Schritt 42 zunächst nach, ob der Aufruf vom Sicherungsanwendungsprogramm kam. Wenn der Aufruf von der Sicherungsanwendung kam, dann geht das Programm zu Schritt 40 über und Daten werden aus der Originaldatei 24 gelesen.
  • Wenn die Leseaufforderung nicht von der Sicherungsanwendung kam, prüft das Programm die Delta-Abbildungstabelle, um zu sehen, ob ein dem Leseaufruf entsprechender Schreibvorgang in den Bereich der Originaldatei 24 zum Deltabereich umgeleitet wurde (Schritt 44). Wenn er nicht umgeleitet wurde (Schritt 46), geht das Programm zu Schritt 40 zurück und die Daten werden aus der Originaldatei 24 gelesen. Wenn der Lesevorgang umgeleitet wurde, werden die Daten aus dem richtigen Teil des Deltabereichs 30 gelesen (Schritt 48).
  • In einer zweiten Ausgestaltung der Erfindung, wenn Lese- und Schreibvorgänge während des Aufzeichnungsprozesses abgefangen werden, werden die Originaldaten im Deltabereich gespeichert und die Originaldatei darf geändert werden, anstatt daß die geänderten Daten im Deltabereich gespeichert werden, wenn der erste Schreibvorgang in einen bestimmten Bereich einer Datei durchgeführt wird. In die Abbildungstabelle wird eine Eintragung eingetragen, die auf den ursprünglichen Inhalt dieses Bereichs der Originaldatei hinweist, der jetzt im Deltabereich gespeichert wird. Jedes nachfolgende Schreiben in den gleichen Bereich der Datei wird dann vom Aufzeichnungsprozeß ignoriert. Leseanforderungen von der Sicherungsanwendung werden dann zum Deltabereich umgeleitet, wenn die Abbildungstabelle andeutet, daß dieser Bereich der Originaldatei überschrieben wurde.
  • In Fig. 4 ist die zweite Ausgestaltung in einem Ablaufdiagramm dargestellt. Das Diagramm ähnelt dem von Fig. 3, wobei Schritte mit der gleichen Bezugsnummer eine ähnliche Operation bezeichnen.
  • Die Unterschiede zwischen den beiden Figuren (3 und 4) sind wie folgt:
  • In Schritt 60 werden die Daten, wenn das Lese-Abfangen aktiv ist (Schritt 38) und der Lesevorgang nicht von der Sicherungsanwendung ausgeht, aus dem Originaldatenbereich gelesen. Dies ist das Gegenteil von Schritt 42 in der vorhergehenden Ausgestaltung.
  • Nach Schritt 28 ist ein zusätzlicher Schritt 62 eingefügt, der Daten aus dem Originaldatenbereich liest, bevor er das erste Mal überschrieben wird.
  • Schritt 36 der ersten Ausgestaltung wurde geändert, um den neuen Schritt 64 zu bilden, der ein zusätzliches Schreiben der in Schritt 62 gelesenen Daten in den Deltabereich beinhaltet.
  • Schritt 32 wurde geändert, um den neuen Schritt 66 zu bilden, der die Daten nicht mehr zum Überschreiben des Deltabereichs umleitet, sondern stattdessen den Originaldatenbereich mit den Daten überschreibt. Dieses zweite Verfahren ist langsamer als das erste, da jede Dateien-Schreibanforderung ein Lese- und zwei Schreibvorgänge wird gegenüber dem einen umgeleiteten Schreibvorgang des ersten Verfahrens. Das zweite Verfahren erfordert jedoch nicht, daß die im Deltabereich gespeicherten Daten auf die Originaldatei angewendet werden, wenn die Sicherung komplett ist. Die Delta-Abbildungstabelle und die im Deltabereich gespeicherten Daten können einfach verworfen werden. Aufgrund dieses Unterschieds brauchen außerdem auch keine Vorkehrungen zum Wiederherstellen nach dem Eintreten eines fatalen Zustands (wie z. B. einem Stromausfall), wenn die Deltaänderungen nicht vollständig auf die Originaldaten angewendet wurden, getroffen werden.
  • In dem Fall, in dem das oben erläuterte Verfahren Teil einer Sicherungsanwendung bildet, kann das Abfangen von Lesevorgängen innerhalb der Sicherungsanwendung stattfinden und muß nicht die Verwendung einer Betriebssystemroutine einbeziehen.
  • Wenn die Computerumgebung die Identifizierung eines bestimmten Benutzers gestattet, der eine Sicherung durchführen möchte, kann das Verfahren auch die folgenden Schritte beinhalten: Identifizieren des Benutzers und nur Sichern der Dateien dieses Benutzers auf die oben erläuterte Weise. Auf diese Weise müssen nicht alle Datentransaktionen abgefangen werden, sondern nur die mit diesem Benutzer verbundenen.

Claims (13)

1. Verfahren zum Versehen eines Sicherungsprozesses, der auf einem Mikroprozessor-gestützten Computersystem ausgeführt wird, mit Daten, wobei das System einen Direktzugriffsspeicher, eine Zentraleinheit und eine Speichereinrichtung aufweist, wobei das Verfahren die folgenden Schritte umfaßt: Versehen der genannten Zentraleinheit mit in dem genannten Speicher gespeicherten ersten Befehlen, um zu bewirken, daß die genannte Zentraleinheit wenigstens einen normalen Schreibvorgang zum periodischen Schreiben von Daten in einen primären Bereich der genannten Speichereinrichtung und wenigstens einen normalen Lesevorgang zum Lesen von Daten aus der genannten Speichereinrichtung durchführt, Empfangen eines Startsignals vom Sicherungsprozeß und, nach Empfangen des genannten Startsignals, Durchführen eines Abfangvorgangs zum Abfangen des genannten Schreibvorgangs und zum Schreiben von Daten in einen sekundären Speicherbereich der Speichereinrichtung, so daß ursprüngliche Daten erhalten bleiben, die andernfalls durch den genannten Schreibvorgang überschrieben würden, Führen einer ersten Aufzeichnung des genannten Schreibens in den sekundären Bereich und beim Durchführen eines der genannten Sicherungs- und der genannten normalen Lesevorgänge Abfragen der genannten ersten Aufzeichnung zum Lesen von Daten aus entweder dem primären oder dem sekundären Bereich entsprechend der ersten Aufzeichnung, wodurch der Sicherungsprozeß mit erhaltenen ursprünglichen Daten in dem Zustand versehen wird, in dem sie vor Ausgabe des Startsignals waren; dadurch gekennzeichnet, daß eine zweite Aufzeichnung geführt wird, die darauf hindeutet, wie weit der genannte Sicherungsprozeß fortgeschritten ist, und daß beim Empfang von Befehlen für einen Schreibvorgang der genannten Speichereinrichtung anhand der genannten zweiten Aufzeichnung bestimmt wird, ob der Teil des genannten primären Bereichs, in den geschrieben werden soll, durch den genannten Sicherungsprozeß gesichert wurde, und daß, wenn der genannte Teil gesichert wurde, der genannte Schreibvorgang in den genannten primären Bereich der genannten Speichereinrichtung schreiben darf, ohne daß der genannte Schreibvorgang abgefangen wird.
2. Verfahren nach Anspruch 1, wobei die Daten des normalen Schreibvorgangs in den genannten sekundären Bereich geschrieben werden und wobei die erste Aufzeichnung eine Aufzeichnung der beabsichtigten Stelle für den genannten normalen Schreibvorgang in dem genannten primären Bereich und eine Aufzeichnung seiner momentanen Stelle in dem genannten sekundären Bereich umfaßt, und wobei das genannte Verfahren des weiteren den Schritt des Beschaffens der genannten erhaltenen ursprünglichen Daten aus dem genannten primären Bereich umfaßt.
3. Verfahren nach Anspruch 2, das des weiteren die folgenden Schritte umfaßt: Durchführen, nach Empfangen eines Stoppsignals vom Sicherungsprozeß, wenigstens eines Umspeicherungslesevorgangs zum Lesen von Daten aus der momentanen Stelle in dem genannten sekundären Bereich und wenigstens eines Umspeicherungsschreibvorgangs zum Umspeichern dieser Daten auf ihre beabsichtigte Stelle in dem genannten primären Bereich entsprechend der genannten ersten Aufzeichnung; Beenden der Durchführung des genannten Abfangvorgangs zum Abfangen des genannten Schreibvorgangs, wenn alle Daten an ihre beabsichtigte Stelle im genannten primären Bereich umgespeichert worden sind.
4. Verfahren nach Anspruch 1, wobei zu erhaltende Daten aus dem genannten primären Bereich gelesen und in den genannten sekundären Bereich geschrieben werden, bevor die Daten des normalen Schreibvorgangs in den genannten primären Bereich geschrieben werden, und wobei die erste Aufzeichnung eine Aufzeichnung einer früheren Stelle der ursprünglichen Daten in dem genannten primären Bereich und eine Aufzeichnung ihrer momentanen Stelle in dem genannten sekundären Bereich umfaßt, und wobei das Verfahren des weiteren den Schritt des Beschaffens der genannten erhaltenen ursprünglichen Daten von der genannten momentanen Stelle umfaßt.
5. Verfahren nach Anspruch 4, das des weiteren den folgenden Schritt umfaßt: Beenden der Durchführung des genannten Abfangvorgangs zum Abfangen des genannten Schreibvorgangs nach Empfangen eines Stoppsignals vom Sicherungsprozeß.
6. Verfahren nach einem der Ansprüche 2 bis 5, wobei der genannte primäre und der genannte sekundäre Bereich verschiedene Bereiche einer einzelnen Speichervorrichtung sind.
7. Verfahren nach einem der Ansprüche 1 bis 6, wobei mit dem Abfangvorgang verbundene Befehle auf der Ebene eines BIOS (Basic Input/Output System) durchgeführt werden.
8. Verfahren nach einem der Ansprüche 1 bis 6, wobei mit dem Abfangvorgang verbundene Befehle auf der Ebene einer Betriebssystemschnittstelle durchgeführt werden.
9. Verfahren nach einem der Ansprüche 1 bis 8, das des weiteren den Schritt des Bereitstellens eines Sicherungsprozesses umfaßt, der auf dem Computersystem fährt und zur Ausgabe von Startsignalen und Stoppsignalen und zum Durchführen wenigstens eines Sicherungslesevorgangs zum Lesen ursprünglicher Daten aus der Speichereinrichtung funktionsfähig ist.
10. Verfahren nach Anspruch 9, wobei das genannte Startsignal ausgegeben wird, bevor der genannte Sicherungsprozeß beginnt, einen Sicherungsvorgang an der genannten Speichervorrichtung durchzuführen, und wobei das genannte Stoppsignal ausgegeben wird, nachdem der genannte Sicherungsprozeß den genannten Sicherungsvorgang beendet hat.
11. Verfahren nach einem der Ansprüche 1 bis 10, der des weiteren den während des Sicherungsprozesses und auf einen weiteren Schreibbefehl hin erfolgenden Schritt des Löschens jeder Eingabe umfaßt, die sich auf Teile des genannten primären Bereichs der genannten Speichereinrichtung bezieht, welche durch den genannten Sicherungsprozeß gesichert wurden.
12. Mikroprozessor-gestütztes Computersystem, umfassend einen Direktzugriffsspeicher, eine Zentraleinheit und eine Speichereinrichtung, das des weiteren folgendes umfaßt: Mittel zum Durchführen eines Sicherungsprozesses, der zur Ausgabe eines Startsignals und eines Stoppsignals und zum Durchführen wenigstens eines Sicherungslesevorgangs zum Lesen ursprünglicher Daten aus der Speichereinrichtung funktionsfähig ist, Mittel zum Veranlassen der genannten Zentraleinheit zur Durchführung wenigstens eines normalen Schreibvorgangs zum periodischen Schreiben von Daten in einen primären Bereich der genannten Speichereinrichtung und wenigstens eines normalen Lesevorgangs zum Lesen von Daten aus der genannten Speichereinrichtung, Mittel zum Empfangen des genannten Startsignals, Mittel zum Durchführen, nach Empfangen des genannten Startsignals, eines Abfangvorgangs zum Abfangen des genannten Schreibvorgangs, zum Schreiben von Daten in einen sekundären Speicherbereich der genannten Speichereinrichtung, so daß ursprüngliche Daten erhalten bleiben, die andernfalls durch den genannten Schreibvorgang überschrieben würden, zum Führen einer ersten Aufzeichnung des genannten Schreibens in den genannten sekundären Bereich, und Mittel zum Abfragen der genannten ersten Aufzeichnung zum Lesen von Daten aus entweder dem genannten primären oder dem genannten sekundären Speicherbereich entsprechend der ersten Aufzeichnung, wodurch der genannte Sicherungsprozeß beim Durchführen des genannten Sicherungsvorgangs mit den erhaltenen ursprünglichen Daten in dem Zustand versehen wird, in dem sie vor Ausgabe des Startsignals waren; gekennzeichnet durch nach dem genannten Startsignal funktionsfähige Mittel zum Führen einer zweiten Aufzeichnung, die darauf hindeutet, wie weit der genannte Sicherungsprozeß fortgeschritten ist, und nach Empfang von Befehlen für einen Schreibvorgang der genannten Speichereinrichtung funktionsfähige Mittel zum Bestimmen anhand der genannten zweiten Aufzeichnung, ob der Teil des genannten primären Bereichs der genannten Speichereinrichtung, in den geschrieben werden soll, durch den genannten Sicherungsprozeß gesichert wurde, und um, wenn der genannte Teil gesichert wurde, den genannten Schreibvorgang in den genannten primären Bereich der genannten Speichereinrichtung schreiben zu lassen, ohne daß der genannte Schreibvorgang abgefangen wird.
13. Vorrichtung nach Anspruch 12, die des weiteren während des genannten Sicherungsprozesses und auf einen weiteren Schreibbefehl hin funktionsfähige Mittel zum Löschen jedes Eintrags aus der genannten ersten Aufzeichnung, der sich auf Teile des genannten primären Bereichs der genannten Speichereinrichtung bezieht, die der genannte weitere Schreibbefehl betrifft, welche durch den genannten Sicherungsprozeß gesichert wurden.
DE69416591T 1993-07-19 1994-07-20 Dateisicherungssystem Expired - Lifetime DE69416591T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US9338693A 1993-07-19 1993-07-19
PCT/GB1994/001581 WO1995019599A1 (en) 1994-07-20 1994-07-20 File backup system

Publications (2)

Publication Number Publication Date
DE69416591D1 DE69416591D1 (de) 1999-03-25
DE69416591T2 true DE69416591T2 (de) 1999-09-16

Family

ID=22238642

Family Applications (2)

Application Number Title Priority Date Filing Date
DE69420979T Expired - Lifetime DE69420979T2 (de) 1993-07-19 1994-07-18 Dateisicherungssystem
DE69416591T Expired - Lifetime DE69416591T2 (de) 1993-07-19 1994-07-20 Dateisicherungssystem

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE69420979T Expired - Lifetime DE69420979T2 (de) 1993-07-19 1994-07-18 Dateisicherungssystem

Country Status (8)

Country Link
US (1) US5546534A (de)
EP (2) EP0710375B1 (de)
AT (2) ATE176824T1 (de)
AU (1) AU687095B2 (de)
DE (2) DE69420979T2 (de)
DK (2) DK0880096T3 (de)
ES (2) ES2130447T3 (de)
GR (1) GR3030004T3 (de)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6202136B1 (en) * 1994-12-15 2001-03-13 Bmc Software, Inc. Method of creating an internally consistent copy of an actively updated data set without specialized caching hardware
JPH0962586A (ja) * 1995-08-25 1997-03-07 Fujitsu Ltd 情報処理装置及び情報処理装置におけるデータ処理方法
US5778395A (en) * 1995-10-23 1998-07-07 Stac, Inc. System for backing up files from disk volumes on multiple nodes of a computer network
US6555690B2 (en) * 1996-06-21 2003-04-29 Allergan, Inc. Alkyl or aryl substituted dihydronaphthalene derivatives having retinoid and/or retinoid antagonist-like biological activity
US7127535B1 (en) 1996-11-22 2006-10-24 Veritas Operating Corporation System and method for multiplexed data back-up
US6487644B1 (en) 1996-11-22 2002-11-26 Veritas Operating Corporation System and method for multiplexed data back-up to a storage tape and restore operations using client identification tags
US6038665A (en) * 1996-12-03 2000-03-14 Fairbanks Systems Group System and method for backing up computer files over a wide area computer network
US5794254A (en) * 1996-12-03 1998-08-11 Fairbanks Systems Group Incremental computer file backup using a two-step comparison of first two characters in the block and a signature with pre-stored character and signature sets
US6385707B1 (en) * 1998-02-24 2002-05-07 Adaptec, Inc. Method and apparatus for backing up a disk drive upon a system failure
US6562076B2 (en) 1998-08-31 2003-05-13 Xerox Corporation Extending application behavior through active properties attached to a document in a document management system
US6266670B1 (en) * 1998-08-31 2001-07-24 Xerox Corporation User level accessing of low-level computer system operations.
US6266682B1 (en) 1998-08-31 2001-07-24 Xerox Corporation Tagging related files in a document management system
US7013305B2 (en) 2001-10-01 2006-03-14 International Business Machines Corporation Managing the state of coupling facility structures, detecting by one or more systems coupled to the coupling facility, the suspended state of the duplexed command, detecting being independent of message exchange
US6539495B1 (en) * 1999-02-22 2003-03-25 International Business Machines Corporation Method, system and program products for providing user-managed duplexing of coupling facility cache structures
PT1067460E (pt) * 1999-04-10 2002-06-28 Basis Gmbh Edv Vertriebs Ges Suporte de dados em que o estado fundamental dos dados de base e reuperavel e processo para criar aquele suporte de dados
JP2000322326A (ja) * 1999-05-14 2000-11-24 Sharp Corp バックアップメモリの情報管理方法
DE19952312A1 (de) * 1999-10-29 2001-05-03 Siemens Ag Verfahren zum Betreiben eines Zweitrechners, Vermittlungseinrichtungen für den ausfallsicheren Betrieb und zugehöriges Programm
US6341341B1 (en) * 1999-12-16 2002-01-22 Adaptec, Inc. System and method for disk control with snapshot feature including read-write snapshot half
ATE312378T1 (de) 2000-03-01 2005-12-15 Computer Ass Think Inc Methode und system für die aktualisierung eines archivs einer datei
US8249975B1 (en) 2000-04-10 2012-08-21 Stikine Technology, Llc Automated first look at market events
US6874139B2 (en) * 2000-05-15 2005-03-29 Interfuse Technology Corporation Method and system for seamless integration of preprocessing and postprocessing functions with an existing application program
US6941490B2 (en) * 2000-12-21 2005-09-06 Emc Corporation Dual channel restoration of data between primary and backup servers
US6871271B2 (en) 2000-12-21 2005-03-22 Emc Corporation Incrementally restoring a mass storage device to a prior state
US7296125B2 (en) * 2001-11-29 2007-11-13 Emc Corporation Preserving a snapshot of selected data of a mass storage system
US7231409B1 (en) * 2003-03-21 2007-06-12 Network Appliance, Inc. System and method for reallocating blocks in checkpointing bitmap-based file systems
US9213609B2 (en) * 2003-12-16 2015-12-15 Hewlett-Packard Development Company, L.P. Persistent memory device for backup process checkpoint states
US8818950B2 (en) * 2004-01-22 2014-08-26 Symantec Corporation Method and apparatus for localized protected imaging of a file system
US8463748B1 (en) * 2004-02-05 2013-06-11 Emc Corporation File system quiescing
US20060123210A1 (en) * 2004-12-06 2006-06-08 St. Bernard Software, Inc. Method for logically consistent backup of open computer files
US9405521B2 (en) * 2006-06-29 2016-08-02 Microsoft Technology Licensing, Llc Mapping of virtualized setup-free applications for a computing system
EP2064488B1 (de) * 2006-09-01 2021-10-06 Pacific Biosciences of California, Inc. Gerät und verfahren zum analysieren von materialien
US8495019B2 (en) 2011-03-08 2013-07-23 Ca, Inc. System and method for providing assured recovery and replication
CN103810056A (zh) * 2012-11-06 2014-05-21 南京壹进制信息技术有限公司 一种在Linux平台上获得一致性备份的方法
US8782005B2 (en) * 2012-12-12 2014-07-15 Storagecraft Technology Corporation Pruning previously-allocated free blocks from a synthetic backup
US9542281B2 (en) * 2013-09-17 2017-01-10 Netapp, Inc. Systems and methods for providing snapshots of applications to remote locations with minimal performance impact
CN103645971A (zh) * 2013-12-13 2014-03-19 江苏名通信息科技有限公司 Linux系统下文件备份及转移方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5065354A (en) * 1988-09-16 1991-11-12 Compaq Computer Corporation Queued posted-write disk write method with improved error handling
GB2230626A (en) * 1989-04-20 1990-10-24 Croftlands Ltd Computerised database system
CA2063379C (en) * 1989-07-11 1998-02-10 Peter Bryan Malcolm Method of operating a data processing system
US5163148A (en) * 1989-08-11 1992-11-10 Digital Equipment Corporation File backup system for producing a backup copy of a file which may be updated during backup
DE69119222T2 (de) * 1991-06-04 1996-11-21 Ibm Datensicherung und Beseitigung in einem Datenverarbeitungssystem
CA2071346A1 (en) * 1991-10-18 1993-04-19 Claus William Mikkelsen Method and means for time zero backup copy of data
US5379398A (en) * 1992-04-20 1995-01-03 International Business Machines Corporation Method and system for concurrent access during backup copying of data
US5241670A (en) * 1992-04-20 1993-08-31 International Business Machines Corporation Method and system for automated backup copy ordering in a time zero backup copy session
US5241669A (en) * 1992-04-20 1993-08-31 International Business Machines Corporation Method and system for sidefile status polling in a time zero backup copy process

Also Published As

Publication number Publication date
AU7786894A (en) 1995-05-25
AU687095B2 (en) 1998-02-19
ES2137789T3 (es) 1999-12-16
DE69416591D1 (de) 1999-03-25
EP0880096A1 (de) 1998-11-25
GR3030004T3 (en) 1999-07-30
US5546534A (en) 1996-08-13
DE69420979T2 (de) 2000-01-20
EP0710375B1 (de) 1999-02-17
ATE176824T1 (de) 1999-03-15
DK0880096T3 (da) 2000-04-03
EP0880096B1 (de) 1999-09-29
EP0710375A1 (de) 1996-05-08
DE69420979D1 (de) 1999-11-04
DK0710375T3 (da) 1999-09-20
ATE185207T1 (de) 1999-10-15
ES2130447T3 (es) 1999-07-01

Similar Documents

Publication Publication Date Title
DE69416591T2 (de) Dateisicherungssystem
DE69621841T2 (de) Rechnersicherungssystem mit offenen Dateien
DE69311952T2 (de) Verfahren und System zur inkrementalen Datensicherung
DE69717876T2 (de) Eingabe-/Ausgabesteuergerät mit Wiederanlaufkennzeichnungsfunktion
DE69712689T2 (de) Prüfpunktrechnersystem
DE69604882T2 (de) Einzeltransaktionsverfahren für ein Dateiensystem mit Logging-Möglichkeit in einem Rechnerbetriebssytem
DE3788444T2 (de) Verfahren zum Wiederanlauf einer langlaufenden fehlertoleranten Operation in einem transaktionsorientierten Datenbasissystem.
DE69601850T2 (de) Transaktionsgerättreiberverfahren für ein Dateiensystem mit Logging-Möglichkeit
DE69602500T2 (de) System und Verfahren zur Verriegelung und Reparatur eines Dateisystems für ein Rechnerbetriebssystem
DE69703574T2 (de) Vorrichtung zur Prüfpunkterfassungsbeschleunigung
DE69025507T2 (de) Gerät zur Sicherung und Wiederherstellung für Digitalrechner
DE69618131T2 (de) Anordnung und Verfahren zur Betriebsmittelverwaltung von verteilten Objekten
DE69312781T2 (de) Verfahren und System zum Seitendatei Statusabrufen in einem Nullzeittyp Sicherungskopieprozess
DE69119222T2 (de) Datensicherung und Beseitigung in einem Datenverarbeitungssystem
DE4435751B4 (de) Dateiname- und Verzeichnis- Erfassungsverfahren zur Verwendung mit einem Betriebssystem
DE69730449T2 (de) Erzeugung einer spiegeldatenkopie (bild) unter verwendung von referenzetiketten
DE3786956T2 (de) Verwaltung von registrierungsdaten in einem transaktionsorientierten System.
DE69324840T2 (de) Verfahren zum Speichern von Programmen
DE4220198C2 (de) Transaktionsverarbeitungsverfahren für einen digitalen Computer und Transaktionsverarbeitungssystem
DE69831944T2 (de) Vorrichtung und verfahren zur sicherung eines plattenspeichersystem
DE69620952T2 (de) Rechnersystem mit Zwei-Phasen-Kontrollpunkten
DE69619425T2 (de) Datenkonversion in einem Multiprozessorsystem mit gleichzeitiger Aufrechterhaltung der Systemoperationen
DE69738101T2 (de) Verwaltung des Zugangs zu Objekten mit Hilfe von Referenzen mit drei Zuständen
DE69617511T2 (de) Verfahren und Gerät zum Verwalten von Objekten in einer verteilten Objektbetriebsumgebung
DE10225664A1 (de) System und Verfahren zum Prüfen von Systemabrufereignissen mit Systemabrufumhüllungen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition