Port-vax archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: NetBSD in SIMH vax with 512 MB RAM



>>> Let's first of all agree that a page table size larger than 2^21
>>> entries is pointless.
>> Well, worse than pointless; it could completely break operation.
> From a hardware point of view?  No.  It would just waste memory.  So
> - pointless. Remember, the system page table is just a bunch of ram
> in your physical memory.

Well, depends on what you mean by "a page table size".  If you mean
"data structure in kernel space", then, yes.  But if you mean "value
set in the SLR", I disagree; see below.

>> But...
>>> The MMU will pick which page table to use based on the top two bits
>>> of the virtual address.  [...]
>> If the P0LR, P1LR, and SLR values are within range, yes.  If not, it
>> might not [...]
> If you read 4.4.3 of the VARM, it clearly states that the first check
> on the virtual address is on the top 2 bits, and any check after that
> is based on those two bits.

Yes.

But, as soon as you store a value outside the 0..200000 range in the
SLR, that is irrelevant.  At that point the hardware can do almost
anything without violating the VARM.  (The "almost" is because there is
one thing it is not permitted to do, that being to hang, to, in the
words of the VARM, "reach an unhalted state from which there is no
transition to a normal state in which the processor executes
instructions".  It is not clear to me whether that "transition" can
include things like "external reset button pressed" or, to be even more
extreme, "power turned off and back on".)

> In practice, you could implement this in various ways, but clearly
> the VARM states that if you try to address 0xc000 0000, you *must*
> get a length violation, no matter what SLR might be.

...as long as nothing has been done that produces UNDEFINED behaviour.
Setting SLR greater than 200000 is such a thing.

>> [...], except for an odd note that "Writing P1LR<31> has no effect.
>> The bit always reads as 0.".
> That's a weird one...???

Yeah.  I wonder what's behind it.  That text is in 4.6.2, "P1 Region",
on page 4-26.  It sounds a little bit like permission for large
negative values, but I can't see why there would be any need for that.

/~\ The ASCII				  Mouse
\ / Ribbon Campaign
 X  Against HTML		mouse%rodents-montreal.org@localhost
/ \ Email!	     7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B


Home | Main Index | Thread Index | Old Index