Open Source Release Of Bell Labs' Plan 9
Joined by dozens of other readers, johnmullin writes: "Bell Labs has made the third release of its Plan 9 computer operating system available on the World Wide Web under an open-source agreement. Anyone interested in using Plan 9 may download the system, including source code and documentation, from http://plan9.bell-labs.com/plan9dist/. Check out the full story here here." Note for the lazy: An English company called Vita Nuova will also be selling "a full boxed set with CDs and manuals." Surely, systems research is not dead ...
The License is here: http://plan9.bell-labs.com/plan9d ist/license.html for anyone who wants to check it out
Do you know how they managed the effiency? The common logic is that efficiency is inversly proportional to abstraction. The more abstraction, the less efficiency. That's why DirectX has a very small abstraction layer, and why (partially) why Windows GDI is so slow because it is abstracted so much.
A deep unwavering belief is a sure sign you're missing something...
Maybe Inferno and Limbo are the next to go Open Source? We'll see!
I have to say that I've always thought that Limbo sounded like a much better thought out Java. Read this for some interesting points.
Face it, Java was "designed" for appliances, then, made to work for applets and now, we're to understand it's just perfect for server side programming and practically made for XML. Give me a break.
Inferno/Limbo actually looks like there really was thought and design put into them to make a good networked programming environment. I've always thought that the licensing was a hindrance to the adoption of Inferno in contrast to Java, but maybe that'll be fixed now?
We'll see... Too little, too late? I don't think so. Despite all the feverish development going on with Java, what real impact has it had? How many people really use Java in production systems today?
-Jordan Henderson
It supports only a small amount of hardware, but I found it easy to install after digging around in my box to get the right stuff. Actually it does use a windowing system that basically acts as a filesystem. All the windows and processes communicate with eachother thru files. When you start the "rio" server you actually just mounting /mnt/wsys (as well as /dev). All the control of services, such as mouse and control of applications and windows is done thru files as well. It does seem a bit slower, but I only installed it standalone which isn't recommended or intended. If I set up three boxes for the CPU service, 2 for the file services and 1 for the networking servs I'm sure it would *haul ass*. It also uses this interesting method of process communication called plumbing which is file based.
:-)
As for porting GNOME, Perl and Python, as you were saying, I think that's a step in the wrong direction. GTK+ relies on X, and though you could port X to Plan 9, why would you want to?! All the services that X provides could be easily mimiced using some file based "translators", which I'm sure would be a much more concise and transparent environment to understand, code and be productive in. I think getting a lot of the GNU software may prove difficult (as well as pointless), as Plan 9 uses a dialect of C (and some other way cool distubuted languages) which has some major differences. For instance you can't use a lot of the preprocessor directives such as #if, which I know are prolifically used in programs such as bash (and GNOME/GTK software).
Though it would be relatively straight forward to do and I'm sure it will be done, I for one don't need a "UNIX compatibility layer" over Plan 9. All it needs is a more sophisticated OE, and I think I'm at home. Time to go to the used somputer store and buy a 10 pack of old pentium 200's and a 100mbs lan.
Plan 9's position as UNIX's successor is by no means clear. Operating systems have tremendous inertia; people will use an OS if it has enough applications. Which is why Windows is so popular (surely it's not because of its elegant design and technical superiority), why its main competitors are based on UNIX, and the most successful unices are relatively unweird ones like Linux and BSD.
By the time there is sufficient dissatisfaction with the classic UNIX design to warrant a move, things will have evolved so much that the alternatives will be quite different from what exists now. Perhaps one of them will be descended from, or inspired by, Plan 9; perhaps not.
While Plan 9 is technically interesting, for most uses it doesn't offer enough advantage to warrant switching from vanilla UNIX. Its distributed architecture probably won't be of use to a hobbyist surfing the web on a PC.
Upon a second reading, I think they meant for just the ghostscript fonts to be GPL. But it hardly matters, because the Plan 9 license is basically the GPL anyway.
nojw
What's all too common is for people to react with:
I was reacting generally against that; while it would be nice if there are some "creature features," as well as some "past functionality," that certainly does not lead in the direction of really coming up with cool NEW stuff.
There's lots of dilemma here; a problem with an utterly different OS, like EROS, is that of having an environment capable of hosting it.
For instance, in order to use EROS, which doesn't support "files," as such, you need to take a bunch of C and C++ files and compile them. This pretty much mandates having something that "smells like UNIX" kicking around, to provide:
Any self-respecting system will be "self-hosting;" you get:
- Systems descended from mainframes;
- Systems descended from RSX-11;
- Systems descended from System 34 and Hydra;
- Systems descended from Multics;
- A few Lisp environments that are getting pretty unsupportable (well, there's Genera);
- FORTHs
And that's about it. (Heh, heh, I didn't mention Linux or Unix. They're "descended," loosely, from Multics... Guess where Windows falls in?Most of these systems have pretty much converged into general similarity, perhaps save for Lisp and FORTH, although the most recent environments getting deployed for those rest upon either POSIX or Win32.
Based on the above set of ancestors and their children, I'm actually not sure that it's not a reasonable idea to assume the presence of something looking like a POSIX subsystem that could support stuff like GNOME, Perl, and Python.
If you're not part of the solution, you're part of the precipitate.
Umm... in Unix/Linux/*BSD/etc, is not everything a file?
Not exactly. In Plan 9, everything is a file.
For example, the contents of the current mouse selection is available from a file, whose name escapes me.
Also, the distinction between block and character devices is gone from Plan 9.
Me? Plea for peace? Not too often...
Sometimes, though you just have to speak with candor rather than diplomacy. I could have danced around the offense, but wouldn't have made the point as well. If one person tries to use the tools and philosophy of Unix instead of C on thier next project, I'll be happy and the world will be a better place.
There's no panacea. Not scripting, not C, but in general, it makes sense to use the highest-level tool available for a particular task, and modularizing helps mix those tools.
"The future's good and the present is nothing to sneeze at." - Roblimo's last
I'm amazed at the amount of vitriol that little sig is generating. Kind of makes the point about evolution being a religion of its own, I guess...
"The future's good and the present is nothing to sneeze at." - Roblimo's last
DISCLAIMER: even though my email address says @bell-labs.com I'm not speaking for anyone other than myself here.
Having lived pretty much exclusively in Plan9 and Inferno for several years now, allow me to make the following observations:
To answer the question about the Sparc kernel: cross compilers are distributed for:
Kernel source is distributed for:
Absent from this list is the Sparc kernel.
So: there is a Sparc compiler, but no kernel. However, if you have Plan 9 2nd edition, you have a sparc kernel that could quickly be ported to the new system.
NOTE: The underlying system architecture is largely irrelevant in Plan 9. I italicized cross because there is no distinction between compiling and/or debugging something for the architecture you're running on vs. some other architecture.
When people describe one of Plan 9's features as "everything is a file", it's misleading. Especially since your typical nix weenie will come back with "But everything in my nix is a file too".
You'll get a better picture of the Plan 9 environment by thinking of a device driver as a "file server". That is, a device driver exports a hierarchical filesystem rather than a single file. The driver entry points correspond to the basic filesystem operations (rather than the basic *file* operations, as in nix). To make a horrible analogy, think of a Plan 9 device driver as implementing the vnode interface. In actual fact, it implements an interface to the "9p" protocol.
For example, here's a du(1) of the /net directory.
A few devices are bound into /net:
Also, a couple of user level file servers have posted communication channels in /net:
The point is that there comes a time when fast enough is truely fast enough. "Fast" is defined by the *apparent* response of the machine to the load placed on it. "Fast" is a human parameter, not a machine parameter.
When the machine is fast enough you can use 90% of its power to interpret, without the operator experiencing any difference in output rate. This is not at all the same thing as "only getting 5%-10% of the speed I payed for," it is using 90% of the power which is now in the realm of overhead to accomplish the work of overhead.
I don't get your point in your second paragraph at all. It seems to me that your point of view *supports* the idea of coding "on the metal."
I'd also point out that the original poster never said anything about destroying the dreams of others. Where did that come from? You have a dream, follow it. Go ahead, I don't mind, and neither does the original poster.
In any case it dosn't take any ill will for one dream to "destroy" the dreams of another. I have no reason to believe that Gottlieb Daimler meant any ill will to the Hansom cab. His dream none the less "destroyed" it. However, if the Hansom cab is your "dream" you can still build or buy, and operate one.
It certainly seems likely that the time will come when interpreted languages will "triumph" in the sense that they will accomplish all that is asked of them in the time frame desired and thus become the most used languages.
*I* may still be coding in APL, but so what?
100,000 programmer can't be wrong!
Feed The Need[goatse.cx]
Why go through the pain of writing all 100% of your code in a compiled language like C, when you could write only that speed-critical 10% in it, and write the rest in something like Python?
Python code cannot be compressed as easily as C code. In C (or any of its interpreted cousins), source code can be compressed by removing all indentation and decompressed by re-indenting with GNU indent. With Python's indentation-as-syntax, deep nesting of if-then structures, even at one space per indent, runs up a big bill in terms of space. I'm not dissing Python (I think indentation as syntax is wonderful; if then if then else anyone?), but interpreters need to understand .py.gz files.
Will I retire or break 10K?
This is so excellent. Since Amoeba, Plan 9 and EROS are all now open source, there's no excuse not to experiment. Contrary to what Pike might have said, now is an excellent time for OS research. Since hardware is cheap too (I mean come on, an 100Mbps 8-port Ethernet switch for less than USD $200), it's a good time to be in the field, especially looking at distributed and/or parallel computing.
I'm not quite sold on the idea of "everything is a file" notion with Plan 9 (from my understanding of it) but it has a lot of cool ideas. Now if only I had room to set up a 19" rack for a small cluster...
Time to read some code!
James Graves
The only thing that's unusual is that one is required to provide bell labs with changes, but only at their request.
Smacks of APSL (I'd provide a link but Apple's server is down), a license RMS hates because he claims it "disrespect[s] ... privacy."
Will I retire or break 10K?
I always thought that Plan 9 was from Outer Space and not Bell Labs. Huh... learn something new every day.
So, I suggest people beat away on it, try to port stuff to it, run the license past their corporate lawyers, and share what they find.
Again, on the whole, I think this is very positive. But it may also turn out to be too late: Linux and similar systems also have evolved and included some really innovative stuff (e.g., ReiserFS). At least, with its general availability, Plan 9 may influence the future evolution of Linux and other open source OS'es. A lot of the functionality of Plan 9 can actually also be provided on top of a standard UNIX kernel without kernel modifications.
Incidentally, on the license front, Bell Labs still seems to have a few problems; consider this part from the release notes:
According to the articles they provide Plan9 is supposed to be a distributed UNIX, or something.
Or something. Plan 9 is not a UNIX system. It was designed as a separate OS research project, but given the authors, it's natural that some UNIX ideas were used.
It was designed to explore the ideas of distributed computing and the proliferation of commodity hardware.
Maybe i'm missing the point but i get a feeling of "been there - done that".
Yes, but look at the dates on the system. Plan 9 has been there, and was doing that ten years ago.
For some reason, Slashdot folks seem to think Plan 9 is new software. Not so.
Lucent grants to Licensee, a royalty-free, nonexclusive, non-transferable, worldwide license to use, reproduce, modify, execute, display, perform, distribute and sublicense, the Original Software (with or without Modifications) in Source Code form and/or Object Code form for commercial and/or non-commercial purposes
I think that you are wrong. It seems to clearly state that this software is available royalty-free for anyone, profit or non-profit.
This is not flamebait, I honestly don't know.
Isn't plan9 based on a Mach kernel, compared to say a monloith kernel (like linux has)? Wasn't one of hurds goals to have a mach kernel OS system? Couldn't they use this (if the license is compatiable?)?
"`Ford, you're turning into a penguin. Stop it.'" -THHGTTG
Actually, I think it would be more accurate to say that DOS is like UNIX after a horrendous automobile accident - multiple amputations, brain dead, in an iron lung...
________________________
Corporate Jenga: You take a blockhead from the bottom and you put him on top...
VMware PANIC: NOT_IMPLEMENTED F(562):1654
So much for running this thing in a sandbox....
---
How am I supposed to fit a pithy, relevant quote into 120 characters?
Okay, this is semi-on-topic (as we are discussing alternate OSes as hobby, an this relates).
I've got a nice rack set up in my office - I've rackmounted my video and sterio equipment, along with a small TV, and it looks great. Then I have two computers sitting on a rack shelf. In regular cases. Yuck.
Has anybody seen hobby-level rackmount cases? I.E., cheap, decent, but not industrial class? I've got four systems that I use, and I'd love to rack them all, but at around $400 average (I've seen as low as $250), it's just too expensive for hobby.
Incidently, it's not just for looks - rackmounts have easier cable handling, make better use of space (I can fit four systems in the space of two), and have better ventilation on the 19" rack.
In case you're wondering, I spent $125 on the rack, and about $100 on shelves, stand alone foot, and such. I also bought some furnature grade plywood, trim and stain, and slapped an enclosure around it (velcroed on :) The velcro works great - rip it off and on for access to the side, and it meets up flush against my wall, looking nice.
--
Evan
"$30 for the One True Ring. $10 each additional ring!" -- JRR "Bob" Tolkien
At least they're not asking for the copyright. And since most people here probably happily share their sourcecode, that shouldn't be much of a problem.
//rdj
No one can understand the truth until he drinks of coffee's frothy goodness.
--Sheikh Abd-Al-Kadir, 1587
The only thing that actually switches in this device is the two port 10/100 switch (really, it's more of a bridge) These devices suck so bad, I'd rather get a 100Mbps HUB
While I haven't read the license in great detail yet, I see nothing in it about "recreational" (or "racreational") use. On the contrary, under the "Grant of Rights" section, part of section 2.1 reads:Now, I'm no lawyer, but "for commercial and/or non-commercial purposes" sounds a whole lot different from "recreational use only"...
However... I do notice that the word "perpetual" only exists in the "Modifications" section, and not under "Grant of Rights". Is this an oversight, or should we be alarmed? Is Lucent contemplating revoking the license if they don't like what you do with the code?
Deven
"Simple things should be simple, and complex things should be possible." - Alan Kay
I read thorugh through the license. It has very few restrictions, and no revocation clause. The only thing that's unusual is that one is required to provide bell labs with changes, but only at their request.
Plan9 is the successor to UNIX. It uses a different paradigm, as far as processes and user spaces go, so now that it's available to everyone it should have a positive effect on the rest of the os community.
This is not as innocent as they sound in the press release or on their Plan 9 site. You would propably get a better deal working through a third party such as Vita Nuova or one of the others who will more than likely have press releases out tomorrow. If nothing else, you can download the binaries, but to really use them with the horsepower expected, you'll need the tools. These are not GPL'd and without them, you may as well be running generic Linux from LinuxOne.
But I can't find it in the distribution and even the papers or other references seem to have disappeared from the Plan 9 site. (You can still get a copy of the reference manual in Google's cache by searching for "alef language"; it's the first hit).
That's a shame, because Plan 9 otherwise seems pretty poor when it comes to anything higher level than C.
I certainly hope that the window system is not a "real graphical environment". We don't need widgets built into the system, it is easy (trivial, really) to build them atop the system. Or do you also think that file systems would be better if there were different calls to read image files than to read text files (there were systems that worked this way once upon a time, too).
Cutting and pasting anything is not the graphics system's responsibility. Even X does too much of this. I think in Plan9 cut/paste would be done by reading and writing files, and of course *ANY* data can be put through the file.
The legal mumbo-jumbo thats sets it apart from the GNU Public License is the bit that says that none of the software included (except for the UW Postscript fonts) is covered by the GPL.
IANAL, and CSINL (common sense is not law), but this license seems very different from the GPL in intent. The GPL attempts to give both the copyright holder and the licensee a great deal of rights to software. For example, the GPL doesn't prevent the copyright holder from distributing the GPL'd software under any other license -- If I write and distribute GNU Plan 2000A under the GPL, I'm allowed to distribute Plan 2000B under any other license I may choose. However, the GPL tries very hard to make certain I can't take away the rights of anyone that has the GPL'd GNU Plan 2000A -- once someone has GNU Plan 2000A, I can't retroactively change their license to the Plan 2000B license, even if its exactly the same software. Once someone has GPL'd software, they enjoy a great deal of rights to that software, and those rights are intended to be both transferable and non-removable.
The Plan 9 license doesn't provide any of the rights to the user that the GPL does. The Plan 9 license is explicitely both non-transferable and removable. The license says that Lucent owns this software. We may look at the source, and change it, and distribute it, but Lucent has absolute rights (including patent rights!!!) to any changes anyone makes to the software (whether those changes are distributed or not), and the absolute right to remove your rights at any time. If Lucent doesn't like what you're doing with plan 9, they can make you stop. If you make a cool addition to plan 9, they can sell it, and make you stop using it. They own anything you do with the software.
This is an open source license, in the sense that we can see the source. This is a free license, in the free beer sense. This is not free software, in the GNU sense.
Slashdot is jumping the shark. I'm just driving the boat.
- The fonts included with Plan 9 (not the ghostscript ones) are not open source. You may not redistribute them, except with Plan 9.
- Plan 9 and derived works require a small copyright notice a'la the old BSD license.
- Plan 9's license specifically allows a commercial distributor to make additional warranties as long as those warranties are held only to the commercial distributor.
- Lucent may request that you provide them with any changes that you make to their software, regardless of whether or not you are distributing said changes, and incorporate those changes with Plan 9, a'la the QPL.
Aside from that, it looks an aweful lot like the GPL. Yes, there is a clause that states that Lucent may change the license at their discretion at any time, but that this change will only affect versions of their software downloaded after said change has been published.Linux is a Unix clone
Mac OS X is a Unix clone
Windows 2000 is even trying to be Unix-ish. (But a pathetic imitation)
Amiga is now a Unix clone
Is BeOS a Unix clone? (I haven't played with it)
I'm getting bored. Gimme something else...
... in other words, if you sue someone who has contributed to Plan 9, you lose your right to use Plan 9! That's beautiful! Rob Pike, Doug Blewett, Stu Feldman, Chris Fraser, Brian Kernighan, Dennis Ritchie, and Phil Winterbottom are programming gods!
Napster-to-go says "Fill and refill your compatible MP3 player", which is a lie. It's not MP3. It's WMA with DRM.
>>I'm not quite sold on the idea of "everything is a file" notion with Plan 9
>Hmm.. Isn't that the way unix handles things as well?
no, not really. In unix ethernet cards aren't files, tcp/ip connections aren't files and windows aren't files.
/Erik
Erik Dalén
Plan 9 is different than the usual Unix ways of doing these, and in some respects, better. One of the cool things about Plan9 (and its follow-on Inferno, which I've been looking at lately) is that pretty much *everything* is network extensible and *completely* location transparent, and this is all built in and does not rely on bolt-ons like AFS directory services, etc. (Imagine being able to relocate any service, part, or function of the OS as easily and effectively as you redirect an X display and you'll start to get the idea... And on top of that, they actually managed to make it quite small and efficient!)
Yes, you *can* make Unix jump through those hoops, but in many ways it's just pretending. Plan 9 was arguably the first really serious attempt to write a true network-centric OS that recognized the power and potential of networked computing. I'm not sure if Plan 9 is the same as Inferno in this regard, but one of the things that's impressing me about Inferno is that to a much greater degree than Unix, *everything* is a file. This makes it possible to write scripts that have incredible power, for instance, to open a TCP connection, you just write a connect command with the proper parameters to the TCP device file, so pretty much everything can now be done from the command line. This is a higher level of functional abstraction that makes scripting much more powerful, allowing those of us that love the power and leverage of Unix' superior text processing and scripting tools to really shine. In this respect, although it's clearly post-Unix, it's actually truer to the "Unix philosophy" than Unix itself! (Not to start a flame war, but I've always believed that unless you're writing bit-banging code like device drivers, resorting to C reflects a substantial lack of imagination and knowledge of Unix on the part of the programmer.)
I think we all recognize that assuming from the get-go that the network is an ever-present and reliable service would lead to an operating environment very different in some important respects from what we have today. Plan 9 and Inferno are the result of one approach to taking that assumption to its logical conclusion.
You really need to read up on it yourself to appreciate it, but don't think that Plan 9 is either "just another Unix clone", "something bolted onto Unix", or "just the same old thing." It really is a different spin on the role of the network from the OS point of view. Although there may be better obscure examples, Plan 9/Inferno is the most network-aware, network-integrated OS I know of. Check it out - I'm going to!
P.S.: One of the interesting side-effects of this philosophy is it's impact on the prevalence and power of interpreted languages in general. Now that Open Source is here to stay, and Moore's law is outrunning the hardware nedds of most of us, do we really even need compiled languages anymore? (The classical reasons are speed and secrecy of source for comercial reasons - those are now both becoming increasingly irrelevant. I personally believe interpreted languages will triumph in the end, as I have believed since 1985. We're not there yet, but we're getting much closer...)
"The future's good and the present is nothing to sneeze at." - Roblimo's last
The thing that excites me most about the release of Plan9 is the inclusion of Ken Thompson's C compiler suites. Although GCC has served well, it's gotten pretty crufty over the years. I'm hoping that this release from the master might someday provide alternative compilers for the open source community.
'more Unix then Unix'
'everything is a file -- more then Unix'
'network resources can be handled with pipes much more easily'
'a research OS'
'no sane person would use it as the basis of a network'
'has a licence that is like the BSD/GPL/... except in some minor respects'(!?!?!?)
...it struck me. Wouldn't this be an ideal shell environment? If a quick patch to the underlying network is needed, the tools that could be created on this would make it ideal.
Tell me I'm crazy...but it seems like an obvious use of this source, even if it has a good but not ideal licence.
A firewall can not protect you from yourself. Turn off what you do not need. Do not use the firewall to do your work.
Check again... there's a GNU Public License at the bottom. As far as I can tell it's nearly identical. There's probably some legal mumbo-jumbo that sets it apart.
Is there any real reason why Plan9 is better than modern Unices TODAY?
No. Plan 9 is a really cool system, but it's not the kind of thing you're going to use as your desktop OS. It's stripped down and raw, and is lacking a lot of the functionality we now take for granted. (web browser, etc...)
Plan 9 is very much like V7 UNIX plus some modern tech, and is pretty much an OS-hacker system. It's cool for a research toy, and exploring something different, but no sane person is going to base their network around it.
Consider it a different snapshot of Bell Labs OS work.
With the long appeals process coming up, the last thing we need is another operating system Microsoft can claim as competition in the marketplace.
-Joe
Unfortunately, I'm not sure it's as simple as some people going out and installing Plan 9, and seeing about porting Perl and Python and GNOME over.
To the contrary, actually developing new things means taking these systems, perhaps trying them out to see what insights fall out of them, and then developing further systems.
I guess I'd argue that the result of the availability of these systems is that of improved system diversity, and not necessarily the creation of new abstractions.
As for the "everything a file" notion, I suspect that if it had taken off in the early '80s, we might have a windowing system now that could be manipulated as a filesystem. Possibly a mite slower than X, but doubtless rather powerful, and easier to customize...
If you're not part of the solution, you're part of the precipitate.
Good question. At a glance, it looks like it just means you can't bootstrap yourself from a SPARC unless you have the previous kernel: i.e.: that you'd have to build the SPARC kernel elsewhere first unless you have the old one. One wonders why they'd do this though...
"The future's good and the present is nothing to sneeze at." - Roblimo's last
It seems like a nice OS that was designed primarily for communication and multiple processors. I previoulsy hadn't heard of it. Some of the papers refer to it as a sort of clean unix, being built from the ground up in one nice piece instead of adding features as the years go by as in the current model.
...and I'm not sure we should trust this Kyle Sagan either.
I submitted this story, too, but I figured I wasn't first. I was hoping, however, that the person who posted the story would note that the source is available under the GPL.
I was curious about the "open source" license used. Reading the license, I was very pleased to find that it was very much like the GPL. Then I got to "Exhibit A", which was the GPL itself.
Yes, I favor the GPL over the BSD license. Insert mandatory license flame war here : )
Sure Plan9 may be a nifty operating system for UNIX nerds, but what about speed? It seems that all programs communicate through a protocol, and that the interface to the system is hideously abstracted. Has anybody played with this system and tested its speed in relation to other OSs? ALso, this distributed computing thing sounds cool, but again, does the architecture translate into a tangible speed increase over systems like QNX?
A deep unwavering belief is a sure sign you're missing something...
The license resembles the GPL in many ways, but contains some disturbing text.
``You agree to provide the Original Contributor [Lucent], at its request, with a copy of the complete Source Code version, Object Code version and related documentation for Modifications created or contributed to by You if used for any purpose.''
This requirement is puzzling. Note that the GNU license does not require anything like this; you must reveal your source to everyone only if you redistribute, not if you merely use the software for any purpose. You can, for instance, make ``in house'' changes to GNU software.
What does this really mean? What does ``if used for any purpose'' mean? Used by whom?
I read through the license. I see only one significant difference between it and the GPL: under the GPL, you can create internal versions that you do not distribute. Under the license Lucent is offering, you must provide modifications to Lucent if they ask for them. No mention is made of whether the modifications are distributed, as far as I can see.
Other than that, it looks like it provides almost exactly the same thing as the GPL, except that it's written from the point of view of "here is this massive software package, which you might want to make small changes to", rather than "here's a bunch of code, which you might want to incorporate into your stuff" that the GPL suggests.
--Kevin
There is a reason why the GPL is put in as an exhibit. The Lucent license itself says that EXHIBIT A applies to some fonts. It does not apply to Plan 9 itself.
I was curious so I ran a Netcraft "What's that site running?" check on plan9.bell-labs.com. Looks like it's being hosted by Plan 9 (of course.)
A testament to this neat little operating system's ability is that it is taking the Slashdotting in full stride. I'll definately want to play around with this system.
zsazsa
The license appears to be a modified BSD-type license. The system design is fantstic. If we all used Plan 9, we could stop fooling around with PVM, Mosix, etc. and have Real Distributed Computing. It's windowing system, ½, is only a 90k binary on the 68020 processor. Much less bloat than X! And there's NO MOTIF on Plan 9! An added bonus! (rimshot)
/* clear */
/* initialize graphics library */ /* initialize event library */
/* wait for release of button */
From http://plan9.bell-labs.com/sys/do c/8½/8½.html
Here is a complete program that runs under 8½. It prints the string "hello world" wherever the left mouse button is depressed, and exits when the right mouse button is depressed. It also prints the string in the center of its window, and maintains that string when the window is resized.
#include
#include
#include
void
ereshaped(Rectangle r)
{
Point p;
screen.r = r;
bitblt(&screen, screen.r.min, &screen, r, Zero);
p.x = screen.r.min.x + Dx(screen.r)/2;
p.y = screen.r.min.y + Dy(screen.r)/2;
p = sub(p, div(strsize(font, "hello world"), 2));
string(&screen, p, font, "hello world", S);
}
main(void)
{
Mouse m;
binit(0, 0, 0);
einit(Emouse);
ereshaped(screen.r);
for(;;){
m = emouse();
if(m.buttons & RIGHTB)
break;
if(m.buttons & LEFTB){
string(&screen, m.xy, font, "hello world", S);
do; while(emouse().buttons & LEFTB);
}
}
}
The complete loaded binary is a little over 26K bytes on a 68020.
The only thing X can do in 26 bytes is dump core.
A web application server built using Plan 9 should be uber-scalable! Too much load? Add more CPU servers. Need more file storage? Add more file servers. I'm ordering a CD!
Napster-to-go says "Fill and refill your compatible MP3 player", which is a lie. It's not MP3. It's WMA with DRM.
I bet it's only a matter of time till we get an open letter from Richie Stallman telling us why Plan 9 isn't really Open Source.
The picture I have in my mind is:
RMS (for the 100000th time): Why do people keep asking me about the Open Source movement? I'm a member of the Free Software movement! Aaaaagh! (RMS promptly bursts into flames)
Power corrupts. PowerPoint corrupts absolutely.
Yeah, but can you create new net connections by writing to /proc/net/tcp?
Don't be so defensive about UNIX, it doesn't have every good idea...
Just ask the guys who wrote it...
Some of Plan9's distributed computing stuff is cool, but it is not entirely new. Back around 1993, there was an OS called Chorus made by some french company. Chorus had a nifty distributed system where each machine (or "site" in chorus lingo) would run the microkernel (or "nucleus") Then, different machines would run the different servers needed. The kernel would either dispatch threads to these sites, or call the services of the servers one those sites. This seems to provide about the same features as Plan9, but seems less resource intensive than the huge levels of abstraction Plan9 has.
A deep unwavering belief is a sure sign you're missing something...
100Mbps 8-port Ethernet hub = $74, not $200 www.pricewatch.com
Ansible was talking about an 8-port 100mbit switch, not a hub. A hub and a switch are not the same device. A good switch can sustain a full-duplex 100mbit switched connection between every pair of ports. A hub will give you a total of 100mbit shared between all of the ports. Hubs are rarely full-duplex.
The article gives a summary of Plan 9's features. It seems that is has better networking and sharing of resources and graphics support. It really sounds like UNIX on steroids (that is a weird analogy to make, considering UNIX has been known as DOS on steroids).
But quite frankly, I am speaking out of my ass. I'll look more into the OS sometime later. I have never used it.
So, does anyone who knows about Plan 9 want to give us a link to a comparision between it and GNU/Linux? Or write a brief comparison themselves? *sheepish smile*
Thanks.
The list of architectures has changed; more compilers are included and the list of kernels has changed. There is solid support for Intel x86 multiprocessors. Also, although the sources are available for other architectures, the binaries and libraries are built only for the Intel x86 architectures. Kernel source is available for x86, Mips, DEC Alpha, and Power PC architectures. Compilers also exist for AMD 29000, Motorola MC68000 and MC68020, Intel i960, and SPARC. (Unlike the the last release, no SPARC kernel exists for the current system.) The compilers and related tools have been made easier to port to Unix and Windows.
Does this mean I can compile it on my sparc but would need a previously released Plan 9 kernel?
I've seen UNIX do huge networks with a common filesystem (AFS), common password storage, etc. Using something like SUN-rays one doesn't even require a terminal, just a graphics card, a monitor and a network-card. (Makes thin clients look awfully chubby)
Maybe i'm missing the point but i get a feeling of "been there - done that".
Could someone "in the know" enlighten me, I must be missing something...
Try out fish, the friendly interactive shell.
If we're going to go that route, why don't we use the now-ultra-cheap 80486 series along with hand-coded assembly language programs and have $30 computers?
As with all such monomaniacal fantasies...
Proud member of the Weirdo-American community.
Well, Eros is interface independant, and works form the assumption that "Everything is a Data Structure", and the GNU/HURD is Bizzare and Uber Flexible.
Command Line != UNIX-like
And besides, if you make the assumption that small programs are easier to debug, and that access modes should be uniform, then you tend to converge to something UNIX like as your basic system. Now, if memory or networking become cheap, things change a bit, but the bits that dont change will STAY unix like, because it WORKS, and it is near optimal.
-- Crutcher --
-- Crutcher --
#include <disclaimer.h>
What this means in laymans terms is that if you use Plan 9 ib any sort of business environment, including not for profit corporations, expect to pay bigtime for the honor. Please make checks payable to Lucent. The system wasn't even designed for "recreational use" with it's single protocol to refer to and communicate with processes, programs, and data, including aspects of both the user interface and the network. In this way the system provides a uniform means of access to diverse computing resources, which may be distributed across a network of servers, terminals, and other devices. IMO, this is true and blue developed solely for exploiting the Open Source community and they current open source hype that the press is giving companies that support it. This isn't BSD, and this isn't the next great thing. This is a stripped down *nix environment where you will need to go back to BL and Lucent time after time. Not a great move for BL.
Plan 9's GUI is 8½. 8½ is so great because of it's compact size and simplicity in programming. A complete Hello World program is only 26K:
/* clear */
/* initialize graphics library */ /* initialize event library */
/* wait for release of button */
#include u.h
#include libc.h
#include libg.h
void ereshaped(Rectangle r)
{
Point p;
screen.r = r;
bitblt(&screen, screen.r.min, &screen, r, Zero);
p.x = screen.r.min.x + Dx(screen.r)/2;
p.y = screen.r.min.y + Dy(screen.r)/2;
p = sub(p, div(strsize(font, "hello world"), 2));
string(&screen, p, font, "hello world", S);
}
main(void)
{
Mouse m;
binit(0, 0, 0);
einit(Emouse);
ereshaped(screen.r);
for(;;){
m = emouse();
if(m.buttons & RIGHTB)
break;
if(m.buttons & LEFTB){
string(&screen, m.xy, font, "hello world", S);
do; while(emouse().buttons & LEFTB);
}
}
}