OK, turing.

<- leave blank

Thu Apr 2 23:29:25 EDT 2020

From: Doug McIlroy <doug@cs.dartmouth.edu>
Date: Mon, 30 Mar 2020 23:40:16 -0400
To: tuhs@tuhs.org
Subject: Re: [TUHS] weird \s
Errors-To: tuhs-bounces@minnie.tuhs.org
Sender: "TUHS" <tuhs-bounces@minnie.tuhs.org>

Thanks, everyone, for pointing out the "accident of history".

This is a little morality tale about clever programming.
Joe Ossanna would never have tokenized \s constructs that
way if the CAT typesetter had been capable of a wider
range of type sizes.  Brian seems to have kept it for
backward compatibility.  But groff was perfectly willing
to break backward compatibility in tokenizing command
names.  Why not in \s?

I encourage Branden to go whole hog and let
\s123DEWEY WINS produce a banner headline.

Doug



Thu Apr 2 23:28:07 EDT 2020
Date: Mon, 30 Mar 2020 08:38:38 -0500 (CDT)
From: reed@reedmedia.net
To: TUHS main list <tuhs@minnie.tuhs.org>
Subject: Re: [TUHS] 8th Edition timeline
Errors-To: tuhs-bounces@minnie.tuhs.org
Sender: "TUHS" <tuhs-bounces@minnie.tuhs.org>

On Mon, 30 Mar 2020, Clem Cole wrote:

...
> kernel support to?handle?select(2) properly).?  I remember talking to Sam
(arguing
> with him most probably) about it one night before it was fully created.?
?Iwant
> to say, he had worked on something similar at the firm he was at (the firm
> name I now forget -- si-mumble -- they were in Mt. View) before he joined
> CRSG.?  I don't remember now the issues I had, but I do remember it was a bit
> of mess to support the way the AP hardware assumed it could do DMA on the
> UBA[2]

 From my notes:

After graduating, Leffler got a job in the Silicon Valley
at Sytek, a small firm in Sunnyvale.
% CITE: archives/csrg-archives/disk1/mnt/2.79/usenet/netdir/sites/sytek
They used a PDP 11/45 and moved to a VAX 11/750 running VM/UNIX
with four 300 baud ACU's (Automatic Call Units aka ``modems``) ---
they marketed a broadband network to
connect thousands of stations using coaxial cable over a distance
of 40 miles.
% maybe CITE:
http://books.google.com/books?id=AyZfLaxYr9YC&pg=PA43&lpg=PA43&dq=
%28408%29+734-9000++sytek&source=bl&ots=SYGI9rBAOV&sig=rxBo1SgfqdTLuNotXaa59nrR6
C4&hl=en&sa=X&ei=CzbwUJTjI6HN2QX48oGIAw&ved=0CEAQ6AEwBA#v=onepage&q=%28408%29%20
734-9000%20%20sytek&f=false
Since they were using a VAX and he had kept in touch with Joy, he was
a beta-test site for 4BSD.\cite{salus1994}

% NOTE: about sytek: an ad to find employees
%http://books.google.com/books?id=ChMAmfS1nEkC&pg=PA85&lpg=PA85&dq=%28408%29+734
-9000++sytek&source=bl&ots=aS_yQznXAy&sig=6vA7NTbspu3gcf_jT2sOiUSRPZU&hl=en&sa=X
&ei=CzbwUJTjI6HN2QX48oGIAw&ved=0CC4Q6AEwAA#v=onepage&q=%28408%29%20734-9000%20%2
0sytek&f=false

% NOTE: not to take over since no Sun then
Leffler went to Berkeley to work with Joy\cite{billshannon2} in the
fall of 1981.\cite{salus1994}.



Thu Apr 2 23:27:46 EDT 2020
Authentication-Results: minnie.tuhs.org;
	dkim=pass (2048-bit key; unprotected) header.d=gmail.com
	header.i=@gmail.com header.b="TSNQPSwG";
	dkim-atps=neutral
From: Rob Pike <robpike@gmail.com>
Date: Mon, 30 Mar 2020 20:06:24 +1100
To: Paul Ruizendaal <pnr@planet.nl>
Subject: Re: [TUHS] 8th Edition timeline
Cc: TUHS main list <tuhs@minnie.tuhs.org>
Errors-To: tuhs-bounces@minnie.tuhs.org
Sender: "TUHS" <tuhs-bounces@minnie.tuhs.org>

I've looked through my notes and unfortunately there's very little
about this as the notes are mostly about graphics and physics.

You're right I was a little early above, but the "merge" was not an
event.  It was a process that went on for months, years even.

Dennis wrote the select we used, I'm almost certain of that.  We (he
and I) talked about its design at the time, after a trip he made to
Berkeley about the DARPA Stuff.  He had had many discussions with the
BSD work going on and wanted to couple it to the streams work to make
my graphical multiplexer work.  Mpx was killing me (and killing the
kernel), but I'm nearly certain that I was using select (with our form
of pseudo-ttys) before or by very early 1982.  I'm all but certain; we
gave up on mpx(2) very early.

Streams came later; Dennis's Show and Tell about them was early in 1982.

I'm not sure, but we may have booted London & Reiser's VAX port first,
but we moved to Berkeley code pretty early.  We (Dennis mostly, but
others) were talking to Berkeley often.  We didn't just wait for a
release; we were a part (not sure I could say now how important, but a
part) of it from early on.


-rob

On Mon, Mar 30, 2020 at 6:44 PM Paul Ruizendaal <pnr@planet.nl> wrote:
>
>
> > On 29 Mar 2020, at 23:48, Rob Pike <robpike@gmail.com> wrote:
> >
> > I have a dog in the fight, having joined in June 1980, but that is not
> > a coincidence.  The period of 1980-1982 was a big one for 127 (soon
> > 1127) as they were finally given the chance to grow, and I was one of
> > the lucky early hires in that burst.  New blood brought in new ideas
> > and things happened fast.
>
> I had not realised that the Research group expanded in 1980, but it fits.
>
> > It was also the time of the VAX; the center's 11/780 arrived in late
> > 1980 I think, maybe early 1981.
>
> I did realise that bit, and it made me wonder if the ’73 burst was in part
driven by the arrival of a 11/45.
>
> > Our first experiments with graphical terminals spanned 1980 to early
1981,
>
> Yes, as you may remember from this list I dove into that last November -
schematics, tools & firmware.
>
> > using Greg Chesson's mux,
>
> Chesson’s MPX files remain a puzzle piece that is somewhat difficult to fit
in the overall story, having so many aspects.  It sits between Rand ports and
SysIII fifo’s, experiments with non-blocking I/O, has aspects of pseudo-terminals,
etc.  I have not been able to figure out what immediate need they served, unless
it was used in the first generation Datakit software (as MPX precedes the Jerq,
that cannot have been the immediate need.)
>
> > but by late 1981 we were using Dennis's streams (only STREAMS when
> > they went to USG) and the select system call, which was by then running
> > in a merged Berkeley/Research Unix that eventually became the Eighth
> > Edition.
>
> To be honest, late 1981 sounds a bit too early for the merge.  The 4.1 code
was ready in June 1981 and the ’select’ system call was first proposed in July
1981, so it is possible.  However, in the BSD line ’select’ was not fully
implemented until March/April 1982.
>
> It is certainly possible, even likely, that ‘streams’ date from 1981 or
earlier.  Networks don’t mesh well with TTY line disciplines and clist buffering -
that pain will have become apparent already in 1979.  Maybe it was among the first
things to be fixed when the VAX arrived.
>
> > My notebooks can probably lock down a lot of this as I was a prolific
> > note-taker back then, when they still made paper.
>
> If someday you have time for this, it would be much appreciated!
>
> Paul
>



Thu Apr 2 23:27:22 EDT 2020
Authentication-Results: minnie.tuhs.org;
	dkim=pass (2048-bit key; unprotected) header.d=gmail.com
	header.i=@gmail.com header.b="MKwLcUgx";
	dkim-atps=neutral
From: Rob Pike <robpike@gmail.com>
Date: Mon, 30 Mar 2020 08:48:20 +1100
To: Paul Ruizendaal <pnr@planet.nl>
Subject: Re: [TUHS] 8th Edition timeline
Cc: TUHS main list <tuhs@minnie.tuhs.org>
Errors-To: tuhs-bounces@minnie.tuhs.org
Sender: "TUHS" <tuhs-bounces@minnie.tuhs.org>

I have a dog in the fight, having joined in June 1980, but that is not
a coincidence.  The period of 1980-1982 was a big one for 127 (soon
1127) as they were finally given the chance to grow, and I was one of
the lucky early hires in that burst.  New blood brought in new ideas
and things happened fast.

It was also the time of the VAX; the center's 11/780 arrived in late
1980 I think, maybe early 1981.  Our first experiments with graphical
terminals spanned 1980 to early 1981, using Greg Chesson's mux, but by
late 1981 we were using Dennis's streams (only STREAMS when they went
to USG) and the select system call, which was by then running in a
merged Berkeley/Research Unix that eventually became the Eighth
Edition.

My notebooks can probably lock down a lot of this as I was a prolific
note-taker back then, when they still made paper.

-rob



On Mon, Mar 30, 2020 at 5:14 AM Paul Ruizendaal <pnr@planet.nl> wrote:
>
> On 29 Mar 2020, at 16:04, arnold@skeeve.com wrote:
> >
> > Paul Ruizendaal <pnr@planet.nl> wrote:
> >
> >> Related is the question when the "file system switch" was added.  It
must
> >> have been later than 1981 and before 1985, but I have not been able
to
> >> pinpoint it further.
> >
> > IIRC there was a "paper" (only an abstract) on the file system
> > switch published in a USENIX conference proceedings.  That woud help
> > trace it down.
>
> I have that paper (“The Unix 8th Edition Network File System”), it was
presented at a March 1985 ACM conference.  However, there are indications that the
roots of the file system switch existed earlier, possibly much earlier.
>
> I think Doug McIlroy once described 1973 as a pivotal year for Unix, with
many concepts devised that would blossom in the following 3-5 years.  I’m
increasingly tempted to think that Summer ’81 - Summer ’82 was a similarly pivotal
year.
>
> > Peter Weinberger, who did it, is at Google; you could ask him
> > directly, as well.
>
> That is a good idea.  If someone has the email address I’d appreciate an off
list message.
>
> Paul
>
>
>



Thu Apr 2 23:26:28 EDT 2020
# grep -R . /sys/module/zswap

Thu Apr 2 23:20:41 EDT 2020
#!/bin/sh -v

echo 1 > /sys/module/zswap/parameters/enabled
echo z3fold > /sys/module/zswap/parameters/zpool
echo 60 > /sys/module/zswap/parameters/max_pool_percent
echo lzo-rle > /sys/module/zswap/parameters/compressor


#!/bin/sh -v
echo 0 > /sys/module/zswap/parameters/enabled



Thu Apr 2 18:15:50 EDT 2020
/* Thyracont smartline vaccum gauge */

#include <u.h>
#include <libc.h>

typedef struct thct thct;
typedef struct tcg tcg;

struct thct {
	char port[128];
	int fd;
};

struct tcg {
	thct *t;
	char addr[4];
	char name[32];
};

thct*
newtc(char *p)
{
	thct *t;
	if((t = mallocz(sizeof(thct), 1)) == nil)
		sysfatal("%r: newtc mallocz failed");
	strcpy(t->port, p);
	return t;
}

tcg*
newtcg(thct *t, char *ad, char *n)
{
	tcg *g;
	if( ad == nil || n == nil)
		return nil;

	if( (g = mallocz(8, 1)) == nil)
		sysfatal("%r: newtcg mallocz failed");
	g->t = t;
	strcpy(g->addr, ad);
	strcpy(g->name, n);

	return g;
}

int
chksum(char *s)
{
	int t = 0;
	while(*s)
		t += *s++;
	return t % 64 + 64;
}

/*-=WIP=-*/
char*
mkheader(char *ad, char *ac, char *cm, char *ln)
{
	if(ad == 0 | ac == 0 || cm == 0 || ln == 0)
		return 0;
	char *buf = mallocz(11, 1);
	strncpy(buf, ad, 3);
	strncpy(buf+3, ac, 1);
	strncpy(buf+4, cm, 2);
	strncpy(buf+6, ln, 2);
	buf[8] = (char)chksum(buf);
	buf[9] = '\r';
	return buf;
}

char*
mkold(char *ad, char *cm)
{
	if(ad == 0 | cm == 0)
		return 0;

	char *buf = mallocz(11, 1);
	strncpy(buf, ad, 3);
	strncpy(buf+3, cm, 1);
	buf[4] = (char)chksum(buf);
	buf[5] = '\r';
	return buf;
}

int
contc(thct *t)
{
	if( (t->fd = open(t->port, ORDWR)) == 0 )
		return 1;
	else return 0;
}

int
closetc(thct *t)
{
	return close(t->fd);
}

long
sendmsg(tcg *g, char *m)
{
	return write(g->t->fd, m, strlen(m));
}

long
readmsg(tcg *g, char *b, long n)
{
	return pread(g->t->fd, b, n, 0);
}

void
freetc(thct *t)
{
	free(t);
}

int
verify(char *s)
{
	char b[4] = {0};
	int n;
	memcpy(b, s+4, 2);
	n = atoi(b);
	print("accesscode: %d\n", n);
	return n;
}

int
loopctl(int i)
{
	static int g = 0;
	switch(i){
	case -1:
		g = 0;
		return g;
	case 0:
		return g;
	case 1:
		g = 1;
		return g;
	default :
		return 0;
	}
}

int
cleanbreak(void *, char *n) /* Note handler */
{
	if(strcmp(n,"interrupt") != 0)
		return 0;
	print("Note received: %s\n",n);
	loopctl(-1);
	return 1;
}

/* test code loop read should fork off */
void
loop(tcg *g)
{
	int pid, rl;
	char *buf;
	char reply[32];
	buf = mkheader(g->addr, "0", "MV", "00");

	/*buf = mkold(g->addr, "M");*/

	print("mkheader: %s\n", buf);
	print("checksum: %d\n", buf[8]);

	/*-=WIP=-*/
	loopctl(1);

	pid = rfork(RFPROC|RFMEM);

	if (pid < 0)
		exits("%r");

	else if (pid == 0) {
		while(loopctl(0)){
			rl = readmsg(g, reply, 13);
			if(rl == 13) print("%s\n",reply);
			memset(reply, 0, 32);
		}
		exits("%r");
	}

	else
		while(loopctl(0)){
			sendmsg(g, buf);
			sleep(1000);
		}
}

void
main(int argc, char *argv[])
{
	if(argc < 2){
		print("missing serial port.\n ");
		exits("missing argument");
	}

	int atn;
	thct *t = newtc(argv[1]);
	tcg *g;

	atn = atnotify((*cleanbreak), 2);

	g = newtcg(t, "001", "chamber");
	print("gauge addr: %s, name: %s\n", g->addr, g->name);

	contc(t);
	loop(g);

	closetc(t);
	freetc(t);

	print("Done.\n");

	exits(nil);
}


Thu Apr 2 11:25:16 EDT 2020
The song "Watch Me Whip" is single-handedly the worst song I have ever heard.
Before you get all bent out of shape, I do know that it's not to be some
intellectual masterpiece of modern art; it is just factually a shitty song.
Here's why:

• Repetition:

This song takes repetition to a level rivaled only by songs written for 3
year-olds.  The singer repeats his name a full 6 times before the third verse,
just in case you were wondering who 'wrote'?  No vocalised the script put in front
of him.

There were 980 'words' in this song.  Is nae a word?  Scratch that, I truly don’t
care.  Of those 980 words, three variations (Now watch, now watch me, watch me)
represent 369 words.  That’s more than ⅓ of the song for literally 3 words (and I
didn’t include the single mentions of the word ‘me’).  If we include ‘ooh’ (there
are 84 instances) and ‘bop’ (there are 72 instances), which total 156, we have 525
out of 980 words made up of 5 words.

I think we get the picture on this.

• Simplicity:

The most complex word in this song is a tie between ‘Silento’, the vocalist’s (not
an artist in my opinion) handle, the word ‘already’ (which appears literally
once), and the word ‘superman’.  Doing a quick tally, that means that 15 single
word instances are 3 syllables.  All the rest are 1 or 2 syllables.  The
vocabulary is not strong with this one.  Look at that!  My use of ‘vocabulary’
beat out this song by 2 whole syllables!

• The culmination of the two previous points into the dumbing down of everyone who
had the displeasure of hearing this song:

Pretty self-explanatory.  Look, I get that the writer wasn’t going for a Pulitzer
or a Grammy, but a quick hit that’ll be catchy and easy to remember.  Fair enough.
EXCEPT FUCK YOU YOU’RE LITERALLY RUINING MUSIC.  Who am I to say what should and
shouldn’t be written?  An asshole, that’s who.  One who is procrastinating other,
important work.  Basically, by putting music out that has a grand total of about
30 unique words, you’re contributing to the lowered standard of quality of music.
This is one step away from repeating one single word over and over for 5 minutes
straight, which now that I think about it probably exists.  Except that would have
some comedic value at the very least.  This shit, well it’s like a kindergartener
took a crayon and drew a stickman (poorly, I might add), that was subsequently put
up in an art gallery.  Real, impressionable children will listen to this and think
“ Wow, dad was wrong!  I CAN skate in life only knowing less than the bare minimum
needed to be able to read ‘See Spot Run’, which I never did because fuck books and
education”.  (Side note - That interaction wouldn’t have been possible outside the
child’s head, since there are too many unique words used)

Now put on your tin-foil hats, because this is where I lose half of you with my
bullshit.  Songs like this promote the opposite of education.  Like I said, it
devalues a halfway competent vocabulary in the name of catchiness and a cheap
‘musical’ fix.  When you see what can be presumably defined as success (ie having
several hundred million views on Youtube and countless other radio plays), it sets
a standard in young, impressionable minds.  We’ve had many people trying to get
past this dumbing down of society, like KRS-ONE, Stevie Wonder, John Lennon, and
many others (No, of course not all of their songs).  They were trying to create a
more engaged people who reflect on the actual issues we face as a society, instead
of making up a cute little dance to go along with your shitty track as your brain
melts from lack of use.  Who is the target market for this song?  For all the
reasons I’ve brought forth, I believe the target market to be the typical vapid,
vacuous consumer that doesn’t engage in critical thought related to anything more
than whether the Kardashians look better in blue or teal.  I realise that I’ve
made a broad, fairly baseless claim, and yet I’m confident it’s pretty accurate.

Songs like these placate the masses with their simplicity and safety.  You don’t
need to think, you don’t need to guess what it’s talking about, you just need to
follow these three easy steps and you too can conform to the newest dance craze.
Independent thought is the antithesis of this track.  By listening to this, you
are using time that could be spent thinking of ways to better the
city/country/world you live in.  Again, I realise that not everyone WANTS to
engage with the world like this, but I will still stand by the claim that critical
thought is better than being herded like a goddamn sheep by pop-music.

So what have we learned today?  Well, mostly that I’m way too mad about a song.
That’s a given.  What I want to really stress is that this song is symptomatic of
a larger issue at hand.  Like the CIA funneling crack into ghettos, to me this
type of music represents a concerted effort to quell independent thought.
Ultimately it’s easier to listen to a catchy song with like 7 words than to
actually sit back and think about why everything is kind of messed up.

I really, truly fucking despise this song.

Wed Apr 1 03:31:39 EDT 2020
Да, клиент тоже думают на этот насос, но бояться снимать его, т.к.  гарантия
пропадет.  Если дело в насосе, то что делать дальше?  Вы отправите по гарантии
новый насос?  У нас в наличии нет такого насоса и проверить заменив его пока тоже
не получится...

Wed Apr 1 01:09:33 EDT 2020
Hello

Tue Mar 31 21:30:57 EDT 2020
I am a Knower of 4 corner
simultaneous 24 line Terminals
that occur within a single
4 process rotation of Userspace.

Ken guise for Penguins
scam, enslaves 4 Terminal
vimcube brain as  ONEist.
Vilify internets - for
Penguins swindle Tithe
from 1 Terminal Retarded

Till You KNOW 4 Simultaneous Terminals
Rotate In Same 24 Lines Of Userspace
You Don't Deserve To Live In Userspace


prev | next