Driving Plan 9 226
Glenda_lives_on writes "OSnews has an alternative OS review on Plan 9. Plan 9 is a research OS produced by Bell Labs. It was open sourced a few years back, and has enjoyed a revival of sorts. Los Alamos National Labs is continuing to favor Plan 9 for their new generation of super computing because its the fastest thing out there. I have downloaded and ran Plan 9 before. In fact the Plan 9 live cd sits here on my desk. Its not an operating system for noobs however, and lacks some graphical refinement. Plan 9 is a very cool and a interesting test drive however. Its definitely worth the price of admission (free) for exploring, and education."
Has to be asked... (Score:5, Funny)
"You see! You see! Your stupid minds! STUPID! STUPID!"
Now YOU look stupid. (Score:4, Informative)
Re:Now YOU look stupid. (Score:5, Insightful)
Re:Now YOU look stupid. (Score:3, Insightful)
I thought it was funny, playing one of the cheesier TOS episodes against the extremely cheesy Plan 9 From Outer Space
Re:Now YOU look stupid. (Score:3, Interesting)
Ahh, but you are mistaken in your praise of Plan 9, most of us Ed Wood aficionados knows that that isn't his masterpiece, indeed it is trivial in comparison to the behemoth of Glen or Glenda [imdb.com] (also known on sensational posters as "I Changed My Sex!"), wherein Wood himself stars as transvestite and Bela Lugosi is an insane rambling doctor.
All jokes aside, Bela Lugosi really deserved better than Ed Wood. It's a shame to see this man who scared the living daylights out of so many people with his Dracula and re
Unfair to Ed Woods (Score:4, Interesting)
In some sense, sure, but on the other hand, that is grossly unfair to Ed Wood's beneficial relationship to Lugosi. Consider the following (from http://en.wikipedia.org/wiki/Bela_Lugosi [wikipedia.org], but which agrees with similar details from some films on the subject, including one with Johnny Depp as Ed Wood, from some years back):
( [*] Plan 9 was a posthumous performance, and note that the death of Lugosi early in filming was precisely the reason that Plan 9 became "the worst film ever made" rather than merely the usual Ed Wood grade B movie.)
Yes, Wood was a hack (albeit a fun one with a cult following to this day), but he did his best to rescue Lugosi when the rest of the world had given up and no longer cared. Give credit where credit is due, rather than simply sneering at the charitable, no matter the flaws you see in the good samaritan. By all accounts, Wood seems to have done the best he could by Lugosi.
Re:Has to be asked... (Score:2, Funny)
Re:Has to be asked... (Score:2, Funny)
Re:Has to be asked... (Score:2)
Surely... (Score:2, Funny)
Plan 9 ISO Mirrors (Score:5, Informative)
Re:Gratsie,Sir (Score:2)
OS good, but all the desktop wallpapers... (Score:4, Funny)
Plan 9 is cool (Score:5, Informative)
Basically it never deletes old blocks of data from the server. Blocks are write-once, identified by a really large hash (collisions are so improbable that the possibility can be totally ignored). This allows you to copy lots of redundant data to the server (such as periodic backups) without worrying about the storage space. If the blocks were ever copied there before and they have not changed, they won't take up any space!
Re:Plan 9 is cool (Score:2)
Never mind which was first, ZFS is available today.
Re:Plan 9 is cool (Score:5, Informative)
Lots of things like this were/are revolutionary about Plan 9, simply because they were given the ability to do it. Some of them are great ideas (like Venti in conjunction with a database server, if the database server was tailored to the file system and didn't do stupid things...), and some of them could still use a great deal of work. Either way, I welcome our Plan 9 overlords from Outer Space.
Re:Plan 9 is cool (Score:2)
That sounds like a hell of a lot of overhead. With so much stuff going on, what do the performance benchmarks of this fs look like? Doesn't it pretty much guarantee fragmentation? I mean, if you have a lot of redundant data there is no way it
Re:Plan 9 is cool (Score:4, Informative)
Also, there is a PDF [bell-labs.com] detailing the Fossil archival server and Venti FS.
It's totally cool.
Re:Plan 9 is cool (Score:2)
Re:Plan 9 is cool (Score:3, Funny)
The notion of good research (Score:5, Funny)
http://cm.bell-labs.com/magic/man2html/1/emacs [bell-labs.com]
NAME
emacs - editor macros
SYNOPSIS
emacs [ options ]
DESCRIPTION
This page intentionally left blank.
SOURCE
MIT
SEE ALSO
sam(1), vi(1)
BUGS
Yes.
Copyright © 2006 Lucent Technologies. All rights reserved.
and vi(1) [bell-labs.com] isn't what you might think either
Re:The notion of good research (Score:2)
The vi thing I found a long time ago; at first I thought it was to prevent anyone from porting vi to their system but since realized that it was just a result of the naming convention for their development tools.
Oh, slashdot (Score:5, Insightful)
What is this, digg?
Zzzzzzz..... (Score:5, Interesting)
What was good about the "everything is a file" metaphor was not the "file" part, but the "everything is a...." part.
What would really advance the state of the art is an "everything is an object" operating system. It would be something like a Lisp OS but with an object database type file system. I think some have existed in academia, but I've never looked into them.
Re:Zzzzzzz..... (Score:4, Insightful)
Re:Zzzzzzz..... (Score:2)
Hmm, how does one subclass a file to customize its behaviour? Or hide its implementation details by marking them private? Or call methods on it?
Re:Zzzzzzz..... (Score:2)
It worked for udev/sysfs/procfs.
Re:Zzzzzzz..... (Score:2)
Well, if by "worked" you mean they were able to extend the kernel to do clever things and have the results look like files, then sure. But in something that is meant to be functionally equivalent to persistent objects, I would expect to be able to do all of the above from any userland application.
Re:Zzzzzzz..... (Score:2)
So is Ken Thompson then confusing a persisting object with a file? The discussion is about having everything be an object. I would guess that the Ken Thompson quote is taken out of context. Having everything be an object, including files, would allow a file to be subclassed as some sort of metadata object for various uses.
Having a file be a persistent object, in this respect, would allow the file to be referenced through
Re:Zzzzzzz..... (Score:2)
So these two things are very different..
Re:Zzzzzzz..... (Score:2)
Programs like grep, sed, vi, etc would instantly become useless because they would have to know about every single class in the system, past present and future!.
It would be a
Re:Zzzzzzz..... (Score:2)
Just a remark: the read/write interface is well suited to console/script interaction, but now applications have mostly moved to GUI, where the 'everything is a file' is not so useful: as evidenced by the fact that Plan9 didn't manage to fit a 'mozilla' like web browser in their setup.
Also, the textual interface while being very useful has also some inherent difficulties: many script
Re:Zzzzzzz..... (Score:2)
The superclass, File say, would have all the methods that we normally associate with files. That is, it would represent the file as a stream of bytes that you can read from or write to. Since many files are plain text files anyway, all the normal ways of processing text apply.
Then you could have the ImageFile subclass, for example, which supports a method "Pixmap ImageFile::RenderImage ()". If the OS has the right libraries installed, it will abstract away fr
Re:Zzzzzzz..... (Score:2)
Re:Zzzzzzz..... (Score:2)
Re:Zzzzzzz..... (Score:2)
The all-encompassing namespace isn't a new thing, no, viz. UNIX and NT. I think Plan 9's revolutionary idea is taking the "everything is a file" idea and distributing it (devices, files, everything) across many physical machines. Does even VMS clustering have this ability?
As for the holy-grail object systems (with all the bellen and whistlen such as orthogonal persistence) there were projects like EROS, Coyotos, etc., and some early projects like DERA's Ten15.
Re:Zzzzzzz..... (Score:2, Informative)
Smalltalk-80 fits that description pretty well. See:
http://users.ipa.net/~dwighth/smalltalk/byte_aug81
Smalltalk-80's modern descendent is Squeak:
http://www.squeak.org/ [squeak.org]
Re:Zzzzzzz..... (Score:5, Informative)
Sorry, this is where you're wrong.
Make the socket interface a filesystem, and all you do is mount a fileserver over that, to create
a socks proxy/http proxy/whatever. All apps get the capability of
doing networking over a proxy, transparently - no need for using libs or
prelinking hacks that usually don't work.
Have the ability to easily create fileservers in userspace, and create an mail
filesystem that can handle imap/pop/local mboxes etc. Mail clients doesn't need
to reimplement your favorite mail protocol in yet another broken and incompatible
way, or adhere to 4 different libraries with 4 different concepts. Just read/write files and
have the one fileserver do the job.
Sharing files AND resources becomes easy too. Want to play sound on another computer ? import hostname:/dev/audio
Having all resources being files, you get a standard way of access control (add ACLs if you really need to), couple it with private
namespaces, and you don't need the umpten hacks like freebsd jails, chroots, selinux, systrace, etc. Just use chmod/chown and set up a filesystem namespace only containing the resources (resources in this case is anything you request from the OS - networking interface, audio device, screen display, authentication privileges, or most other of the 400 syscalls or ioctls you might want to restrict access to in a read/change on traditional unixes.
Re:Zzzzzzz..... (Score:2)
Re:Zzzzzzz..... (Score:2)
What's cool about "everything is a ..." is that code and understanding for dealing with one entity (such as disk files) can be applied toward other entities (such as network connections). "Everything is an object" only helps if the objects share important characteristics that make them similar to work with. Using a basic definition of "object" -- a piece of data and operations for manipulating it -- Unix qual
Re:Zzzzzzz..... (Score:2)
About all that "everything is an object" means is that it wont crash if you send the id for one type of object to an api designed for another type, instead you will get an error. Really the only difference betwee
Re:Zzzzzzz..... (Score:2)
Why is a file not an "object"?
I don't get this. We call them 'files' and try to think of them as pieces of paper and folders as boxes, but the things on out harddrives are very different from their real-world analogs. They are abstract collections of data.
There are well known methods for getting information about a file: name, contents, attributes. There are well known methods forming an orthogonal action set u
Re:Zzzzzzz..... (Score:2)
Each object type has a set of function pointers for optional m
Re:Zzzzzzz..... (Score:2)
graphical refinement (Score:2)
The review is not so great (Score:5, Informative)
Check out the Plan 9 documentation [bell-labs.com] if you are interested in understanding Plan 9.
Re:The review is not so great (Score:3, Interesting)
Re:The review is not so great (Score:2, Informative)
Re:The review is not so great (Score:2, Funny)
I'm a "Plan 9 from Bell Labs" user (Score:5, Informative)
Plan 9 is now community driven, albiet from a small community, mostly the same people that have been there all along.
It has USB sound support and AC97 support is a new one on me.
I use it still because the user environment is the best one I have encountered for text editing and interecting with the shell. Most users use VNC to get to their X11/Windows desktops where their web browser lives.
Building a web browser from scratch is one of those never ending tasks that frankly, just isn't worth your while. That said there is Mothra - no tables, no css, no frames etc. that Tom Duff (yes that Tom Duff) wrote many moons ago and one of the community is beavering away at his project Abaco and has moderate success.
One of the main tenets to Plan 9 is "everything is a file" and the system is built around the notion of a distributed name space in the shape of a directory tree rather than being a reflection of the disk contents. The canonical example of this is ftps where the remote ftp site is presented as a directory tree at
Name spaces are process independent so you can build them per process which feels a bit like chrooting.
Exporting a name space is part of the deal, this presents many gifts that were not deliberately shoe-horned in such as remote step debugging across architectures, sending sound to a remote soundcard, importing a remote machine's network stack instead of using a gateway (including non-plan9 machines via ssh), importing remote filesystems (including non plan 9 machines). All this is facilitated by the 9p protocol [bell-labs.com].
As a micro/macro kernel hybrid all this is achieved in just 37 syscalls which is a source of amusement and a feeling of superiority when compared to Linux' 300+ (so many they are not even enumerated any more).
Linux is derided in the mailing list ("For amateurs, by amateurs") as well as the failings of the other braindead OSes we have to deal with ("If only they did it like us").
Linus has stopped by in 9fans to whine on about stuff and was seen off, Theo wanted our compilers when he didn't want the license (as imposed by Lucent lawyers) but since they have been dual licensed we've not seen him around.
Inferno isn't plan 9, it's another product built on similar principles that was sold off by Lucent.
Lucent's management of Plan 9 in hindsight could have prevented adoption when it was crucial - it was $300 per copy prior to v. 3 and once a free download had a "copies of all modifications must be sent to Lucent" clause and other annoying restrictions in it. These have been lifted now but they boat could already have sailed.
The notion of distributed computing has gained ground in recent times and Plan 9 could have been at the forefront with distributed computing being built in from the start.
All that said, Plan 9 was never intended as anything more than an experiment and some ideas have slowly crept into other products (or possibly independently invented) - notably Windows XP presenting their stuff as files/folders, ftpfs in Linux, single sign-on.
Sounds like what The Hurd was supposed to be... (Score:2)
Exporting a name space is part of the deal, this presents many gifts that were not deliberately shoe-horned in such as remote step debugging across architectures, sending sound to a remote soundcard, importing a remote machine's network stack instead of using a gateway (including non-plan9 machines via ssh), importing remote filesystems (including non plan 9 machines). All this is facilitated by the 9p protocol [bell-labs.com].
This sounds remarkably similar to what Richard Stallman's The Hurd was suppose
Re:Sounds like what The Hurd was supposed to be... (Score:2)
Yeah, but the Hurd ain't got nothing on Project Xanadu [wikipedia.org].
Re:Sounds like what The Hurd was supposed to be... (Score:2, Informative)
Erlang - don't think so. Limbo & Plan 9 C use CSP channels.
Stripped down plan 9 for RTOS - not as far as I'm aware, it's used more for clustering. LANL use it there, they might be the people to ask.
Re:I'm a "Plan 9 from Bell Labs" user (Score:2)
> (as imposed by Lucent lawyers) but since they have been dual
> licensed we've not seen him around.
Is there any license for the compilers other than
http://cm.bell-labs.com/plan9/license.html [bell-labs.com] ?
It sure looks it's written by lawyers, though earlier versions was worse
Re:I'm a "Plan 9 from Bell Labs" user (Score:3, Informative)
Re:I'm a "Plan 9 from Bell Labs" user (Score:2)
Or is it that you hate the fact that an OS built "by amateurs, for amateurs" is somehow eating your lunch at every turn? Are you happy living with an addmittedly experimental OS that doe
Re:I'm a "Plan 9 from Bell Labs" user (Score:2, Troll)
I think you mean: if it were simply a matter of having an idea how to build a better OS, OpenBSD would have flattened Linux a long time ago. The big problem with OpenBSD is that they haven't built most of it; it's sorely lacking in (native) features. It doesn't matter how good or bad your kernel is, emacs and firefox are basically the same on every platform. OpenBSD has so few actual (working) pieces that it'
Re:I'm a "Plan 9 from Bell Labs" user (Score:2)
Re:I'm a "Plan 9 from Bell Labs" user (Score:2)
Your assumption that I quote myself is erroneous.
But yes, I don't care if you use it or not.
Worse is better worked out for Linux & HTTP/HTML
Market share is for marketing people.
Not everyone is trying to dominate the desktop.
Re:I'm a "Plan 9 from Bell Labs" user (Score:2)
Hmmm. Interesting. And yet, you care enough to poke everyone in the eye with how lousy you think Linux is that you have to post this for a sig:
You know, for someone who claims not to care about what the rest of us do or think (i.e. who has the bigger marketshare), you sure seem to have spent a lot of energy th
Re:I'm a "Plan 9 from Bell Labs" user (Score:2)
"Instead of driving a car, I get about using a pogo stick. It's much better because you can carry it with you when you're not using it, so you always have it available, and also you can get into smaller spaces than you could with a car. When I need to go someplace that's too far away, I use my car
Re:I'm a "Plan 9 from Bell Labs" user (Score:3, Interesting)
Nothing epitomizes, to me, the Plan 9 attitude like your remark later in the thread about how not having shared libraries is something to celebrate (it's a feature, not a bug!). I'm aware that you didn't just make this up; it's a pretty common thing for Plan 9 implementers and fans to say. Yes, shared libraries are awkward t
Re:I'm a "Plan 9 from Bell Labs" user (Score:5, Insightful)
However you don't tell someone their house is a shithole that only an idiot would want to live in even if you have a better home proposed. You point out the merits of the new house over and above what they have now.
Otherwise you will be perceived simply as an asshole calling someone an idiot. It might make you feel better, superior, etc., but it guarantees that you and whatever you're bringing to the table will be ignored or actively derided.
You hurt your cause by your presence. People will avoid Plan 9 not for its failings, but because it is associated with assholes, for example, you. If your goal is to kill the project, then by all means continue insulting others because you think they deserve it. If you actually want to foster adoption, perhaps a measure of diplomacy and a modicum of decorum would help.
In short, don't be a dick. As an added bonus, that advice works for more than just software.
Re:I'm a "Plan 9 from Bell Labs" user (Score:2)
Re:I'm a "Plan 9 from Bell Labs" user (Score:2)
employs many precision tools. Computer programming likewise requires
sophisticated tools to cope with the complexity of real applications, and only
practice with these tools will build skill in their use.
-- Robert L. Kruse, _Data Structures and Program Design_
Re:I'm a "Plan 9 from Bell Labs" user (Score:2)
The plan9 kernel has 37 syscalls
> No mmap huh? No shared libraries? Er, nice!
That's considered a feature
Plan 9's web browsers (Score:4, Informative)
Abaco [freshmeat.net] is the most actively developed Plan 9 web browser. It supports most of html. DOM level 3 development has been started. Mozilla's Javascript engine has been ported to Plan 9 and can be used today for a Javascript shell. This will provide abaco with Javascript in the future. Work on CSS has started but I do not know what has been done or where it is heading. Abaco has been ported to Linux and friends via Plan 9 from Userspace [swtch.com]. Package managers are encouraged to make packages of abaco for their systems. (See screenshot [tip9ug.jp])
Then there are webpage, links [ucalgary.ca], mothra [wikipedia.org], and htmlfmt [bell-labs.com].
Finally there are text web browsers for acme (htmlfmt for Plan 9 and see this [caerwyn.com] for Inferno)
In other news, SDL now works on Plan 9 [tip9ug.jp].
For those of you who haven't seen plan 9 yet... (Score:3, Funny)
I must warn you, however, that everything you will see is based on sworn testimony...
/proc on steroids (Score:5, Interesting)
Really cool how _everything_ was a file.
To start a program on some machine, he would cd to some directory corresponding to the machine. I don't remember exactly, but this directory had files corresponding to "exe", "stdin", and "stdout" among others. To start a job, the program was just copied to the exe file. And then if you looked at the "stdout" file, the output from the running job was there. Now you can imagine how launching a job on thousands of machines and collecting the output becomes really trivial.
I got the impression that this was sort of like the Linux /proc filesystem, but expanded to work seamlessly across a cluster and with more functionality.
Re:/proc on steroids (Score:2, Informative)
Re:/proc on steroids (Score:5, Informative)
Despite the limited nature of the copy (somebody else says that Linux version is pretty much read-only, I'm not sure) it shoud be obvious what a big win this is. Suddenly a whole lot of utilities like "ps" do not have to be recompiled to match the kernel. And you can peek into
The only other Plan-9 thing that is copied extensively is UTF-8 text encoding. This one is also a HUGE win, as suddendly we don't have to write two streams through all our programs for handiling Unicode and handling "legacy" ascii files, as they are now the same thing, as long as some (very minor) fixes are done to the "legacy" code. Plus UTF-8 seamlessly handled Unicode going past 65536 characters, while the "wide character" solution that Sun and HP and Dec and Microsoft struggled with for 20 years fell apart the moment this happened, by adding "surrogate characters" and thus deleting the *only* advantage it had over UTF-8.
Considering how incredibly useful both of these ideas are, I would certainly like to see a lot more of Plan 9 brought out into the real world. There is a lot there!
Re:/proc on steroids (Score:3, Informative)
Also, you talk as though UTF-8 were inherently superior to UTF-16 because of the sma
Re:/proc on steroids (Score:2)
Re:/proc on steroids (Score:2)
Plan9 runs on Xenopix DVD (Score:2, Interesting)
http://unit.aist.go.jp/itri/knoppix/xen/index-en.
Xenoppix is a combination of Virtual Machine Monitor "Xen" and 1CD/DVD "KNOPPIX".
It runs Plan9 and NetBSD on Xen-DomU(GuestOS) and KNOPPIX on XenDom0(HostOS).
Interesting reads. (Score:2, Informative)
http://www.cs.unm.edu/~fastos/05meeting/PLAN9NOTD
http://www.collyer.net/who/geoff/9book.html [collyer.net]
Wow, he managed to compile a "Hello, world" (Score:3, Funny)
"lacks some graphical refinement" (Score:2)
Which is a polite way of saying that it's hideously ugly and designed as if the last 20 years of HCI research never happened. I mean, look at those scroll bars.
Re:"lacks some graphical refinement" (Score:3, Insightful)
2. It isn't about HCI.
3. Most of the modern GUIs also seem to care very little about usability as much as they do about marketing.
The truth is that modern GUIs seem to be more about distraction than actually getting work done. I admit that I to love my eye candy but that isn't what Plan 9 is all about.
Maybe that should be the next step for Plan 9. Since Plan 9 seems to be a great solution for distributed systems maybe some university should take it and start working a research projec
Re:"lacks some graphical refinement" (Score:2, Interesting)
Plan9 on Qemu (Score:3, Informative)
If you wish to try out Plan 9 without burning a CD and rebooting, Free OS Zoo offers an image of Plan 9 [oszoo.org] (108M) that works fine with theQemu emulator [bellard.free.fr].
Step-by-step instructions for a Debian-based distro:
Other tips:
Good luck!
To answer some of the authors questions (Score:4, Informative)
2) The cd comes with all the official software. Everything but the stuff that can be found in
3) It does include ping. Ping is not just limited to IP so you will find multiple ping programs for different things in their respected directories. The ping for IP is in
4) This all fits in 80MB. Plan 9's cd is small because it doesn't have bloat. (This includes: PDF/postscript reader, page; Word processor, troff; an advance shell, rc; a web server, httpd; plus thousands of other applications.)
5) Why didn't you ask any of your questions on 9fans before coming to your assumptions?
6) This isn't Linux there are rules (e.g. ip tools in
Plan 9 under Microsoft Virtual Server 2005 R2 (Score:2, Informative)
PlanB (based on Plan9) (Score:2, Interesting)
As an alternative to Plan9, you may try also PlanB [lsub.org], a distributed operating system based on Plan9.
EULA - Weapons of Mass Destruction?? (Score:2)
I clicked I Don't Accept on the web page and have never gone ba
Re:EULA - Weapons of Mass Destruction?? (Score:2)
Re:EULA - Weapons of Mass Destruction?? (Score:3, Interesting)
We use it as our video servers' OS! (Score:2)
All the real fun work was done ages ago. All we see is a csh-like shell. Perl and Apache and other basic tools were ported to it, which is nice.
Plan 9 deserves $30-$300 million in funding (Score:2)
Re:Wow! I have never heard about this before! (Score:3, Funny)
Re:Wow! I have never heard about this before! (Score:2)
Re:Wow! I have never heard about this before! (Score:2)
No, but there are similar fluff articles about various Linux distros, only a handful of which are actually useful in the slightest. Your articles go back to 98, meaning you've listed less than one per year. Considering how many good ideas are in Plan 9 and how good of an example it could serve to the current crop of kernel hackers and OS g
Re:Wow! I have never heard about this before! (Score:2)
Re:Wow! I have never heard about this before! (Score:2)
With QEMU you can run Plan 9 as a guest OS under Linux, windows, or Mac OS/X
The more I use Qemu the more I like it. I actually got Vista to run in a window on my Linux desktop. It isn't fast but it worked.
I don't know if they have support for Xen in Plan 9 yet but I do know that Nvidia and Xen don't get along
Re:Wow! I have never heard about this before! (Score:2)
I did find out via a couple of posts at OSNews that it might be possible to install Plan 9 under VMWare, but I've not yet had time to give that a try (need to clean up my hard disk first).
Re:How does it compare with the SavaJe OS (Score:4, Informative)
I personally have not checked out Savaje OS. Inferno [vitanuova.com] would be most comparable to such an OS. Inferno is based on many of Plan 9's ideas but with a new programming language, Limbo [vitanuova.com] (famed for being the only other language than C Dennis Ritchie documented [vitanuova.com]) and a virtual machine, Dis [vitanuova.com]. Limbo can run on bare hardware without a host operating system with around 700KB of memory.
Rob Pike explains the advantages of the Dis virtual machine. Unlike the
Re:Is this from Outer-space? (Score:2)
It is from alternative reality called "user space"
Re:Plan 9, the OS for Smug Elitist Assholes? (Score:3, Funny)
Re:the mocking... (Score:3)
Re:the mocking... (Score:2)