Hi Freunde,
Sein post dazu:
<michael>
Just a quick note. The Unibone you sent me has been getting lots of good
usage! I really like it! With its help, I've gotten my pdp-11/45 to boot
nearly every PDP-11 OS I can find: XXDP, RT-11, RSX-11, RSTS/E, DSM (DEC's
MUMPS implementation), AT&T Unix, BSD Unix, Ultrix, and RUST/SJ. Ian
Hammond and I are working on getting RUST/XM (formerly SHAREeleven)
working, too. I haven't found a bootable copy of IAS or TRAX, so if you
happen to run across these, I'd be interested!
It occurred to me last week that I ought to be able to use the Unibone to
snapshot the entire PDP-11 memory, and to my delight your demo program
already had this capability. With a bunch of truly hackish scripting, I
set the Unibone to snapshot the entire 248k of memory every 1/2 second and
ship the resulting memory.dump file over to my Linux workstation for a
real-time display. The Linux side uses even more hackish scripting; a
mixture of C for preprocessing and R for rendering.
Booting Ultrix-11 is the most exciting of the bunch, in part because it
takes so long. For comparison, RT-11 boots so fast that I basically can't
capture it! (Well, I can see the first and second stage bootloader zip
past, but the drivers load so fast that there isn't much to see.)
Here's the result:
The interpretation of the memory
display in the upper right corner is that
the horizontal axis is for addresses, while each column is a histogram of
byte values aggregated over swaths of 1024 bytes. PDP-11 opcodes are not
uniformly distributed in byte values (nor is human-readable ASCII), so
there is a definite visual "texture" that can help identify when sections
of memory are copied. This happens early in the boot process. What's kind
of striking to me is how huge Ultrix is and how it appears to basically
reserve the lower half of addressable memory. You can see the small-ish,
swappable processes slotting in and out above that once timesharing
starts.
Regards,
Michael
</michael>