Tarun Tyagi hat dieses Buch über professionelle Datenwiederherstellungsprogrammierung mit dem Titel „Datenwiederherstellung mit und ohne Programmierung“ geschrieben . Alle auf dieser Website bereitgestellten Lernsoftware und Quellcodes wurden vom Autor Tarun Tyagi entwickelt .
            Tarun Tyagi ist ein Experte für Datenrettung und Entwickler von Datenrettungssoftware.
            Schulung zur Datenwiederherstellung von Autor Tarun Tyagi
           
          
            Inhaltsverzeichnis
            VORWORT
            
            
              - Einführung in die Datenwiederherstellung
- Datenverlust verstehen
                
                  - Systemabsturz
                    
                      - Menschliches Versagen
- Softwarebeschädigung
- Softwarefehler
- Hardwarefehler
- Virenabsturz
- Sabotage
- Naturkatastrophe
 
- Andere Arten von Datenverlust
                    
                      - Verlust einer oder mehrerer Partitionen
- Disketten-Lesefehler
- Löschung wichtiger Daten
- Passwortverlust
 
 
- Arten und Bereiche der Datenwiederherstellung
                
                  - Analyse eines Computers vor der Datenwiederherstellung
- Akzeptable Erholungsphase
- Verschiedene Kosten verstehen
                    
                      - Ausfallkosten
- Kosten für die Datenwiederherstellung
 
- Benutzerbeschreibung
- Anforderungen definieren
- Ziele setzen
 
- Einige Ratschläge vor Beginn der Festplattenfehlerbehebung oder Datenwiederherstellung
                
                  - Einige Tipps zum Schutz Ihrer Daten
- Erstellen Sie Backups
                    
                      - Führen Sie monatlich einen Oberflächenscan durch
- Wöchentliche Defragmentierung der Daten
- Verwenden Sie ein gutes Antivirenprogramm
- Gewöhnen Sie sich an, Ihre Diskette schreibgeschützt zu halten
- Verwenden Sie keine Raubkopien von Spielen und Software
 
 
Kapitel 2 Einführung zu Festplatten
            
            
              - Einführung
- Komponenten der Festplatte
                
                  - Platten und Medien
                    
                      - Lese-/Schreibköpfe
                        
                      
- Kopfschieber, Arme und Aktuator
                        
                          - Kopfschieber
- Kopf Arme
- Kopfantrieb
 
- Spindelmotor
- Steckverbinder und Jumper
- Hauptplatine
- Cache und Cache-Schaltkreise
 
 
- Festplattengeometrie auf niedriger Ebene
- Formatierung
                
                  - Low-Level-Formatierung
                    
                      - Partitionierung
- Formatierung auf hoher Ebene
 
 
- Formatierte und unformatierte Speicherkapazität
Kapitel 3: Logischer Ansatz für Festplatten und Betriebssysteme
            
            
              - BIOS
                
                  - Die INT 13H-Schnittstelle und INT 13H-Erweiterungen
                    
                      - Int13H-Erweiterungen
- Die 2,1 GB-Grenze
- Die 33,8 GB-Grenze
- ATA-Spezifikation für IDE-Festplatten - Die 137 GB-Grenze
 
- BIOS-IDE-Unterstützung für zwei und vier Festplatten
 
- Einschränkungen in Dateisystemen
                
              
- Cluster
- Clustergröße
- Logische Struktur einer Festplatte
- Master Boot Record (MBR) oder Master Partition Table (MPT)
- Master-Boot-Record-Format
                
                  - Format der Partitionstabelleneinträge
                    
                      - Boot-Typ-Indikator-Byte
- Zylinderkopf-Sektor-Startnummer der Partition
- Dateisystem-Indikatorbyte
- Endende Zylinderkopf-Sektornummer der Partition
- Relative Sektornummer am Anfang der Partition
- Anzahl der Sektoren der Partition
 
- DOS-Bootdatensatz (DBR) / DOS-Bootsektor
                    
                      - Anzahl der Stammverzeichnisse
- Gesamtzahl der Sektoren
- Mediendeskriptor
- Anzahl der FAT-Sektoren
- Sektoren pro Spur (oder Sektoren pro Kopf)
- Versteckte Sektoren
 
- Dateizuordnungstabelle (FAT)
                    
                      - Wie Windows das unsachgemäße Herunterfahren erkennt
 
- Stammverzeichnis
- Langer Dateiname (LFN)
- Datenbereich (oder Dateibereich)
- Fragmentierte und defragmentierte Daten
- Identifizieren der Ursache für Datenbeschädigung
                    
                      - Booten Sie das System mit einer bootfähigen Diskette
                        
                          - Überprüfen der MBR-Informationen
- Wenn MBR in Ordnung ist, überprüfen Sie DBR
 
 
 
Kapitel 4: Zahlensysteme
            
            
              - Einführung
- Dezimalzahlensystem
- Binäres Zahlensystem
                
                  - Konvertierung von Binärzahlen in Dezimalzahlen
- Konvertierung von Dezimalzahlen in Binärzahlen
- Binäre Zahlenformate
                    
                      - Das Bit
- Das Knabbern
- Der Byte
- Das Wort
- Das Doppelwort
 
 
- Oktalzahlensystem
                
                  - Konvertierung von Binär zu Oktal
- Konvertierung von Oktal in Binär
- Konvertierung von Oktal in Dezimal
- Konvertierung von Dezimal in Oktal
 
- Hexadezimales Zahlensystem
                
                  - Konvertierung von Binär zu Hexadezimal
- Konvertierung von Hexadezimal in Binär
- Konvertierung von Hexadezimal in Dezimal
- Konvertierung von Dezimalzahlen in Hexadezimalzahlen
 
- ASCII-Code
- Einige wichtige Begriffe aus dem Zahlensystem, die häufig zur Darstellung von Daten und Datenspeicherung verwendet werden
                
                  - Byte
- Kilobyte
- Megabyte
- Gigabyte
- Terabyte
- Petabyte
- Exabyte
- Zettabyte
- Yottabyte
 
- Allgemeine Begriffe zur Datenspeicherung
Kapitel 5 Einführung in die C-Programmierung
            
            
              - Einführung
- Warum C in der Datenwiederherstellungsprogrammierung verwenden?
- Lassen Sie mich davon ausgehen, dass Sie keine Kenntnisse in C
- Lasst uns beginnen
- Schlagwörter
- Kompilieren des Programms
- Zahlen drucken
- Verwenden von Variablen
- Numerische Variablentypen
                
                  - Initialisieren numerischer Variablen
 
- Betreiber
                
                  - Zuweisungsoperator
- Mathematische Operatoren
- Relationale Operatoren
- Logische Operatoren
- Der Komma-Operator
 
- Noch etwas zu printf() und Scanf()
- Kontrollanweisungen
                
                  - Die if else-Anweisung
- Die switch-Anweisung
- Die break-Anweisung
- Die continue-Anweisung
 
- Schleifen
                
                  - Die while-Schleife
- Die do while-Schleife
- Die for-Schleife
- Die goto-Anweisung
 
- Zeiger
- Anordnung
                
                  - Zeichen-Arrays
- Zugriff auf die Elemente
- Initialisieren von Array-Elementen
- Durchlaufen eines Arrays
- Mehrdimensionale Arrays
 
- Saiten
                
                  - Einige allgemeine String-Funktionen
- Die strlen-Funktion
- Die strcpy-Funktion
- Die strcmp-Funktion
- Die strcat-Funktion
- Die strtok-Funktion
 
- Funktionen
                
                  - Übergabe von Wertfunktionen
- Aufruf per Referenz
- Dereferenzierung
 
- Speicherzuweisung in C
                
                  - Neuzuweisung von Speicher
- Speicher freigeben
 
- Bauwerke
                
                  - Strukturen mit Zeigermitgliedern in C
- Strukturinitialisierer in C
- Übergeben von Strukturen an Funktionen in C
 
- Union
                
                  - Das Schlüsselwort union
- Eine praktische Anwendung einer Union bei der Datenwiederherstellung
 
- Dateiverwaltung in C
                
                  - Die Dateimodi der fopen-Funktion
- Dateien schließen
- Lesen von Dateien
- Schreiben in Dateien
 
- Befehlszeilenargumente mit C
- Bitweise Manipulatoren
                
                  - Bitweises UND
- Bitweises ODER
- Bitweises Exklusiv-ODER
- Bitweises Kompliment
- Bitweises Verschieben nach links
- Bitweises Verschieben nach rechts
 
- Funktionen in Binär–Dezimal und Konvertierungen
- Funktion zur Umwandlung von Dezimal in Binär
- Funktion zur Konvertierung von Binär zu Dezimal
- Debuggen und Testen
                
                  - Syntaxfehler
- Logische Fehler
 
- Testen
                
                  - Einige Testprinzipien
- White-Box-Tests
- Black-Box-Tests
- Äquivalenzklassen
- Grenzwertanalyse
- Einen Testplan erstellen
 
Kapitel 6 Einführung in die Computergrundlagen
            
            
              - Einführung
- Grundlegendes Konzept
                
                  - Zentralprozessor
                    
                      - Zentralspeicher
- CPU-Register
- Assemblerstruktur
- Vorteile des Assemblers
- Lass mich mein Versprechen halten
- Speichern und Laden der Programme
- Segmente
- Datenbewegung
 
- Unterbrechungen
                    
                      - Interne Hardwareunterbrechungen
- Externe Hardwareunterbrechungen
- Softwareunterbrechungen
 
 
- Int 20H, Prozess beenden
- Int 21H, MS-DOS-Systemfunktionen
Kapitel 7 Erforderliche DOS-Befehle
            
            
              - Einführung
- Kurze Geschichte
                
                  - Microsoft Disk Operating System
- (MS-DOS) Version 1.0
- MS-DOS Version 2.0
- MS-DOS Version 3.0 bis 5.0
- MS-DOS Version 6.0
- MS-DOS Version 7.0 (Windows 95)
 
- Erforderliche Befehle
                
                  - ATTRIB
- CD (oder CHDIR)
- CHKDSK
- CLS
- BEFEHL
- KOPIE
- DEBUGGEN
- COM-Erweiterung
- EXE-Erweiterung
- DEL (oder ERASE)
- DELTREE
- DOSKEY
- DIR
- DISKCOPY
- BEARBEITEN
- AUSFAHRT
- FC
- FDISK
- FINDEN
- FORMAT
- ETIKETT
- MD (oder MKDIR)
- MEHR
- BEWEGEN
- RD (oder RMDIR)
- SCANDISK
- TYP
- XKOPIEREN
 
- Spezifikationsverknüpfungen, Platzhalter und Umleitungen
                
                  - Verknüpfungen
- Platzhalter
- Umleitung
                    
                  
 
Kapitel 8 Disk-BIOS-Funktionen und Interrupt-Behandlung mit C
            
            
              - Einführung
- Biosdisk- und _Bios_disk-Funktionen
- diskinfo_t-Struktur
- absread- und abswrite-Funktionen
- Interrupt-Behandlung mit C
                
                  - SREGS-Struktur
                    
                      - REGS Union
- BYTEREGS- und WORDREGS-Strukturen
- int86- und int86x-Funktionen
- segread-Funktion
- intdos- und intdosx-Funktionen
 
 
- So ermitteln Sie die physische Festplattennummer
- Interrupt 13H (INT 13H), ROM-BIOS-Disk-Treiberfunktionen
Kapitel 9 Umgang mit großen Festplatten
            
            
              - Lassen Sie mich Ihnen zunächst eine Geschichte erzählen
- INT 13H Erweiterungen
- So verwenden Sie INT 13H-Erweiterungen in der C-Programmierung
                
                  - Kommentare zur Kodierung des Programms
 
Kapitel 10 Datenwiederherstellung von beschädigten Disketten
            
            
              - Warum die Diskette nicht lesbar ist
                
                  - So erholen Sie sich
- Methode – 1
- Speichern Sie das Boot-Image einer neuen Diskette
                    
                      - Erstellen des Images des DOS-Boot-Records einer funktionierenden Diskette
                        
                          - Kommentare zur Programmcodierung
 
- Einfügen des Boot-Images in den ersten Sektor der nicht lesbaren Diskette
                        
                          - Kommentare zur Programmcodierung
 
- Lassen Sie es uns mit einem einzigen Programm machen
 
- Kommentare zur Programmcodierung
- Speichern des Boot-Image in HEXADEZIMALEN Zeichen zur Verwendung in unserem vorherigen Programm
- Kommentare zur Kodierung des Programms
- Methode – 2
                    
                      - Was tun, wenn Methode 1 nicht funktioniert?
- Alle Daten der Medienoberfläche in eine einzige Datei kopieren
                        
                          - Kommentare zur Programmcodierung
 
- Überlegen Sie, wie Sie den Lesefehler eines Sektors beheben können.
                        
                          - Kommentare zur Programmcodierung
 
- Fügen Sie die Daten aus der Datei auf die physische Oberfläche einer neuen Diskette ein
                        
                          - Kommentare zur Programmcodierung
 
- Überlegungen zur logischen Wiederherstellung gelöschter oder verlorener Daten
                        
                          - Kommentare zur Kodierung
- Kommentare zur Kodierung
- Kommentare zur Kodierung
 
 
 
Kapitel 11 Erstellen von Backups
            
            
              - Warum Backups
- Wann und was gesichert werden soll
- Sicherung des MBR (Master Boot Record) und dessen Verwendung
                
                  - Warum MBR sichern?
- Was kann mit der Sicherung von MBR wiederhergestellt werden?
- Schreiben des Programms zum Erstellen einer MBR-Sicherung
                    
                      - Kommentare zur Programmcodierung
 
- Programm zum Wiederherstellen des MBR aus einem Backup
                    
                      - Kommentare zur Programmcodierung
 
 
- Sicherung des DBR (DOS Boot Record) und dessen Verwendung
                
                  - Warum DBR sichern?
- Was kann mit dem Backup von DBR wiederhergestellt werden?
- Programme zum Erstellen und Wiederherstellen von Backups von DBR
 
- Vollständige Disk-Imaging
                
                  - Schreiben des Programms für die vollständige Datenträgerabbildung
                    
                      - Kommentare zur Kodierung
- Kommentare zur Kodierung
 
 
Kapitel 12 Lesen und Ändern des MBR mit Programmierung
            
            
              - Master Boot Record (MBR) oder Master Partition Table (MPT)
- Master-Boot-Record-Format
- Format der Partitionstabelleneinträge
- Schreiben eines Programms zum Lesen der Partitionstabelle des MBR
                
              
- Programm zum Finden aller logischen Partitionen und ihrer Informationen
                
                  - Kommentare zur Kodierung
- Kommentare zur Kodierung
 
- MBR durch Programmierung ändern
                
              
Kapitel 13 Lesen und Ändern von DBR mit Programmierung
            
            
              - DOS-Bootdatensatz (DBR) / DOS-Bootsektor
- DBR von Disketten und kleinen Datenträgern lesen
- Lesen des DBR großer Datenmengen
- So stellen Sie DBR mit Programmierung wieder her
                
              
Kapitel 14 Programmierung für die Wiederherstellung von „Raw-Dateien“
            
            
              - Wiederherstellung von Rohdateien
- Kopf- und Fußzeilen einiger wichtiger Dateitypen
- Schreiben eines Programms zur Wiederherstellung von RAW-Dateien
                
              
- INT 10H, Funktion 01H - Cursortyp festlegen
Kapitel 15 Programmierung für Datenlöscher
            
            
              - Einführung
- Wenn die Daten vollständig unwiederbringlich sind
- Warum die Datenlöschung so wichtig ist
- Schreiben eines Programms zum zerstörungsfreien Löschen von Daten
                
                  - Kommentare zur Logik und zur Codierung des Programms
 
- Schreibprogramm für Destructive Data Wiper
                
              
- Datenbereich einer bestimmten Datei löschen
                
                  - Kommentare zur Logik und Codierung des Programms
 
Kapitel 16: Weitere Dienstprogramme für Festplatten entwickeln
            
            
              - Einführung
- Partitionen verstecken
- So wird die Partition versteckt
                
                  - Programm zum Verstecken der Partition schreiben
- Kommentare zur Kodierung
- Ein Programm zum Einblenden der Partition schreiben
- Kommentare zum Programm
- Programm zum Löschen der Partition schreiben
- Kommentare zum Programm
 
- Formatieren der Diskette mit der Meldung „Track 0 Bad“
                
                  - Schreiben des Disk-Editing-Tools
 
ANHANG