VAX Q-bus identical to PDP-11 Q-bus?

Paul Koning paulkoning at
Thu Dec 7 14:09:53 CST 2017

> On Dec 7, 2017, at 2:22 PM, allison via cctalk <cctalk at> wrote:
> On 12/07/2017 12:44 PM, Paul Koning via cctalk wrote:
>>> On Dec 7, 2017, at 11:50 AM, Jon Elson via cctalk <cctalk at> wrote:
>>> ...
>>> MSCP is a software protocol.  Any device that has a driver available for the PDP-11 operating system you want to use can use that device.  
>> True with small variations.  A sufficiently large disk might not be supported on some OS because the on-disk structure is limited in what device size it can handle.  (This applies to RSTS for example.)  Some devices use obscure MSCP mechanisms that might not be in all drivers -- for example, the RA80 uses host-based bad block replacement, which is quite a complicated process; I know RSTS supports that but it might be omitted in some other operating systems.
> ...
> Things like block replacement are options of the OS and the device IO is
> then just a
> interface.  The protocol for to talk to the device is a lower level
> layer in most cases.

No, bad block replacement in the UDA50/RA80 case is an MSCP mechanism where the controller (UDA50) offloads the work of managing bad blocks in part to the OS.  The host still sees a logically contiguous error-free block space, just like in other MSCP devices (but unlike pre-MSCP).  But if a block is found to be bad, the host driver has to help out with the process of assigning a replacement block.  It's very different from the earlier bad block management which simply involves marking the offending LBAs as unavailable in the file system free space tables, and much more complicated.  (The code in RSTS is about 2000 lines.)


More information about the cctalk mailing list