Autor Thema: DMA im PM  (Gelesen 3799 mal)

sp

  • Gast
Gespeichert
« am: 19. December 2004, 14:18 »
Hallo

Gibt es im PM etwas grundsätzliches bei der Nutzung von DMA zu beachten?
Also was ist z.B. wenn ich etwas an eine Stelle über die 1 MB Genze übertragen möchte? Ich nutze noch kein Paging und arbeite in C++, falls das wichtig sein sollte.


sp

Roshl

  • Beiträge: 1 128
    • Profil anzeigen
    • http://www.lowlevel.net.tc
Gespeichert
« Antwort #1 am: 22. December 2004, 13:09 »
Beim FDC kommt man ums DMA nicht herrum, aber da mein FDC nicht so recht fertig werden will, kann ich dazu wenig sagen momentan.
[schild=1]Wieder ein wertvoller(?) Beitrag von Roshl[/schild]

TeeJay

  • Beiträge: 630
    • Profil anzeigen
    • http://www.jay-code.de
Gespeichert
« Antwort #2 am: 22. December 2004, 14:43 »
Soweit ich mich erinnere sind die meisten Geräte nur bis unterhalb von 1 MB DMA fähig. ALso die "alten" Geräte.
Einige können auch bis 16 MB gehen.
----------------------
Redakteur bei LowLevel

lobmann

  • Beiträge: 243
    • Profil anzeigen
    • http://www.fallek.de.vu
Gespeichert
« Antwort #3 am: 22. December 2004, 15:01 »
Jo genau richtig, das Problem ist das is zu jedem DMA Kanal nen Page-Register zugeschaltet wird um über 1MB adressieren zu können, läuft so ähnlich wie die Adressierung im RM. Beim Floppy wird dieses Page-register soweit ich weiss ignoriert
Man kann doch nem alten Mann nicht in den Bart spucken und sagen es hat geschneit

TeeJay

  • Beiträge: 630
    • Profil anzeigen
    • http://www.jay-code.de
Gespeichert
« Antwort #4 am: 22. December 2004, 17:36 »
So in etwa :)

Oder du mapst einfach die jeweilige Page des Prozesses in den unteren 1 MB Bereich.
----------------------
Redakteur bei LowLevel

GhostCoder

  • Beiträge: 187
    • Profil anzeigen
Gespeichert
« Antwort #5 am: 22. December 2004, 19:33 »
Hiho,

eine Page mappen heißt einfach nur, eine virtuelle Page auf eine lineare Addresse "zeigen" zu lassen...
Wo die Page im userspace liegt, ist ja egal. Nur das Ziel zum kopieren mittels DMA muss ja unter der 1mb Marke liegen.

MfG GhostCoder
A man, a legend!

joachim_neu

  • Beiträge: 1 228
    • Profil anzeigen
    • http://www.joachim-neu.de
Gespeichert
« Antwort #6 am: 22. December 2004, 19:35 »
d.h. du musst warscheinlich das ganze unter 1 MB kopieren, bzw. das bei großen sachen häppchenweise machen.
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,...

 

Einloggen