Autor Thema: Festplatte löschen  (Gelesen 4258 mal)

Highway

  • Beiträge: 10
    • Profil anzeigen
Gespeichert
« am: 23. April 2005, 23:42 »
Hi Leute,
möchte mir eine in Real Mode ein kleines Prog bastel, was eine Festplatte (Richtig, dh. beschreiben mit Nullen oder so ) löscht. Meine Frage lautet: Ist es überhaupt möglich mit dem Bios Interrupt 13H eine Festplatte zu beschreiben die zB. jenseits der 10GB liegt?
Ich denke mal wenn ich Sektor für Sektor die Festplatte beschreiben will, komme ich irgendwann mal an einen Punkt an wo die nächste Sektoranzahl größer als 16 Bit ist ( Spätestens da ist dann Empty ). Oder verstehe ich mal wieder alles falsch?

Wie kann man das evtl hin bekommen?

Für ein paar Tips wäre ich echt Dankbar

Gruß Highway

joachim_neu

  • Beiträge: 1 228
    • Profil anzeigen
    • http://www.joachim-neu.de
Gespeichert
« Antwort #1 am: 24. April 2005, 08:56 »
naja, crash den MBR (die ersten sektoren oder so) in dem die Partitionen stehen, dann dürfte alles nimmer normal lesbar sein ;)
http://www.joachim-neu.de | http://www.orbitalpirates.de | http://www.middleageworld.de

System: 256 RAM, GeForce 2 MX 400, AMD Athlon XP 1600+, Windows XP, 1x Diskette, 1x DVD-ROM, 1x CD-R(W) Brenner,...

Homix

  • Beiträge: 138
    • Profil anzeigen
Gespeichert
« Antwort #2 am: 24. April 2005, 11:35 »
hi,
soweit ich es verstanden habe glaube ich eher, er will die ganze Festplatte mit 0en beschreiben, damit Daten oder so nicht mehr wiederhergestellt werden oder so und da nützt es nicht ganz so viel nur den MBR zu zerstören.
Mit dem Bios ist nach 8 GB schluß !

Hier findest du Code, wie du HDD-Sektoren lesen und schreiben kannst mit Ports:
http://www.nondot.org/sabre/os/files/Disk/HD_PORTS.asm

cu,
stefan2005

Highway

  • Beiträge: 10
    • Profil anzeigen
Gespeichert
« Antwort #3 am: 24. April 2005, 11:38 »
Hi Stefan,
genau so was meine ich, aber verwendet der Code nicht DOS Int´s?
Ich denke mal das ich DOS Int´s nicht verwenden kann.

Danke für deine Antwort.


PS: Fragen über Fragen

Homix

  • Beiträge: 138
    • Profil anzeigen
Gespeichert
« Antwort #4 am: 24. April 2005, 12:15 »
hi,
in den Kommentaren steht, dass nur zum Test ZUSÄTZLICH Sektoren per Bios ausgelesen werden und dann mit den Sektoren verglichen werden, die alleine durch ports gelesen wurden !

cu,
stefan2005

BigOlly

  • Beiträge: 88
    • Profil anzeigen
Gespeichert
« Antwort #5 am: 24. April 2005, 13:52 »
Also um das mal hier in die richtige Bahn zu lenken:

Ob Du die gesamte Festplatte mit dem BIOS anfassen (also jeden Sector lesen und schreiben) kannst hängt von der Größe der Festplatte und Deinem BIOS ab.

Jetzt könnte ich hier eine Liste machen aus der hervor geht was ein BIOS können muss um welche Platten-Größen benutzen zu können.
Das spare ich mir denn diese Listen gibt es zu hauf im Internet!

Zu Deiner Frage Highway kann ich Dir aber folgenden Tip geben:
Ein BIOS von "heute" kann jede Plattengröße Adressieren. Du kannst also, wenn Dein Board nicht gerade 5 Jahre alt ist, mit Sicherheit jeden Sector einer Festplatte, auch wenn sie z.B. 200GB hat mit dem BIOS auslesen, schreiben, löschen etc.

Im Zuge meines Betriebssystems (Boot-Prozess und eigenes File-System) habe ich mich intensiev mit diesem Thema beschäftigt.
Mein OS kann z.B. auch von einer 250GB-Platte booten wenn der Bootsector z.B. irgendwo hinter 220GB liegt.

Ein Tip noch:
Selbstverständlich musst Du die erweiterten BIOS-Funktionen nutzen, int 02h gibt das datürlich nicht her. Aber diese Erweiterung haben die BIOSe schon seit Jahren eingebaut.

noch Fragen?  :lol:

Gruß BigOlly
====================================================
Zitat: "Es ist schwierig zu antworten, wenn man die Frage nicht versteht."
(würde mich ja mal interessieren ob jemand weiß woher dieser Satz stammt...)

GhostCoder

  • Beiträge: 187
    • Profil anzeigen
Gespeichert
« Antwort #6 am: 27. April 2005, 10:24 »
Hiho,

du musst die LBA HDD Funktionen des BIOS benutzen. 0x47 oder so ist die Funktionsnummer, musste mal unter Ralf Browns Interrupt List gucken.
Da kannste 2^64 Sektoren lesen/schreiben.

Gruß GhostCoder
A man, a legend!

Highway

  • Beiträge: 10
    • Profil anzeigen
Gespeichert
« Antwort #7 am: 27. April 2005, 21:17 »
Langsam macht sich Panik breit  :D

Hatt jemand zufällig ein wenig Code für mich, damit ich mir mal das anschauen kann....?


Gruß Highway

 

Einloggen