I was (re?)introduced to Chuck Haley recently and discovered he had a copy
of a Bell Labs memo from himself, London, Maranzaro, and Ritchie. They
suggest that the path pursued to get UNIX running in/under TSS/370 was the
hard way to go.
Enjoy:
http://charles.the-haleys.org/papers/Alternate_Implementation_Proposal_for_…
--
- Tom
For some reason, against my wishes, I'm not getting TUHS messages as they
happen, but in batches (not digest) after 5-7 days. Last I've received
right now is from May 2. Anyone know why?
--
- Tom
Hey folks,
there is a cool poster by Bob Widlar, which we would like to have as a
big poster in the hackspace:
https://august.sax.de/widlar.jpg
This is already a high resolution scan (2048 × 3048) but we are looking
for something better (for A0 paper).
Does anyone have something like this maybe still in his collection?
greetings,
Janek :)
--
Janek Gál <janek(a)sax.de>
Dresden, Germany
http://www.sax.de
At 04:17 PM 5/2/2022, Dan Cross wrote:
>I vaguely remember Metaware being somewhat religiously extreme, but again the details are fuzzy now. Was there some kind of ecclesiastical reference in the man page?
I have the manuals around somewhere, and that rings a bell.
I used Metaware High C and the Pharlap extender in the early 1990s
in the odd 32-bit DOS enviroment to make 3D import/export plugins for
Autodesk's 3D Studio.
- John
We got in on the W4 from the IBM Federal Systems guy (later dealt out to
Loral, Martin Marietta, and then Lockheed-Martin). I started with
those guy doing a contract job to craft the second nework interface into
Secure Xenix (Jacob Recter I think was responsible for the first) to
provide a secure downgrading system for some government entity.
Then Intel developed the i860- and IBM came up with the Wizard card.
This was only designed to be.a coprocessor card and was done down in
Boca Raton. The fun and games with that one is that we were on early
steppings of the processor chips and spent a lot of time coding around
chip bugs (mostly with regard to interrupts). IBM/Intel had developed
this thing called hostlink that was supposed to be useful, but we
decided to port AIX to it. When IBM Owego came up with the W4, we were
asked to port AIX again to it.
We had one non-functional W4 kicking around for demo purposes that had 4
“delidded” i860 chips in it. I swapped one for an early stepping
(useless) chip and kept one of the delidded ones which I still have in a
box somewhere.
[ This also in from Peter Klapper. The files are at:
https://www.tuhs.org/Archive/Distributions/UCB/2.9BSD_MSCP/ ]
This is a 2.9BSD kernel with a backported MSCP driver from 2.10BSD
I tried to make a clean integration of the driver into the 2.9BSD source tree in order to be able use the standard procedures to configure and build the kernel.
To try it, rename the original directories /usr/include/sys and /usr/src/sys and unpack the two tar archives into your /usr directory.
Then change into /usr/src/sys/conf and just do a ./config for the kernel you want.
I made some configurations for:
MSCP23 (MSCP enabled kernel for the PDP11/23)
MSCP73 (MSCP enabled kernel for the PDP11/73)
FLOP23 (MSCP enabled 11/23 kernel for a boot floppy)
FLOP73 (MSCP enabled 11/73 kernel for a boot floppy)
MSCPSH (MSCP enabled kernel for an extended SIMH environment)
You may need to adapt the kernel configurations for the correct timezone and maybe the line frequency.
This is probably the most recent BSD system which runs on the PDP11/23.
Read the full story about this here: https://forum.vcfed.org/index.php?threads/scientific-micro-systems-sms-1000…
There is NO root password in this distribution. For installation on real hardware, at least a Maxtor XT-1085 (RD53) or larger is recommended.
My SMS1000 system currently has a Maxtor XT-1140 installed. Original was an XT-1085 in the system.
The disk layout for these two disks during installation is as follows:
Maxtor XT-1085 / DEC RD53
=========================
1024/8/18
interleave 1,4
--- layout ---
root = ra(0,0), size 3200
swap = ra(0,6400), size 1920
usr = ra(0,10240), size 64180
Maxtor XT-1140
==============
918/15/18
interleave 1,4
--- layout ----
root = ra(0,0), size 3200
swap = ra(0,6400), size 1920
usr = ra(0,10240), size 114880
I've split the data into 4 parts in order to not get too much when downloading:
1.) 29bsd-simh.tgz: A SIMH image including configuration file. "pdp11 sms1123.ini"
2.) 29bsd-smstape.tgz: A Linux dump of the QIC24 installation tape which was generated with my SMS1000 system. You can write this under Linux to a 60MB QIC tape with: "dd if=29bsd-sms-tape.dd of=/dev/st0" The SMS1000 generated format is not compatible with Linux, but the Linux dd'ed tape can be read by the SMS1000 system.
3.) 29bsd-tapefiles.tgz: The files to create a SIMH tape image, or real tape for another system.
4.) 29bsd-vtserver.tgz: The version of the vtserver and the corresponding configuration file with which I performed the successful initial installation. I worked with 19200bps, which is the maximum my SMS1000 supports on the console, under 2.9BSD only 9600bps works anyway.
Have fun with it, if you find bugs, they may of course be mine. ;)
I wish you and the community also a lot of fun with this version of 2.9BSD.
// Peter
Hi all, I just received this in the e-mail a few days ago:
[ now at https://www.tuhs.org/Archive/Distributions/DEC/Venix/ProVenix_2.0/ ]
From: Peter Klapper
Subject: PRO/VENIX 2.0 reconstructed ...
... and tested, for your collection ;-)
Probably the best OS for the Pro, see the benchmark:
PRO380 - PRO/VENIX V2.0:
========================
pk$ dryr
Dhrystone(1.1) time for 50000 passes = 86
This machine benchmarks at 581 dhrystones/second
pk$ drynr
Dhrystone(1.1) time for 50000 passes = 95
This machine benchmarks at 526 dhrystones/second
The four additional floppy disks contain also the source code which I
used to rebuild the missing binaries.
I wish you and the community much fun with the "new" resurrected
PRO/VENIX V2.0.
can someone point me at the earliest version of whereis? I first saw
it in 4.1, but maybe it came sooner. Also, if you've got a link to man
pages, thanks in advance.
I'm trying but failing to find it. My daughter says I suck at web
search, which, given where I work, is a bid sad :-)
> From: Rich Morin <rdm(a)cfcl.com>
> I'd love to hear from some folks who have used both Multics and
> Unix(ish) systems about things that differ and how they affect the
> user experience.
{This is a bit behind the flow of the conversation, because I wanted to
ponder for a while what I was going to say on this, to me, important topic.}
Technicaly, I don't quite qualify (more below), but I do have an interesting
perspective: I was the very first Unix person in the 'Multics' group at
MIT-LCS - the Computer Systems Group, which contained Corby and Jerry Saltzer.
The interesting thing, which may surprise some people, is that I _never_ got
any 'anti-Unix' static from anyone in the group, that I can remember. (Maybe
one grad student, who was a bit abrasive, but he and I had a run-in that was
mostly? caused by my fairly rapid assumption, as an un-paid undergrad, of a
significant role in the group's on-going research work. So that may have bled
across a bitt, to Unix, which was 'my' baby.)
I'm not sure what _they_ all made of Unix. None of us knew, of course, where
it was going to go. But I don't recall getting any 'oh, it's just a toy
system' (an attitude I'm _very_ familiar with, since it was what the TCP/IP
people got from _some_ members of what later became the ISO effort). Of
course, our Unix was a tiny little PDP-11/40 - not a building-sized
multi-processor 'information utility' mainframe - so they may well have not
thought of it in the same frame as Multics. Also, by the time I arrived the
group was doing nothing on Multics (except below); everyone was focused on
networks. So OS's were no longer a topic of much research interest, which may
also have contributed.
Anyway, technically, I don't count for the above, because I never actualy
wrote code on Multics. However, I had studied it extensively, and I worked
very closely with Dave Clark (a younger Multics light, later a leading figure
in the early TCP/IP work) on projects that involved Multics and my machine,
so I got to see up close what Multics was like as a system environment, as he
worked on his half of the overall project. I've also pondered Multics in the
decades since; so here's my take.
I really, really liked Unix (we were running what turns out to have been
basicaly a PWB1 system - V6, with some minor upgrades). I learned about it
the way many did; I read the manuals, and then dove into the system source
(which I came to know quite well, as I was tasked with producing a piece that
involved a major tweak - asynchronous 'raw' DMA I/O directly to user
processes).
Unfortunately, one of the two (to me) best things about Unix, is something it
has since lost - which is its incredible bang/buck ratio - to be more
precise, the functionality/complexity ratio of the early versions of the
system.
(Its other important aspect, I think, was that its minimal demands of the
underlying hardware [unlike Multics, which was irretrievably bound to the
segmentation, and the inter-segment data and code connection] along with its
implementation in what turned out to be a fairly portable language (except
for the types; I had to make up what amounted to new ones.)
So, what was Multics' major difference from other systems - and why
was it good?
I'd say that it was Multics' overall structuring mechanisms - the
single-level store, with the ability to have code and data pointers between
segments - and what that implied for both the OS itself, and major
'applications' (some of them part of the OS, although not the 'kernel' - like
networking code).
Unix had (and still may have, I'm not up on Linux, etc) a really major, hard
boundary beween 'user' code, in processes,and the kernel. There are
'instructions' that invoke system primitives - but not too many, and limited
interactions across that boundary. So, restricted semantics.
Which was good in that it helped keep the system simple and clear - but it
limited the flexibilty and richness of the interface. (Imagine building a
large application which had a hard boundary across the middle of it, with
extremely limited interactions across the boundary. Just so with the
interface in Unix between 'user' code, and the kernel.)
Multics is very different. The interface to the OS is subroutine calls, and
one can easily pass complex data structures, including pointers to other
data, any of which can be in the 'user's' memory, as arguments to them. The
_exact_ same _kind_ of interface was available to _other_ major subsystems,
not just the OS kernel.
As I've mentioned before, Dave's TCP/IP for Multics was not in the kernel -
it was ordinary user code! And he was able to work on it, test and install
new versions - while the system was up for normal useage!
Dave's TCP/IP subsystem included i) a process, which received all incoming
ackets, and also managed/handled a lot of the timers involved (e.g.
retransmission timeouts); ii) data segment(s), which included things like
buffered un-acknowledged data (so that if a retransmission timer went off,
the process would wake up and retransmit the data); iii) code segment(s):
iiia) some for use by the process, like incoming packet processing; iiib)
some which were logically part of the subsystem, but which were called by
subroutine calls from the _user_'s process; and iiic) some which were
commands (called by the user's shell), which called those iiib) procedures.
(There were issues in security because Multics didn't have the equivalent of
'set-user-id' on a cross-subsystem subroutine calls - although I think there
had been plans early on for that. When Dave's code was taken over by
Honeywell, for 'production' use, whole whole thing was moved into a lower
ring, so the database didn't have to be world-writeable in the user ring.)
This is typical of the kind of structure that was relatively easy to build in
Multics. Yes, one can do similar application without all those underlying
mechanism; but Turing-completeness says one doeesn't need stacks to compute
anything - but would any of us want to work in a system that didn't have
stacks? We have stacks because they are useful.
True, simple user applications don't need all that - but as one builds more
and more complex support subsytems, that kind of environment turns out to be
good to have. Think of a window system, in that kind of environment. Those
'tools' (inter-segment subroutine calls, etc) were created to build the OS,
but they turned out to be broadly useful for _other_ complicated subsystems.
I'm not sure I've explained this all wel, but I'm not sure I can fully
cover the topic with less than a book.
Noel