Subject: Re: MicroVAX I: in need of modern OS.
To: Anders Magnusson <ragge@ludd.luth.se>
From: Brian D Chase <bdc@world.std.com>
List: port-vax
Date: 02/05/1999 14:04:28
On Fri, 5 Feb 1999, Anders Magnusson wrote:

> > That results in the "@" character being displayed immediately after the
> > "0" in 40.  So maybe we're okay with that :-)

> Great! Now it's only for you to load a kernel :-)

I'll work on throwing an existing kernel at it to see where things break.

> > How is the setup of DMA buffers handled in NetBSD/vax on Q-bus systems?
> > Do you reserve physical address space and keep virtual memory mapping away
> > from those addresses, or do you set them up in contiguous chunks of
> > virtual memory? (Which if I understand correctly, can be non-contiguous
> > chunks of physical memory).

> No, there are a mapping system: Each page in the Unibus/Qbus address space
> can be mapped to any physical page in memory. A Unibus consists of 512
> map registers, (actually 496, but that's another story) mapping the whole 
> Unibus address space onto any memory location. So, the first page in 
> the 256K unibus address space can be mapped to some physical memory
> address, and the second page can be mapped to somewhere completely different.

Wait, I'm confused.  I thought we got past this whole mapping thing when
you explained that Q-bus address space == Physical address space on the
MicroVAX I (hence no mapping registers required)?  I don't care about the
18bit Unibus :-)  At least not until I find an 11/730 within hauling
distance.

I was just wanting to know in general how you locate DMA buffers in
physical memory such that 1) the CPU knows where they are, 2) the device
knows where they are, and 3) how virtual memory management and DMA on a
physical address space peacefully coexist.  It may be more appropriate to
ask it in one of the kernel tech lists. 

-brian.
---
Brian "JARAI" Chase | http://world.std.com/~bdc/ | VAXZilla LIVES!!!