Forum: PC-Programmierung über windows treiberprogramm auf physikalische adresse von sd karte schreiben


von eugen_jo (Gast)


Lesenswert?

Hi,

ich hätte eine Frage, weiß jemand von euch, ob es ein SDIO Treiber 
Programm für SD Karten gibt, dass es mir ermöglicht z. B. ein bit-file 
auf die physikalische Adresse der SD Karte zu schreiben, sodass die 
Karte nicht Fat oder in einem anderen Format formatiert ist.

Habe gegoogelt und bisher nichts gefunden, außer ein Programm von Dell, 
was auf Windows XP nur läuft und nicht auf windows 7.


Vielen Dank

eugen

: Verschoben durch User
von Peter II (Gast)


Lesenswert?

eugen_jo schrieb:
> Habe gegoogelt und bisher nichts gefunden

was hast du da gesucht?

Windows kann ohne irgendwelche Treiberprogrammierung auf jeden 
Datenträger per RAW zugreifen.

https://msdn.microsoft.com/en-us/library/windows/desktop/aa363858(v=vs.85).aspx

> You can use the CreateFile function to open a physical disk drive or a volume

von eugen_jo (Gast)


Lesenswert?

cool, das heißt über terminal einfach, ne:D
gucks mir mal an:)

von AntiMaker (Gast)


Lesenswert?

Peter II schrieb:
> Windows kann ohne irgendwelche Treiberprogrammierung auf jeden
> Datenträger per RAW zugreifen

Damit erwischt man aber nur Logische Adressen der SD-Karte.

die werden vom Karten-eigenen Controller erst noch (nach Wearleveling, 
Defect-Management) auf physikalische Adressen umgesetzt.

Um da dran vorbeizukommen brauchst du aber erstmal viel Wissen über die 
Karten-Internas und evtl. eine gepatchte Firmware-Version.
Ob dann noch ein spezieller Windows-Treiber nötig ist, ist zweitrangig 
bzw. das kleinere Problem.

von Thomas (kosmos)


Lesenswert?

Wenn dumm läuft überschreibst du den geschützten Speicherbereich und 
wirst dann die Karte nicht mehr ansprechen können bzw. hast du dann 
einen Read only Datenträger.

Ist mir mit dd zero passiert, Sandisk hat die Karte zum Glück getauscht.

von Jim M. (turboj)


Lesenswert?

eugen_jo schrieb:
> ich hätte eine Frage, weiß jemand von euch, ob es ein SDIO Treiber
> Programm für SD Karten gibt, dass es mir ermöglicht z. B. ein bit-file
> auf die physikalische Adresse der SD Karte zu schreiben, sodass die
> Karte nicht Fat oder in einem anderen Format formatiert ist.

Darf unter Windoof nur Admin, es gibt aber eine Version von dd für 
Windows die "pyhsikalische Datenträger" kennt. Dabei muss man aber 
höllisch aufpassen dass man nicht die Festplatte erwischt.

Nitpick: Auf die 1. Partition darf auch ein Luser schreiben, IMO auch 
in die FAT selbst. Nur steht die nicht ganz am Anfang der SD Karte - man 
müsste also die Partitionstabelle auslesen können.


Außerdem hat das Ganze den Nachteil das Windoof beim nächsten Anstecken 
das Ding neu formatieren will.

von Satya Nadella (Gast)


Lesenswert?

Jim M. schrieb:
> Windoof

Was bitte ist Windoof? Sind wir hier im Kindergarten?

Beitrag #5101850 wurde von einem Moderator gelöscht.
von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Jim M. schrieb:
> Nitpick: Auf die 1. Partition darf auch ein Luser schreiben, IMO auch in
> die FAT selbst. Nur steht die nicht ganz am Anfang der SD Karte - man
> müsste also die Partitionstabelle auslesen können.

Noch ein "Nitpick":

SD-Karten dürfen gar nicht mehrere Partitionen haben. Das ist 
Bestandteil der SD-Karten-Spezifikation, die unter anderem auch das 
verwendete Dateisystem vorschreibt, nämlich FAT16, FAT32 und exFAT, 
jenachdem ob SD(SC), SDHC oder SDXC-Karte, d.h. bis einschließlich 2 GB, 
bis einschließlich 32 GB oder eben darüberliegende Kapazität.

von Peter M. (r2d3)


Lesenswert?

Thomas O. schrieb:
> Wenn dumm läuft überschreibst du den geschützten Speicherbereich und

Was ist das genau, bitte?

> wirst dann die Karte nicht mehr ansprechen können bzw. hast du dann
> einen Read only Datenträger.

von Georg (Gast)


Lesenswert?

Peter M. schrieb:
>> Wenn dumm läuft überschreibst du den geschützten Speicherbereich und
>
> Was ist das genau, bitte?

Der Controller von SD-Karten reserviert (nicht unbeträchtliche) Teile 
des Speichers als Ersatz für fehlerhafte Speicherstellen, für 
Systemverwaltung, als allgemeine Reserve und den Rest verwurschelt er 
nach ausgefuchsten Algorithmen, um die geschriebenen Informationen 
möglichst gleichmässig zu verteilen. Einen Zugriff auf "physikalische" 
Adressen gibt es also garnicht, dazu müsste man die Flash-Chips auslöten 
und anderweitig ansteuern, womit die SD-Karte also unbrauchbar ist und 
alle Informationen verloren.

WARUM willst du überhaupt an bestimmte Adressen speichern? Nimm 
Flash-Speicher-ICs, da kannst du schreiben wohin du möchtest.

Georg

von Peter M. (r2d3)


Lesenswert?

Georg schrieb:
> WARUM willst du überhaupt an bestimmte Adressen speichern? Nimm
> Flash-Speicher-ICs, da kannst du schreiben wohin du möchtest.

Darum geht es mir gar nicht.

Thomas O. schrieb:
> Wenn dumm läuft überschreibst du den geschützten Speicherbereich und
> wirst dann die Karte nicht mehr ansprechen können bzw. hast du dann
> einen Read only Datenträger.
>
> Ist mir mit dd zero passiert, Sandisk hat die Karte zum Glück getauscht.

Mit dd zero erreiche ich nur die Speicheradressen, die mir der 
Speichercontroller präsentiert, aber keine "geschützten", oder?

dd schreibt einfach nur munter auf das "block device", das wiederum 
seine Reservesektoren und - speicherbereiche nach außen gar nicht 
zeigt...

Meiner Meinung kann man das "block device" munter beschreiben, aber 
davon geht es nicht kaputt (von Verschleiss irgendwann mal abgesehen), 
ähnlich wie bei einer Festplatte, wo ich über das "block device" auch 
nicht an "geschützte Bereiche", also Reservesektoren herankomme.

: Bearbeitet durch User
von Peter II (Gast)


Lesenswert?

Georg schrieb:
> Peter M. schrieb:
>>> Wenn dumm läuft überschreibst du den geschützten Speicherbereich und
>>
>> Was ist das genau, bitte?
>
> Der Controller von SD-Karten reserviert (nicht unbeträchtliche) Teile
> des Speichers als Ersatz für fehlerhafte Speicherstellen, für
> Systemverwaltung, als allgemeine Reserve und den Rest verwurschelt er
> nach ausgefuchsten Algorithmen, um die geschriebenen Informationen
> möglichst gleichmässig zu verteilen. Einen Zugriff auf "physikalische"
> Adressen gibt es also garnicht, dazu müsste man die Flash-Chips auslöten
> und anderweitig ansteuern, womit die SD-Karte also unbrauchbar ist und
> alle Informationen verloren.

das kann kaum sein. Die Adresse die die Karte intern braucht sind von 
außen gar nicht erreichbar. Denn auch mit einem Fat-Dateisystem kann man 
jeden Sektor erreichen, dabei darf die Karte nicht kaputt gehen.

von Peter M. (r2d3)


Lesenswert?

Peter II schrieb:
> das kann kaum sein. Die Adresse die die Karte intern braucht sind von
> außen gar nicht erreichbar. Denn auch mit einem Fat-Dateisystem kann man
> jeden Sektor erreichen, dabei darf die Karte nicht kaputt gehen.

Danke. Ich konnte die Erklärung von Thomas O. nicht nachvollziehen.

von eugen_jo (Gast)


Lesenswert?

also, ich würde gern auf die physikalische adresse 0 anfangen ein 
bitfile über windows draufzuschreiben und dann dies mit einem 
microcontroller einfach auslesen. ich hab keinen plan wie ich das mit 
windows hinkriege, kennt jemand da die richtigen befehle, die ich machen 
muss?
vielen dank für weitere tips

von Peter II (Gast)


Lesenswert?

eugen_jo schrieb:
> ich hab keinen plan wie ich das mit
> windows hinkriege, kennt jemand da die richtigen befehle, die ich machen
> muss?

steht doch schon im 2. Beitrag.

von eugen_jo (Gast)


Lesenswert?

ah, naja, ich verstehe die seite nicht. ich wüsste nicht, welche befehle 
ich eingeben müsste und so, außerdem sieht das nicht danach aus, was ich 
machen will, blickt da nicht durch

von Peter II (Gast)


Lesenswert?

eugen_jo schrieb:
> ah, naja, ich verstehe die seite nicht. ich wüsste nicht, welche befehle
> ich eingeben müsste und so, außerdem sieht das nicht danach aus, was ich
> machen will, blickt da nicht durch

kannst du überhaupt Programmieren?

Wenn nicht, schreibe einfach die Daten in eine Textdatei und kopiere sie 
mit https://sourceforge.net/projects/win32diskimager/ auf die Sd-Karte

von eugen_jo (Gast)


Lesenswert?

hey, danke für deine schnellen Antworten:D
Ich kann bisschen c und etwas vhdl:)
Ich hätte noch eine etwas doofe Frage, schreibt das Programm auf die 0 
Adresse von der SD Karte? Ich kann in diesem Programm keine Option 
sehen, die einem erlaubt auf die gewählte physikalische Adresse zu 
schreiben.

vielen Dank für die Tips.

von Peter II (Gast)


Lesenswert?

eugen_jo schrieb:
> Ich hätte noch eine etwas doofe Frage, schreibt das Programm auf die 0
> Adresse von der SD Karte? Ich kann in diesem Programm keine Option
> sehen, die einem erlaubt auf die gewählte physikalische Adresse zu
> schreiben.

ja, es wird von 0 bis ende gelesen und auch wieder geschrieben. Was 
anders würde für ein "Image" Programm auch keinen sinn machen.

von eugen_jo (Gast)


Lesenswert?

danke dir:D

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.