Return to BSD News archive
Path: sserve!manuel.anu.edu.au!munnari.oz.au!network.ucsd.edu!usc!wupost!darwin.sura.net!haven.umd.edu!decuac!pa.dec.com!vixie From: vixie@pa.dec.com (Paul A Vixie) Newsgroups: comp.unix.bsd Subject: Re: [386BSD] Problems installing cnews/nn Date: 6 Dec 92 09:09:50 Organization: DEC Network Software Lab Lines: 54 Message-ID: <VIXIE.92Dec6090950@cognition.pa.dec.com> References: <1992Nov27.153032.10611@uropax.contrib.de> <1fav2bINN2ie@tricky.wft.stack.urc.tue.nl> <ByI76y.75o@world.std.com> <VIXIE.92Nov30104256@cognition.pa.dec.com> <ByK57p.3M6@world.std.com> <VIXIE.92Dec4134323@cognition.pa.dec.com> <Byrvwu.155@world.std.com> <VIXIE.92Dec5150856@cognition.pa.dec.com> <ByuEI8.G67@world.std.com> NNTP-Posting-Host: cognition.pa.dec.com In-reply-to: geoff@world.std.com's message of 6 Dec 92 14:49:20 GMT I was sitting here thinking about other things and a thought about INN and C News slithered into my mind on little wormy feet. I went looking for Geoff's latest reply so I could use it as a springboard... [Vixie] > The application that wins is the one that works best, regardless of the > fact that the reason it works best is because the operating system is > huge and bloated and complicated and slow. [Collyer] > Whatever turns your crank, man. Just don't try to claim that said > ``operating system'' is Unix. Well, it walks like a duck, and it quacks like a duck, and it's labelled "duck", but if you want me to call it a tree, I guess "ok". My real thought is that C News is itself designed to cover for a lot of existing conditions. C News uses big batches as a way to avoid paying the relaynews startup transient too often. Big batches were neccessary for UUCP to avoid paying the turnaround time too often. But news is fundamentally not about batches. Batches are a pain, since articles sit in them for a long time rather than flitting from system to system like little birdies. But C News wouldn't *work* if it dealt with articles one by one, which is why someone other than its authors added the "daemon mode" a long time back. The key to the real "elegant and proper" design for soemthing is to go to first principles and figure out what you're actually trying to do. For news over nntp, this means synchronous transport -- anything else is unnatural and only present to cover shortcomings in the environment. For news over uucp, the design criteria *has* to take the modems into account since they're nonoptional. On my kernels, inodes are something like 128 bytes long. Processes are likewise bloated with all kinds of POSIX modes and floating point contexts and thread contexts and mutex locks and so on. Directory and inode updates are synchronous, and N**2, and are very slow. Now, I wouldn't design an operating system this hideously bloated, but I am not, today, in the business of designing operating systems. When I write code I try to make it as simple as possible without violating any of the speed boundaries built into the awful clunker of a kernel I happen to be running. That kernel's name happens to be "/vmunix" and has a lot of Bell Labs UNIX code in it, so I call it "UNIX". INN works better than C News on the "UNIX"-like operating systems I can buy from Sun or DEC or Pyramid or even AT&T. The reason for this is that it was designed to use what's available rather than to be intellectually pure. This is actually the same argument as between Perl and sh+awk. -- Paul Vixie, DEC Network Systems Lab Palo Alto, California, USA "Don't be a rebel, or a conformist; <vixie@pa.dec.com> decwrl!vixie they're the same thing, anyway. Find <paul@vix.com> vixie!paul your own path, and stay on it." -me