Hi all,
I have a Pro/venix 2.0 distribution (the one by DEC) and was going to
reinstall it on my PRO/350. Unfortunatelly I discoveded that the Base Kit
Sistem Area Disk 1 was bad.
Anyone in this list can help me in supplying this floppy image ?
Thanks in advance.
Franco.
Hi -
I received a mail item from Johnny Billquist but the fine folks
at Update.UU.SE don't seem to recognize that networks can be
subdivided and that _my_ portion has never sent or relayed spam
Hope Johnny doesn't mind the reply going here instead.
----- The following addresses had permanent fatal errors -----
bqt(a)update.uu.se
(reason: 553 5.3.0 <bqt(a)update.uu.se>... SMTP from 64.32.150.18 blocked by Update due to spam sent/relayed from this network;contact postmaster at Update.UU.SE for details)
----- Transcript of session follows -----
... while talking to tempo.update.uu.se.:
>>> RCPT To:<bqt(a)update.uu.se>
<<< 553 5.3.0 <bqt(a)update.uu.se>... SMTP from 64.32.150.18 blocked by Update due to spam sent/relayed from this network;contact postmaster at Update.UU.SE for details
550 5.1.1 bqt(a)update.uu.se... User unknown
Hi!
> I have a small question, which I hope you can clarify for me. I'm in a
> little argument with a person involved in NetBSD.
Ummm, I'm not a lawyer of course...
> He claims that NetBSD is the oldest free BSD still alive, which I reacted
> to since it was my belief that 2BSD now is free.
But is 2BSD free? That I don't know. It is more free than it was
a long time ago but
> This have resulted in the claim that Berkley is the one that is
> restricting 2BSD, which was news to me. Is this in any way correct? The
>
> * Copyright (c) 1986 Regents of the University of California.
> * All rights reserved. The Berkeley software License Agreement
> * specifies the terms and conditions for redistribution.
That was the earlier version of the BSD license - when you had to have
a ATT/USL/BellLabs license in order to obtain BSD at all.
I am not sure I have a copy of the original UCB license but I think
part of it involved having a ATT/USL license.
The 'BSD' part of the UCB license permitted free sharing of the
UCB portions of the system. The questionable parts involved
the original ATT/USL code. If the current owners say that the original
(non-UCB) portions are free then that means the entire system is
free.
> I believed that this was/is more or less the same as the current BSD
> license (except that it still have the clause that any software
> incorporating code from BSD must say so).
At a later time the BSD license agreement added words about
redistributing the code with or without modification as long as
credit was given.
> But appearantly this other guy is claiming that Berkley hasn't let 2BSD
> free at all.
I'm not sure UCB even knows what 2BSD is any more.
> Can you clarify this for me, please? :-)
Does the current state of the Caldera/SCO/whatever license override
any existing licenses? THAT I do not know. If that is the case
then I would say that 2BSD is indeed free, on the other hand if people
are still legally constrained by the earlier license then 2BSD is
not totally free. Earlier versions of NetBSD would not be free
either because they contain "encumbered code" from the era when a
ATT/USL license was required.
I think it unlikely that anyone is going to send the 'software police'
out to kick down a person's door because they're running 2BSD - sounds
like that era is over at last. That's free enough for most people
I think.
Steve
Hi -
> From: Johnny Billquist <bqt(a)update.uu.se>
> Are the UMRs allocated and set up statically?
The clist and buffer cache UMRs are initialized at system boot time.
> (I haven't looked inside 2BSD for a while now, and can't remember much of
> the internals anymore.)
And I haven't been around a UNIBUS system for a long time and the
memory of having to deal with UMRs has faded.
> How many UMRs does the system use? 8 for buffer cache, you might expect
> one or two DH11s, that would require a few more, ethernet takes another
> few, but it seems there shouldn't be such a shortage.
There are only 31 total - so a few allocated here, a few allocated
there could result in not having enough.
> What did I miss?
Swapping. The kernel has to always be able to get UMRs to be
able to swap out a process. The memory is fuzzy but I think the
kernel reserved 7 as to be able to swap 56KB at a time of a process
but it could get by with less.
One UMR is 'reserved' by the hardware to cover the "I/O Page".
The clist takes up 1 UMR for DMA terminal devices.
Ethernet of course takes a UMR or two. At one time a couple of the
ethernet drivers (DEUNA) were a bit braindamaged and allocated more
UMRs than they needed - I fixed that though.
MSCP and TMSCP devices need UMRs to map their command and response
rings. The initial MSCP driver was definitely suboptimal in that
regard - again, something I tended to (the problem showed up when
more than 1 controller was present in a system). Those UMRs are
permanently allocated at boot time by the drivers when they initialize.
Tape drivers need to have UMRs (although I don't know of too many
folks with the old TE16 drives around on a UNIBUS system) available.
It started adding up and on a system with several types of devices
each of which wanted to reserve a couple UMRs the available pool for
dynamic use (by tapes and swapping) was sometimes too small.
Cheers,
Steven Schultz
Hi -
> From: David Evans <dfevans(a)bbcr.uwaterloo.ca>
>
> OK. From what I recall (that turned-off machine again...) the entire
> discussion on tuning MAXUSERS and friends is based on allocation of UMRs.
> Might be a good idea to slip in a note about what to do when you don't have
It is less a matter of MAXUSERS than it is of NBUF. NBUF sets
the number of disc cache buffers. MAXUSERS affects the size of the
proc table, file table, and other tables which are in the permanent
(not mapped in/out) portion of the kernel's address space but does
not affect the disc buffer cache which is the entity requiring UMRs
on a UNIBUS system.
The buffer cache must be entirely mapped by UMRs - so if you have a
32KB buffer the kernel will reserve 4 UMRs on a UNIBUS system.
Realistically a 64KB buffer cache is about the maximum a UNIBUS system
can have because that takes 8 of the UMRs.
With the old (thankfully no longer in use, etc) 3Com ethernet boards
you had to disable 4 UMRs so the system could access the memory in the
card - that made for a very tight fit.
The other constraint, even for Qbus systems, is the D space requirement.
The 1KB portion of the disc buffer is "external" to the kernel (is
mapped in/out as needed) but there is a header structure which is
part of the kernel's permanent address space. Each buffer header is
24 bytes so even without UMRs around it's not feasible to have a 200KB
cache because that'd use 4800 bytes of kernel D space (which is always
on the edge of being overflowed it seems).
On a 11/73 I've used a 100KB buffer cache but when I was using 11/44s
and /70s the max was 64KB.
Cheers,
Steven Schultz
Hi -
> From: norman(a)nose.cs.utoronto.ca (Norman Wilson)
> 0141 (octal) is 'a. 141 decimal is 0215 octal, i.e. carriage return with
> parity.
And I remembered that (correctly as it turns out) without looking
at ascii(7) <g>
> What seems more likely is that 141 decimal is 0200 + 13 decimal. If a
> simple value returned by wait, that means SIGPIPE + core image, which
> seems unlikely. If an exit status as displayed by the shell, it just
It's, if I recall, being displayed by 'make'. There's no coredump
so the interpretation of 0141 is that of an exit status. It's been
a while since I've looked into the problem - it was quite annoying
to run the sequence (that was causing make to cease) manually and not
have it happen the same way.
a 'shell'
> means SIGPIPE (128 + signal number). Or is signal 13 different in 2.11
> than in V7? (That seems even less likely.)
Ah, ok - that makes sense too. No, SIGPIPE is the same as it's always
been since it was first defined as 13
> SIGPIPE doesn't seem entirely unreasonable as an accident that could
> happen if something goes wrong in the assembly-language-code-tweaking
> part of the kernel build.
But something is causing the assembler to exit prematurely and break
the pipe in the first place.
SIGPIPE happens, of course, when a writer process writes to a pipe
where the receiving/reading process has exited. 'as' is exiting
prematurely - that can be determined by looking at the partially
created (or empty) .s file that gets left behind.
> Of course if it's a random value handed to sys exit, all rules are off.
What might be needed is a decent (or existent ;)) syscall tracing
capability. That combined with the capability to "coredump a non-0
exit process) might be enough to track down what's causing 'as'
to depart the scene prematurely.
Cheers,
Steven Schultz
> From: David Evans <dfevans(a)bbcr.uwaterloo.ca>
> To: "Steven M. Schultz" <sms(a)2BSD.COM>
> Cc: pups(a)minnie.tuhs.org
> Subject: Re: [pups] Progress on 2.11BSD kernel
> Date: Wed, 19 Mar 2003 13:08:16 -0500
>
> On Wed, Mar 19, 2003 at 09:51:10AM -0800, Steven M. Schultz wrote:
> > Howdy -
> >
> > > From: David Evans <dfevans(a)bbcr.uwaterloo.ca>
> > > This came in handy for me too when I went the route of messed up MAXUSERS
> > > screwage.
> >
> > That'll do it too ;)
> >
>
> Fortunately /vmunix & /oldvmunix is a familiar procedure from back in
> my PMAX device driver hacking days.
>
> > > On another note, were there any SCSI adapters that made use of the BA23/
> > > BA123 RD disk control buttons? Would be nifty to swap in a new ra0 by
> > > simply taking a disk offline/online.
> >
> > Hmmm, those buttons/cabling are for RD/MSCP devices - not sure if it's
> > possible to use them with SCSI devices.
> >
>
> I was thinking of a SCSI adapter that plugged into the bulkhead somehow.
> This is plainly rediculous, but a nifty idea nontheless.
You could put your SCSI drive into one of those pull-out
"mobile adapter" things. But you probably should not pull
it out without idling the SCSI bus first.
carl
--
carl lowenstein marine physical lab u.c. san diego
clowenst(a)ucsd.edu
Hi -
> From: David Evans <dfevans(a)bbcr.uwaterloo.ca>
> I recall cranking MAXUSERS up a little, though I can't remember to
Good Idea because the default is only suitable for single user mode
and building a new/custom kernel. Quite a few kernel tables
are sized based on 'maxusers' - in particular the coremap and swapmap
tables (which track the fragments of memory and swap space) will be
exhausted easily if you bring up a network'd kernel and start up
the various daemons.
> what and my PDP-11 is turned off at the monent. A clarification of
> how the whole Unibus map register business effects Qbus-based systems
> would be nice.
It really doesn't - not having UMRs to deal with is a Nice Thing about
the Qbus ;) The kernel (and the standalone utilities of course)
need to know if they're on a U or Q-bus system but once a Q system
is found then the UMR handling is bypassed.
Cheers,
Steven Schultz
> From: "Steven M. Schultz" <sms(a)2BSD.COM>
> To: pups(a)minnie.tuhs.org
> Subject: Re: [pups] 2.11BSD "make unix" aborts Error 141
> List-Archive: <http://minnie.tuhs.org/pipermail/pups/>
> Date: Wed, 19 Mar 2003 09:46:51 -0800 (PST)
>
> Hi -
>
> > From: David Evans <dfevans(a)bbcr.uwaterloo.ca>
> > Ugh.
> >
> > Am I naive to suggest a rewrite of as? :)
>
> Just a little bit <g>
>
> It's a thought that used to occur to me fairly often a long time
> ago. I cured myself of it though after I did the rewrite into
> its current form (if you think it's bad now you should have seen it
> before ;)).
>
> The biggest problem are the SDI (Span Dependent Instructions). The
> PDP-11 has 'jmp' (non conditional but no range limit) and 'br' (many
> flavors of conditional branches but with a +/- 128 byte range).
> The compiler generates pseudo instructions like 'jeq' and leaves it
> up to the assembler to figure out if a branch will reach or if a
> branch around a jump is needed. That's a PITA to handle and is
> I believe the cause of much ugliness in the assembler.
That, of course, is a _neat feature_ of AS. On the other hand, how
much code bloat would result if AS always emitted (bne;jmp) pairs for
'jeq', etc. Maybe only generate (bne;jmp) for forward 'jeq' where the
span is not yet known. I am sure there are pathological instabilities
in this kind of code generation, where expanding one branch/jump
instruction makes another one go out of span range.
Answer: 3:1 for each unnecessary pair. But I have no idea of the
statistics for real code.
carl
--
carl lowenstein marine physical lab u.c. san diego
clowenst(a)ucsd.edu
Howdy -
> From: David Evans <dfevans(a)bbcr.uwaterloo.ca>
> This came in handy for me too when I went the route of messed up MAXUSERS
> screwage.
That'll do it too ;)
> I should track down the half-bezel so that I can mount this SCSI Zip drive I
> have in my BA123. That would look so weird...
It is tight on space but I can get a complete 2.11 system (with sources)
and a small swap partition on a 96MB Zip disk. Not suitable really
for going multi-user but as a single user mode system for fixing
up /etc/init or building a kernel it's nice.
Might not look too weird - different of course, who knows but what
you might like the new look ;)
> On another note, were there any SCSI adapters that made use of the BA23/
> BA123 RD disk control buttons? Would be nifty to swap in a new ra0 by
> simply taking a disk offline/online.
Hmmm, those buttons/cabling are for RD/MSCP devices - not sure if it's
possible to use them with SCSI devices.
Steven Schultz
Hi -
> From: David Evans <dfevans(a)bbcr.uwaterloo.ca>
> Ugh.
>
> Am I naive to suggest a rewrite of as? :)
Just a little bit <g>
It's a thought that used to occur to me fairly often a long time
ago. I cured myself of it though after I did the rewrite into
its current form (if you think it's bad now you should have seen it
before ;)).
The biggest problem are the SDI (Span Dependent Instructions). The
PDP-11 has 'jmp' (non conditional but no range limit) and 'br' (many
flavors of conditional branches but with a +/- 128 byte range).
The compiler generates pseudo instructions like 'jeq' and leaves it
up to the assembler to figure out if a branch will reach or if a
branch around a jump is needed. That's a PITA to handle and is
I believe the cause of much ugliness in the assembler.
So I'm fought the urge to rewrite the assembler and 'won' - I no longer
feel the rewrite urges ;)
Cheers,
Steven Schultz