9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* Re: [9fans] So, once I've got the OS up how do I...
@ 2001-02-08  1:31 rob pike
  2001-02-08  2:02 ` [9fans] " Jim Choate
  2001-02-08 21:26 ` [9fans] " Steve Kilbane
  0 siblings, 2 replies; 16+ messages in thread
From: rob pike @ 2001-02-08  1:31 UTC (permalink / raw)
  To: 9fans

I'm a little disturbed by these questions.  It's not that I doubt
you'll get asked them, it's that Plan 9 will lose any feature fight.
What makes the system interesting is how it does things, not how many
programs have been ported to it, how compatible it is with Linux, or
how few picoseconds it takes to do a context switch.

You can help propagate the message by talking about how the system
works.  Tell stories about how the pieces fit together, how they solve
problems by design rather than attack by overwhelming features.  It's
a hard sell but it can be done.

-rob



^ permalink raw reply	[flat|nested] 16+ messages in thread
* Re: [9fans] Rant (was Re: Plan9 and Ada95?)
@ 2001-11-08  6:45 anothy
  2001-11-08  8:05 ` Lucio De Re
                   ` (2 more replies)
  0 siblings, 3 replies; 16+ messages in thread
From: anothy @ 2001-11-08  6:45 UTC (permalink / raw)
  To: 9fans

// I have never used plan 9's httpd, but from the features list it seem
// very good.  Certainly can't fault it from the client's perspective.

i can't say i recomend it. apache was a reasonable example; it really
_might_ make sense to port it (i don't think so, but it might). i
certainly believe something more robust than what we've got now would be
very usefull.

// ...suggesting that Mozilla be ported to Plan 9.

this is the same discussion as apache, i think. there are features that
we want: good html rendering, good javascript support, good set of
plugins (where good in those three cases, unfortunatly, really should be
read as "what web developers expect"). this is very hard to do. but so
is porting Mozilla (i looked at it. breifly). someone interested in
exerting effort to get these features needs to decide where to spend her
effort. a cost/gain decision.

// ...it takes a large community of developers to produce (amongst the
// noise) good, solid products.

i don't think this is so, but i'm not sure it's what you intended to
say, either. elsewhere you seem to argue that it takes a large
community of developers to produce _lots_ of _different_type_ of good,
solid products. and i'd agree with that.

there is a balance to be struck between the usefulness of importing
foreign code and the danger of doing so - diluting the system's
benefits, turning it into "just another unix". as such, i'm still not
sure what i think of the GCC port. GCC is ugly and awful. but it can
give me things that i want. like helping me get rid of the one
remaining Solaris box i run, when i can build the two things we use
it for that're in c++ on Plan 9. then i can get the web developer
who writes code for those two bits to be writing code on Plan 9, and
i have a chance at migrating him to better things.

i guess i just don't see the "party line" bit. maybe it's there, but i
don't see it. i find this to be a much more open forum than most others
i've spent time in, computer-related or not.
ア


^ permalink raw reply	[flat|nested] 16+ messages in thread
* Re: [9fans] Re: So, once I've got the OS up how do I...
@ 2001-02-08  2:21 Russ Cox
  0 siblings, 0 replies; 16+ messages in thread
From: Russ Cox @ 2001-02-08  2:21 UTC (permalink / raw)
  To: 9fans

Regarding Plan 9 <-> Unix as far as file systems,
Plan 9 has an NFS server that Unix systems may
use to mount Plan 9 file systems.  It works pretty
well.  We had someone working almost exclusively
over the NFS server two summers ago.

U9fs is a 9P server that Plan 9 systems may use to
mount Unix file systems.  It too works pretty well.
As I type this, I have two such file systems mounted
in my namespace.  I'm also booting a Plan 9 box
entirely over an ethernet with a FreeBSD machine
serving as both file and authentication server.
I'm using u9fs (rewritten for 9P2000 but pretty much
the same) for file service and a port of auth.srv for
authentication.  It works.

Neither is blazingly fast, but that's not the goal.
They work well for providing interoperability.

The amazing thing is how simple they are.

    1527    3657   27203 u9fs/u9fs.c
     326     792    6457 9auth/9authsrv.c

The rest is mostly supporting routines pulled in
from the Plan 9 C library, like doprint and convM2S.

That's a full file server in 1500 lines of code,
and an authentication server in 300.  The reason this
works is that 9P is so simple.  If you want to drive the
point home, put up the rot13fs below (inspired by a
French intro to Plan 9 that appeared a few years ago;
I'd credit further except not knowing French, I got
by reading only the examples).

The whole guts of the filter is right here:

	while(n=sizeof buf, getS(rd, buf, &f, &n) == nil){
		if(f.type == Ropen)
			isdir[f.fid] = f.qid.path&CHDIR;
		if((f.type == Twrite || f.type == Rread) && !isdir[f.fid])
			rot13(f.data, f.count);
		n = convS2M(&f, wbuf);
		write(wr, wbuf, n);
	}

and that's it.  9P is simple.  Compare this with the hoops
being jumped through to do encrypted file systems on Unix
by having fake NFS servers or kernel vnode-layer replacements
or what-have-you.

Russ


#include <u.h>
#include <libc.h>
#include <auth.h>
#include <fcall.h>
#include <ctype.h>

void
rot13(char *p, int n)
{
	char *ep;

	for(ep=p+n; p<ep; p++)
		if(isalpha(*p))
			if(tolower(*p) <= 'm')
				*p += 13;
			else
				*p -= 13;
}

int isdir[65536];
void
filter(int rd, int wr)
{
	char buf[MAXMSG+MAXFDATA], wbuf[MAXMSG+MAXFDATA];
	Fcall f;
	long n;

	while(n=sizeof buf, getS(rd, buf, &f, &n) == nil){
		if(f.type == Ropen)
			isdir[f.fid] = f.qid.path&CHDIR;
		if((f.type == Twrite || f.type == Rread) && !isdir[f.fid])
			rot13(f.data, f.count);
		n = convS2M(&f, wbuf);
		write(wr, wbuf, n);
	}
	postnote(PNGROUP, getpid(), "die");
}

void
main(int argc, char **argv)
{
	int sfd, p[2];

	rfork(RFNOTEG);

	if(argc != 1+2){
		fprint(2, "usage: rot13fs service-in mountpoint\n");
		exits("usage");
	}

	if((sfd = open(argv[1], ORDWR)) < 0)
		sysfatal("cannot open %s: %r\n", argv[1]);

	if(pipe(p) < 0)
		sysfatal("pipe fails: %r\n");

	switch(rfork(RFNAMEG|RFPROC|RFFDG|RFMEM)){
	case -1:
		sysfatal("rfork fails: %r\n");
	case 0:
		close(p[0]);
		switch(fork()){
		case -1:
			sysfatal("rfork fails: %r\n");
		case 0:
			filter(sfd, p[1]);
			break;
		default:
			filter(p[1], sfd);
			break;
		}
		_exits(0);
	default:
		close(p[1]);
		if(amount(p[0], argv[2], MREPL, "") < 0)
			sysfatal("mount fails: %r\n");
		exits(0);
	}
}



^ permalink raw reply	[flat|nested] 16+ messages in thread
* Re: [9fans] So, once I've got the OS up how do I...
@ 2001-02-08  1:05 Russ Cox
  2001-02-08  1:45 ` [9fans] " Jim Choate
  0 siblings, 1 reply; 16+ messages in thread
From: Russ Cox @ 2001-02-08  1:05 UTC (permalink / raw)
  To: 9fans

I answered a bunch (and left a bunch unanswered.)

	Q1.	What is the choice with respect to mail mirrors or mailing list
		software like majordomo?

There's no list software as of yet.  It wouldn't be hard to write.

	Q2.	What is the usual web server?

ip/httpd, see httpd(8)

	Q3.	Is the Plan 9 <> Linux software reliable?

I don't understand the question.

	Q4.	What IRC choices (both client and server) are available?

None.  Again, not hard to write.  An Acme IRC would be
really easy to write and really easy to use.

	Q5.	How do I play my audio CD's and what mp3 player is suggested?
		Is there any good audio sampling (and pop reduction) software?

Play audio CDs with acd (see http://www.eecs.harvard.edu/~rsc/plan9.html).
Charles Forsyth has an mp3 player port, as does Bruce Ellis, I believe.
Long ago I saw a port of sox for doing more advanced stuff.
There's no audio sampling/pop reduction stuff ported currently.

	Q9.	What sorts of packages such as StarOffice are available, if
		any?

troff, tex, gs, basically what you'd expect.
I write my presentations in Postscript, but I'm an outlier.

I've been using StarOffice on Windows in lieu of Microsoft
Word (only under duress) and I'm not very happy with it.  I'd rather use Word.
I didn't think Microsoft really understood anything about UI
until I tried to use StarOffice.

	Q10.	What about Perl, Python, Rexx, Tcl/Tk, Java, or Prolog?

Perl yes.
Python yes.
Rexx no.
Tcl/Tk no.
Java yes, someone ported Kaffe a while back.
	It's pretty rough.

Prolog no.  (Someone is going to ask you about Prolog?  Really?)

	Q11.	Is there any sort of effort to move the GNU tools to the
		Plan 9 reality?

No, for the same reason there is no sort of effort to herd wild water buffalo
into major metropolitan areas.

	Q15.	What sort of RDBMS, especially multimedia, is available?

Someone mentioned something on 9fans about having
some database up and running.  A friend was interviewing
at Oracle a few weeks ago and in Oracle's boasts about the
portability of their server they said they had even brought
it up on Plan 9 recently.  I doubt this is going to be the cornerstone
of a new business plan.

	Q16.	Assuming a small group wished to do a custom distribution, how
		would they go about licensing it with Bell Labs? Would it even
		really be necessary under the current license? Would there be
		any advantages/disadvantages either way?

I don't think you need to talk to Bell Labs.
I am not a lawyer, but that's what license seems to say.



^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2001-11-09 21:06 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-02-08  1:31 [9fans] So, once I've got the OS up how do I rob pike
2001-02-08  2:02 ` [9fans] " Jim Choate
2001-02-08 21:26 ` [9fans] " Steve Kilbane
2001-02-09  7:52   ` Scott Schwartz
  -- strict thread matches above, loose matches on Subject: below --
2001-11-08  6:45 [9fans] Rant (was Re: Plan9 and Ada95?) anothy
2001-11-08  8:05 ` Lucio De Re
2001-11-08 10:36   ` Christopher Nielsen
2001-11-08 18:20     ` cvs et al [Re: [9fans] Rant (was Re: Plan9 and Ada95?)] Ozan Yigit
2001-11-08 10:39 ` [9fans] Rant (was Re: Plan9 and Ada95?) Thomas Bushnell, BSG
2001-11-08 21:22   ` Matthew Hannigan
2001-11-09  0:30 ` Steve Kilbane
2001-11-09  7:02   ` George Michaelson
2001-11-09 15:52     ` Caffienator
2001-11-09 21:06     ` Boyd Roberts
2001-02-08  2:21 [9fans] Re: So, once I've got the OS up how do I Russ Cox
2001-02-08  1:05 [9fans] " Russ Cox
2001-02-08  1:45 ` [9fans] " Jim Choate

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).