> From: Heinz Lycklama
> The DLV-11 supported only one serial port in 1975. Other DEC interface
> devices may have been added to the Qbus after the mid 1970's.
The DLV11-J:
http://gunkies.org/wiki/DLV11-J_asynchronous_serial_line_interface
is basically 4 DLV11's rolled into a single dual-width card; that's definitely
an option for Mini-Unix (which apparently supports up to 4 simultaneous
users). They are program compatible with the DHV11, so the driver should 'just
work'. The boards are readily available on eBait; 'glitchworks' (of this
parish) sells replacement cables (quite good, I have several).
Another option for serial lines on QBUS machines are DZ11 and DH11 versions
for QBUS. (The DZ11 is interrupt-per-character on output; the DH11 is DMA on
output.) There are two generations of each: the DZV11 (quad-width) and DZQ11
(dual-width), and DHV11 (quad) and DHQ11 (dual). I think they are pretty much
program compatible with their UNIBUS brethren, and should be easy to get
running. The boards are easy to find on eBait, the breakout panels are
somewhat rarer (although there sre some DH ohes up at the moment).
Noel
Brantley Coile:
The fact that a pointer of zero generates a hardware trap is not
defined in the language, whereas a 0 is is defined to be a null pointer.
=====
The language doesn't require that dereferencing a null pointer
cause a trap, either. There's no way to guarantee that behaviour
in all environments unless every pointer dereference must include
instructions to check for the null-pointer value, because C can
run in environments in which any pointer value might be a valid
address.
On modern machines it's conventional for the null-pointer value
in C, what you get when you assign 0 to a pointer, to be all-zeroes;
and for operating systems to arrange that that address is unmapped.
But that wasn't always so (on the PDP-7 there was no memory map;
on the PDP-11 once memory-mapping was added, address space was
too dear to throw away an eighth of it just to block null-pointer
dereferencing), and it may still not be (consider a C program
on an embedded system running without a memory map).
It's good that modern systems usually whap you in the head if you
deference a null pointer, but it's not required, and those who
rely on it are as foolish as those who used to rely on the
accident that the byte at address 0 on early VAX UNIX was a zero.
Norman Wilson
p&p6 and f(
> Thanks so much for your reply.
That's what we're here for... :-)
> I have an 11/23+ does that make a difference?
No. The KDF11-B of the 23+:
http://gunkies.org/wiki/KDF11-B_CPU
is the same CPU as all the other KDF11 CPUs; it just has a couple of extra
peripherals on the board (2 asyn serial lines, and some PROMs, IIRC).
> From the manual it seems to have an MMU
Like all KDF11 CPUs, it has a socket for an MMU chip, but the chip may or may
not be there (I don't know if it was standard on the 23+; and in any event, it
may have been pulled - the CPU will work without it). The main CPU is a DIP
carrier which holds two chips; the optional KTF11-A MMU has one (see the
image, above); the optional KEF11-A FPU is also a carrier with two chips. (The
KDF11-B can also hold the large 6-chip carrier of the optional KEF11-B CIS
chip - a rara avid indeed, if you'relucky enough to have it.)
If yours doesn't have the MMU chip, you're probably SOL; those are very rare.
KEF11-A FPU chips are avilable on eBay for modest amounts.
> I'm not sure if it's split I/D.
None of the KDF11 CPUs support splite I/D.
Noel
You're a bit harsh on the developers but I think in most cases it was
the marketing/finance part of companies which decided on such mundane
matters as licensing.
My 2-1/2 cents.
Cheers,
uncle rubl
>Date: Sat, 19 Sep 2020 12:42:39 -0700
>From: John Gilmore <gnu(a)toad.com>
>To: Clem Cole <clemc(a)ccc.com>
>Cc: "Nelson H. F. Beebe" <beebe(a)math.utah.edu>, tuhs
> <tuhs(a)minnie.tuhs.org>
>Subject: Re: [TUHS] Unix on DEC AlphaServer 4000
>Message-ID: <32401.1600544559(a)hop.toad.com>
... snip ...
>License managers now count as DRM, under the Digital Millennium
>Copyright Act (though no such laws had been passed when the license
>managers were first created). So: is it worth breaking the law in many
>countries, to maintain a historical curiosity?
>Personally, I would throw DRM-encrusted software, and the hardware that
>is dependent on it, into the dustbin of history. Its creators had fair.
>warning that they were making their products unusable after they stopped
>caring to maintain them. They didn't care about their place in history,
>nor about their users. They did it anyway, for short-term profit and to
>harass those people foolish enough to be their customers. Their memes
>should not be passed to future generations. As Sir Walter Scott
>suggested in another context, they "doubly dying, shall go down, to the.
>vile dust, from whence [they] sprung, unwept, unhonour'd, and unsung".
John
I have an MVME121 that I’d like to run some stuff on. I’m planning what I’ll need to do to port MINIX 1.5 but since this has a 68451 segmented MMU, I’d like to actually make use of it.
Have any historical sources been published for UNIX on the various 68010 + 68451 systems from the early-mid 1980s? I’m curious how they used segmented MMUs.
I figure at minimum I could have several segments set up to enforce protections and a stable per-process address space, but it’d be good to have an example.
— Chris
Chris Hanson asks about historical sources for Unix on the Motorola
68K processor.
>From my bibliography at
http://www.math.utah.edu/pub/tex/bib/unix.bib
I find these Motorola contributions
The Dynamics of a Semi-Large Software Project with Specific
Reference to a UNIX System Port
USENIX Conference Proceedings, Summer, 1984. Salt Lake City, UT
pp. 332--342
[I think that I have a printed copy in my campus office, but
won't be there for another 10 days or so.]
Latent Source Bugs and UNIX System Portability
Proceedings: USENIX Association Winter Conference, January
23--25, 1985, Dallas, Texas, USA
pp. 125--130
Co-Resident Operating System: UNIX and Real-Time Distributed
Processing
Fifth Real-Time Software and Operating Systems Workshop
Proceedings, May 12--13, 1988. Washington, DC
pp 47--53
Co-Resident Operating System: UNIX and Real-Time Distributed Processing
[Fifth RTOS... as above]
pp. 47--53
A Faster fsck for BSD UNIX
Proceedings of the Winter 1989 USENIX Conference: January
30--February 3, 1989, San Diego, California, USA
pp. 173--185
Also take a look at the 200 entries in
http://www.math.utah.edu/pub/tex/bib/minix.bib
I have made attempts to install Debian 10 on the MC68K on QEMU from an
ISO image at
https://cdimage.debian.org/cdimage/ports/2020-05-30/
Source code is, of course, available, so it could be useful resource
in porting Minix to the MC68K.
However, while I can get the ISO image to boot, I get grub update
failures and when I try run the installer, I get "No PCI buses
available", For now, I have given up on that platform until new ideas
for workarounds appear.
I have similar emulated VMs for ARM64, RISC-V64, PowerPC (big and
little endian), and IBM System 390x, all of which run nicely, have
up-to-date O/Ses and binary software package repositories, and are
used for routine software build testing. My attempts for other VMs
for HPPA, Alpha, and SPARC64 CPUs have failed with install or network
problems.
Debian ISO images are available for IA-64, but QEMU has no support for
the Itanium CPU family. We have a single phyical IA-64 system that
runs fine, but is currently powered off due to machine-room
air-conditioning issues that will be resolved in a couple of months.
-------------------------------------------------------------------------------
- Nelson H. F. Beebe Tel: +1 801 581 5254 -
- University of Utah FAX: +1 801 581 4148 -
- Department of Mathematics, 110 LCB Internet e-mail: beebe(a)math.utah.edu -
- 155 S 1400 E RM 233 beebe(a)acm.org beebe(a)computer.org -
- Salt Lake City, UT 84112-0090, USA URL: http://www.math.utah.edu/~beebe/ -
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
- Nelson H. F. Beebe Tel: +1 801 581 5254 -
- University of Utah FAX: +1 801 581 4148 -
- Department of Mathematics, 110 LCB Internet e-mail: beebe(a)math.utah.edu -
- 155 S 1400 E RM 233 beebe(a)acm.org beebe(a)computer.org -
- Salt Lake City, UT 84112-0090, USA URL: http://www.math.utah.edu/~beebe/ -
-------------------------------------------------------------------------------
Hi,
Is there a repository of historical versions of Eric Allman's -me macro
set for troff?
(For some context: the macro set has been forked to operate with two
modern troff implementations: GNU groff and Heirloom troff. According
to the header blocks of the respective files, groff's -me macros are
forked from version 2.31 of Allman's, and Heirloom's from version 2.14.
For help in debugging -me problems in these troff implementations,
I'm trying to locate at least these versions of the -me package as they
existed before forking. I posted this query on the troff email list,
but no one there knew the answer, and one person suggested I ask here.)
Thanks for any pointers.
FYI. UNESCO call for a study on the future institutional structure for
Software Heritage.
---------- Forwarded message ----------
Dear all,
I do hope you are all safe, and could take some time off to recharge the
batteries that these hectic times have drained quite a bit.
Some of you know already Software Heritage (https://www.softwareheritage.org)
it is a nonprofit initiative, started by Inria and supported by UNESCO, whose
mission is to ensure that software source code, as part of the common heritage
of humankind, is preserved over time and made available to all, building,
maintaining and developing a universal source code archive, providing
persistent identifiers for all software artifacts, and creating the largest
shared knowledge base about software artifacts ever built.
This is a long term undertaking, and UNESCO has just published a call for
advice, via a small feasibility study providing options for establishing the
future independent, non profit, multi-stakeholder organization that will host
Software Heritage for the long run.
As Software Heritage is a shared infrastructure that will support use cases of
interest to the members of this list, I take the liberty to bring this call to
your attention, and I'd be very grateful if you could also forward it to
whomever you believe could be interested in answering.
Detailed information on the expected advice and procedures to answer the call
is online at:
https://careers.unesco.org/job/Paris-Consultant-on-Software-Heritage-CIMID/…
The deadline for the answer is September 26th.
Thank you for your help
Roberto Di Cosmo (roberto(a)dicosmo.org)
_______________________________________________
foundations mailing list
foundations(a)lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/foundations
> From: Paul Guertin
> I teach math in college ... Sometimes, during an exam, a student who
> forgot to bring their calculator will ask if they can borrow mine I
> always say "sure, but you'll regret it" and hand them the calculator
> After wasting one or two minutes, they give it back
Maybe I'm being clueless/over-asking, but to me it's appalling that any
college student (at least all who have _any_ math requirement at all; not sure
how many that is) doesn't know how an RPN calculator works. It's not exactly
rocket science, and any reasonably intelligent high-schooler should get it
extremely quickly; just tell them it's just a representational thing, number
number operator instead of number operator number. I know it's not a key
intellectual skill, but it does seem to me to be part of comon intellectual
heritage that everyone should know, like musical scales or poetry
rhyming. Have you ever considered taking two minutes (literally!) to cover it
briefly, just 'someone tried to borrow my RPN calculator, here's the basic
idea of how they work'?
Noel
Dennis Ritchie's ACM Turing Award lecture paper in Communications of
the ACM 27(8) 758--760 (August 1984), doi:10.1145/358198.358207 was
reprinted in UNIX Review 3(1) 28, 118--120, 122, (January 1985) [no
DOI or URL yet found], and more recently, in Resonance 17(8) 810--816
(August 2012) doi:10.1007/s12045-012-0091-y.
There are two other UNIX-related papers in that issue of Resonance:
Pramod Chandra P. Bhatt
UNIX: Genesis and design features
Resonance 17(8) 727--747 (August 2012)
doi:10.1007/s12045-012-0084-x
K. Bhaskar
C --- Past, present, and future --- A perspective
Resonance 17(8) 748--758 (August 2012)
doi:10.1007/s12045-012-0085-9
I do not have access to that journal's archives from my campus
library, so I have not seen the articles.
In his paper, Dennis Ritchie referred to another UNIX article that I
did manage to track down and record in unix.bib:
Donald Arthur Norman
The Truth about UNIX
Datamation 27(12) 139--150 (November 1981)
https://tinyurl.com/yyselmxq
The original URL is 200+ characters long, and is a freely-downloadable
PDF of a reprint in AUUGN volume IV number I. The PDF file has
searchable text.
-------------------------------------------------------------------------------
- Nelson H. F. Beebe Tel: +1 801 581 5254 -
- University of Utah FAX: +1 801 581 4148 -
- Department of Mathematics, 110 LCB Internet e-mail: beebe(a)math.utah.edu -
- 155 S 1400 E RM 233 beebe(a)acm.org beebe(a)computer.org -
- Salt Lake City, UT 84112-0090, USA URL: http://www.math.utah.edu/~beebe/ -
-------------------------------------------------------------------------------
For yonks I've been seeing "XXX" as a flag to mean "needs more work" or
"look at this carefully, just in case" etc, and I use it myself.
Whence did it come about? I think I saw it as early as PWB, but can't be
sure.
-- Dave, wondering how many nanny-filters he triggered with "XXX"
Score! I'm not planning to scan all of these in unless someone really cares
and has a better scanner than I do. I'm going to prioritize the following:
516-10, -11, -18 Ring Formats
516-12 Specifications for the Node Modem Interface
516-22 A Repeater for the Node Modem
516-28 I/O Ring Device Codes
516-36 Node Modem Interface for Computer Terminals
516-72 Node Test
516-73 Node I/O Software
516-57 Format for the 516 Node - TIU Spider Interface
516-67 Node Format for PDP-11
Jon
In my humble-but-correct opinion*, Linux and its
origins fit into the general topic of UNIX history
just as well as those of Research UNIX or BSD or
SVr4.2.2.2.2.2.2.2 or SunOS or IRIX or Ultrix or
Tru64-compaqted-HPSauce or whatever. It all stems
from the same roots, despite the protestations of
purists from all sides.
Warren gets final say, of course, but to encourage
him I will say: Ploooogie!
Norman Wilson
Toronto ON
* One of Peter Weinberger's sayings that I still
enjoy overusing.
Honestly, I'm not quite sure if this is a TUHS, COFF, or IH question. But
since my background with respect to such things is largely Unix centric, I
thought I'd ask in that context, hence asking on TUHS.
I assume some of the regulars on this list have authored RFCs (of the IETF
etc variety). The RFC format seems fairly well fixed: table of contents,
fixed number of lines per page, page numbers and dates in the footer, and
so forth. The format is sufficiently complex that it seems like some
tooling could be usefully employed to aid in producing these documents.
So I'm curious: what tools did people use to produce those documents?
Perhaps `nroff` with custom macros or something?
- Dan C.
https://www.youtube.com/watch?v=ww60o940kEk
You may be surprised :)
Warner
P.S. Hope this is relevant enough to share here. Also, if I botched
anything I've not yet mentioned in the comments, please let me know...
A modestly corrected and improved version of my bare-m4
program, which quickly builds from nothing to arithmetic on
binary numbers using no builtins other than `define'. is
posted at www.cs.dartmouth.edu/~doug/barem4.txt. (.txt
because browsers balk at .m4)
Doug
Another question at the intersection of the Internet-History and TUHS
lists...
I was wondering about the early history of BIND. I started off wondering
about the relative ages of JEEVES (the original PDP10 DNS server) and
BIND. Judging by the dates on RFCs 881 - 883, the DARPA contract
commissioning BIND, and the Berkeley tech reports, it seems there wasn't
much time when the DNS was without BIND.
But I was struck by the resolver API set out on page 8 of Berkeley tech
report UCB/CSD-84-182: it looks nothing like the familiar API that ended
up in 4.3BSD.
https://www2.eecs.berkeley.edu/Pubs/TechRpts/1984/5957.htmlhttps://minnie.tuhs.org/cgi-bin/utree.pl?file=4.3BSD/usr/src/lib/libc/net/n…
So I'm wondering if there's anything out there recording the history
between the 1984 tech reports and the 4.3BSD release in 1986.
(It's also noteworthy that early BIND supported incremental DNS updates
and zone transfers, which didn't reappear in standard form until RFC 2136
(1997) and RFC 1995 (1996)...)
Tony.
--
f.anthony.n.finch <dot(a)dotat.at> http://dotat.at/
public services of the highest quality
Doug,
“In fact Dennis's compiler did not use AID instructions for that purpose.”
Whilst local variables are indeed accessed as an offset from the base pointer, I’m not sure that the above statement is correct. In the V6 compiler (-sp) was certainly used to push arguments to the stack, and when the register allocation overflowed, the interim results were pushed to the stack as well with (-sp).
See c10.c, the case CALL in rcexpr(), the function comarg() and sptab (which is right at the end of table.s)
Links:
https://www.tuhs.org/cgi-bin/utree.pl?file=V6/usr/source/c/c10.chttps://www.tuhs.org/cgi-bin/utree.pl?file=V6/usr/source/c/table.s
For interim result pushing/popping I refer to the FS and SS macro’s. Dennis discusses these in his “A tour of the C compiler” paper.
https://www.jslite.net/cgi-bin/9995/doc/tip/doc/old-ctour.pdf
Of course this is all implementational detail, not a core design aspect - as Richard Miller showed in his port to the Interdata architecture (including a port of the Ritchie C compiler). Maybe the sentence should have read: "In fact Dennis's compiler did not rely on having AID instructions for that purpose."
Paul
@Warren: at moments like these I really like having the line highlight feature that we discussed before Summer.
> From: John Cowan
> That's always true on the PDP-11 and Vax ... because the processor
> architecture (which has pre-increment and post-decrement instructions,
> but not their counterparts)
After Doug's message, I carefull re-read this, and I'm not sure it's correct?
The PDP-11 has pre-decrement and post-increment, not the other way around (as
above) - unless I'm misunderstanding what you meant by those terms?
That's why:
*p++ = 0;
turns (if p is in R2) into
CLR (R2)+
R2 is used, and then incremented after it has been used.
Noel
> That's always true on the PDP-11 and Vax, no matter what the OS,
> because the processor architecture (which has pre-increment and
> post-decrement instructions, but not their counterparts) makes
> anything but a downward-growing stack unmanageable.
I hadn't heard this urban legend before. A stack is certainly
manageable without auto-increment/decrement (AID) instructions. In
fact Dennis's compiler did not use AID instructions for that purpose.
AID instructions are nice for a LIFO stack, in which a stacked
item disappears as soon as it's used--as do intermediate
results in expression evaluation. But when the stack contains
local variables that are accessed multiple times, the accesses
are offset from the stack pointer. If AID instructions set the
pointer, then the offset of a particular local varies throughout
the code. The compiler can cope with that (I once wrote a
compiler that did so), but a debugger will have a devil of a
time doing a backtrace when the offset of the return address
in each stack frame depends on the location counter.
AID instructions are fine for sequentially accessing arrays, and
in principle Ken's ++ and -- operators can exploit them. Yet
idiomatic C typically wants post-increment and pre-decrement
instructions--the opposite of what DEC offered. Examples:
char a[N], b[N];
char *ap = a;
char *bp = b;
int i;
for(i=0; i<N; i++)
*ap++ = *bp++;
int a[N], b[N];
int i = N;
while(--i >= 0)
a[i] = b[i];
Doug