| TIP: Click on subject to list as thread! | ANSI |
| echo: | |
|---|---|
| to: | |
| from: | |
| date: | |
| subject: | DMA? |
*** Answering a msg posted in area PERSONAL_MAIL (Personal Mail).
Hello Mike!
UvdH>> When I set up the DMA chips to write to a buffer, how does
UvdH>> this work when another task is being serviced?
UvdH>> Is the memory protection a problem?
UvdH>> What other caveats are to be taken care of? (this is OS/2,
UvdH>> not MS-DOS)
MB> Under OS/2, you can only do DMA from a device driver running in Ring
MB> 0. I'll assume you understand that.
More or less, yes.
MB> In general, a device driver sees a virtual address to memory, which is
MB> 16:16. These addresses may have other aliases, especially when they
MB> reflect buffers from applications in linear 0:32 space. A device driver
MB> uses system API calls to lock ranges of memory into some physical RAM and
MB> then passes these physical addresses to the DMA hardware. In some cases,
MB> the RAM buffers may be physically discontigous, and this is compensated
MB> for by scatter-gather hardware to do the DMA operation.
MB> Since device drivers cannot be preempted, concurrency is not an issue.
Where can i get some info (sources?) for a DMA-devicedriver which I can use
for my own setup?
Greetz,
Udo
---
* Origin: (2:285/308.2)SEEN-BY: 50/99 78/0 270/101 620/243 711/401 409 410 413 430 808 809 934 955 SEEN-BY: 712/407 515 517 628 713/888 800/1 7877/2809 @PATH: 285/308 32 1 280/801 270/101 712/515 711/808 809 934 |
|
| SOURCE: echomail via fidonet.ozzmosis.com | |
Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.