On Dec 7, 2017, at 2:22 PM, allison via cctalk
<cctalk at classiccmp.org> 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 classiccmp.org> 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.)
paul