First Program Executed on L4 Port of GNU/HURD
wikinerd writes "The GNU Project was working on a new OS kernel called HURD from 1990, using the GNU Mach microkernel. However, when HURD-Mach was able to run a GUI and a browser, the developers decided to start from scratch and port the project to the high-performance L4 microkernel. As a result development was slowed by years, but now HURD developer Marcus Brinkmann made a historic step and finished the process initialization code, which enabled him to execute the first software on HURD-L4. He says: 'We can now easily explore and develop the system in any way we want. The dinner is prepared!'"
The HURD kernel is often joked about, but I for one does hope that it will eventually become a viable alternative to the Linux kernel. Competition is seldom a bad thing, especially not among free software projects.
.: Max Romantschuk
would it make any sense for Apple to look at L4?
Given the fact that some features in OS X took Apple over 12 years to get into a shipping product (development on Copland started in 89), and given the fact that for years Apple had suffered with a horribly buggy, non standards compliant, limited system that was the Classic Mac OS, and given the fact that Darwin with the Mach kernel is an excellent open source unix system, and given the fact that huge amounts of time and money were spent getting OS 9 and Carbon libraries to run on it, and given the fact that OS X is now arguably the best OS out there and is earning heaps of praise from geeks, luddites, and just about every other type of user, and given the fact that OS X represents the most compelling reason to switch to Apple computers in years, and given the fact that in just a few years the OS has amassed a compartively huge following of developers and applications...
Given all those facts...
Whould it make sense for Apple to now completely rewrite it DOWN TO THE KERNEL LEVEL!!!
I really hope I don't have to answer that.
How fast is GNU/HURD compared to GNU/Linux? How about non-GNU/Linux?
Microkernel systems are always slightly slower because of the message passing overhead but they can be much more secure and stable because all of the device drivers are run in user space. Contrast it with systems such as Windows and Linux where drivers are in kernel space and it is impossible to have a stable or secure system with poor drivers, and in fact most of the problems with Windows and Linux crashing is caused by buggy drivers running in kernel space. When the drivers are just user processes like in HURD then a faulty driver can't crash the system and if it goes berserk it'll just get terminated just like a buggy browser or text editor without affecting the stability of th entire system.
A commercial company might take old code, given it a new name, and shipped it as a brand new thing. But GNU starts a brand-new, hot project based on better microkernel architecture and they use for it a name that people already associate with failure.
The L4Ka-based kernel is a new project that sounds like it has a lot of promise and may address problems that both Linux and commercial kernels have with modularity and extensibility. This new kernel should get a snazzy new name to get that message across.
While there are many "dying" projects out there (remember the "Windows replacements OS" hype?), HURD has always had the most of critique, mainly because it embodied the very promise of a GNU system to many people in its days.
But putting the whole history aside, you could see HURD as an exercise in OS development following the route of the more progressive design theories. You might be able to imagine how this pulls the interest of a small group of developers over a longer time, despite of the fact that development is going slowly.
You know how Free Software has the ability to evolve and persist aside from political influences, well, here is your new schoolbook example.
"We can confirm that Debian does *not* ship the version with the trojan horse. Our version predates it." [CA-2002-28]
Please think it through, Dilbert is right. How can you not support the BSA's actions ?
The BSA is making sure copyrights are respected (i.e. the law). Now the only way we are going to get reasonable copyright laws is when people realize that current terms are unacceptable. If people think that they can get away with copyright infringement they wont put as much effort into voicing their opinion regarding how much they think current laws sucks.
In other words people are now saying: "yes, copyright sucks but it doesn't affect me, I can get all the software/music/videos I want (not need) through [P2P du jour], and I can get away scott-free".
Moreover the BSA supports Linux. Yes it does.
It is when companies and individuals realize how much money their have to give to BSA members like Microsoft, Adobe, Apple and others and what little return they get that they'll take a long hard look at Linux and all the excellent Free applications out there.
There is no need for a vast majority of people to give their money to run Windows or Photoshop. They can get all the software they need and more and stay on the right side of the law.
The GPL, BSD license and the like all use the underlying copyright laws. If copyright laws are not enforced then those licenses are worthless as well.
Dilbert is supporting the BSA and so should you. The worse the BSA treats the consumer, the more strongarmed its tactics are, the more audits it conducts, the better for Free software.
Unless you think you have a right to freely access all the copyrighted works in the world?
Oh, it has lots of advantages, particularly for "kernel" developers and system administrators. For developers, implementing e.g. new file systems is much, much easier than in a monolithic kernel (although FUSE has helped here it still feels kind of like a hack). For sysadmins there is much less privileged code to worry about. (There's lots more but those are the ones that spring to mind).
HAND.
Remember Novell's legal actions against the BSA?
BSA protects the rights of their members, they just protect the rights of some members more than those of other members.
Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
When I read about projects like this I know it is being worked on by guys who are more interesting in writing code than finishing a project. That's great for them, kudos that they have spent over twenty years on the same basic idea, but what about the people who wanted to actually get some work done in that time frame. The hurd is interesting as an example of a micro-kernel - but I got MP3's to rip, video to encode, documents to write, emails to reply to and life to get on with. Let us all know in another 5 years when they have some useful code running on the hurd.
All those moments will be lost in time, like tears in rain.
Although GP has a point, forcing people to pay for software would encourage adoption of cheaper alternatives for now, you are right, this is the real danger: an installed base of DRM. Companies like Microsoft currently charge "monopoly prices", which are "what the market will bare". They aren't so stupid as to charge so much that people are forced to look at alternatives. So when the first "major" round of DRM comes, people will just accept it, rationalising the decision by saying "well, it doesn't cost THAT much more" and "at least we're doing things the legal way". That's 'fine and well', but once DRM-based PCs and OSs become widespread, the fundamental platform has changed, and the 'big cartels' will be able to (and WILL definitely) engage in highly anti-competitive behaviour by using their newfound massive control over the platform to lock out potential new competitors. This isn't tinfoil-hat, it's logical and inevitable and is the current direction things are moving - fast. And people will anyway also be locked in for the same reasons they are already "locked in" today (e.g. "everyone uses MS Word and we need to interchange files"), only it'll be worse.
If we can encourage enough adoption of alternatives, e.g. Linux, hardware manufacturers may still be "forced" to produce non-DRM hardware, but this seems unlikely. Most of the world is already hooked on Microsoft's 'heroin'.
5% overhead for running a system that has all the features in reliability alone has got to be well worth it.
When you think about it, a system running 5% slower than today's system is only one month behind on Moore's curve. (2x performance in 18 months is 5%/month system speed increase). Wait an extra month to buy your next machine and you can have the same performance on a far sounder foundation. (Of course this assumes you're doing your conversion sometime after Hurd L4 actually runs the things you need).
That story has been told I don't know how many times. Multics went under for the same reason HURD never took off. It was aimed too high for the resources available. When it became evident that nothing was going to come out of it in a reasonable time frame, Bell Labs got out of the project and that was why Unix was born. Nearly the same thing happened in the HURD/Linux story, the main difference is that Multics/Unix were commercial projects done by big corporations.
Looking with the benefit of hindsight, I'm willing to predict that HURD may become a viable OS, but it will never be very popular. It has been in existence for so long that it seems unlikely that it will gather momentum now. It may have some advantages, but it doesn't seem to be solving any pressing problem. Its defenders claim it has more stability, security, and flexibility than other systems, but these do not seem to be big problems with either Linux or OSX, so why switch?
Oh, I definitely never intended to imply that the HURD is stupid, not at all.
:-) And they are, from what I can see, treading very new ground, and that's always slow.
I was speaking specifcally about stopping development on the current Linux and starting over, which I think would be very dumb. Usually, rewriting a big software project from the ground up kills it. Mozilla, for instance, ceased to be a viable commercial force because of its rewrite; Microsoft ate it alive. Firefox is doing pretty well now, but no commercial entity could have made that mistake and survived, if selling browsers was its major source of revenue.
There's a huge amount of embecded knowledge on how PC hardware works buried in the Linux code, and rewriting that whole thing from scratch would be a gargantuan project. They've been working on it for, what, 11 years now? A total rewrite would take at least 3 or 4, during which all forward progress would stop. Just not a very good idea.
But I think it's great that the HURD is finally moving, at least a little bit. I will admit, I was a bit shocked that after roughly 15 years, they're just now able to load a program. But, hey, it's not like I needed it done last week or anything.
Reiterating: the more OSes, the better. I just don't think they should start over on Linux itself.
I think his point is that:
1. Yes - if your filesystem code crashes, you could end up with a dirty filesystem.
2. Yes - if your hard drive code crashes, you could end up with a dirty hard drive.
But:
3. No - if your webcam driver crashes, you won't end up with a dirty hard drive.
Right now with linux, if a kernel-level driver of any kind panics, the whole thing goes down the tubes.
Certainly a little compartmentalization can't possibly hurt. It won't fix every problem, but it does prevent a small problem in a non-essential driver from taking down the whole system.
As you point out, it will still be critical for some pieces of code to just work without bugs at all. However, the amount of that code can be reduced in a microkernel design.
Also - I don't think TWAIN is windows-specific. I seem to recall using TWAIN on a Mac many a year ago...
Um, Dilbert is a comic strip. It is meant to be funny and it attacks some areas of interest to a specific niche of readers. If you think you can address other issues in a funny way, by all means write another comic strip!
Now, to pick apart his list of things he says are never addressed in Dilbert...
Is this guy serious? Hello, Elbonia???? He has clearly not read much of the strip.
Oh yeah, those are really funny topics that the average geek encounters on a day-to-day basis.... HELLLO, Dilbert takes place in a cube-farm! There is no union in the average cube-farm environment, and when there is interaction it usually leads to a feeling that I would describe as PRO union-busting.
Again, he must not read the strip. Alice's character is there, I think, to humorously depict a woman's experience in a male bastion. Also, I think that they address planned obsolescence sufficently.
Jeese... again, just not funny material here. Also, not something that most cube-dwellers will run into except in the newspaper.
Man, alive, this is not a "blue-collar" strip. Again, if this guy wants to make a new strip that targets a different audience, he is welcome to. I don't feel that it is a valid criticism to blame a comic strip, or even any other piece of literary or artistic work, for targeting the wrong audience. Try to restrict yourself to commenting on the content provided. Man, he only has three frames a day! I imagine this guy gets his panties in a bunch over Garfield because none of the characters has ever developed feline AIDS.
W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
And many of those packages that you've mentioned are a lot simpler than a *nix-like kernel, and so it's easier to `get your arms around them' and contribute.
Hasn't RMS referred to Linux as the `missing' `GNU kernel'? Around the time of the `lignux' fiasco?
In any event, I see the Hurd as something of an experiment in making a new kernel not because it's needed, but because you can. Linux was in the same boat many years ago, but it became extremely useful pretty quickly. The last I'd heard, the Hurd was reaching the useful stage too, but now that I hear that they've started from scratch, well, I guess it'll be a while.
In any event, had Linux and the *BSDs not come around when they did, we could all very well be singing the praises of the Hurd on Slashdot now, talking about how it's so much better than the OS/2 that had monopolized the PC OS market ...
(OS/2 was a very worthy OS, but it just never really caught on. It seemed appropriate to throw it into my bizarro world ...)
Yes, the BSA is making sure copyrights are respected, and that indirectly helps the open source licenses. But the BSA has been hostile to open source, and the more open source catches on, the more power the BSA loses.
The Dilbert cartoon does make one wonder about Scott Adam's attitudes towards issues of copyrights and freedom, and that is a justifiable reason to criticize him if it is true. That he indirectly and accidentally may or may not have a short-term positive effect on open source licenses doesn't matter.
Erm. Hurd runs all three of those, and has done for a while (X since 1999). Debian/Hurd has about half of the packages that are in plain Debian.
But then I should have expected a cheap uninformed jibe like that on Slashdot.
That's being foolish. There's plenty of "experimental" OSes around, many of them Free Software, like EROS; that isn't what the HURD should be doing. It shouldn't be this neat system where development breaks away completely from what programmers are used to writing, therefore guaranteeing that porting of applications will be a tedious, and ultimately fruitless, process.
What the HURD developers should be doing is (risking the wrath of the community) be less revolutionary, and get something going. The team spent God-knows-how-long stumped on that file system mmap() problem, which barred disks larger than 2GB from being mounted. If one runs across this kind of barrier during the development of a system, one should just drop the feature and use something else which is known to work, and leave that feature for version 2.0 or something.
Of course, if the software is too little revolutionary, it won't make any sense to use it: The L4 developers already have a Linux 2.6.10 running on top of their microkernel... There ought to be some kind of compromise, basically dropping features when the milestones keep getting pushed back.
Then again, the Hurd might have been just a victim of the Cathedral method it (used to) be developed with...
He's saying that he wants drivers that don't crash, but microkernels that allow crashing drivers to "just be restarted" lead to a permissive atmosphere, in which driver writers don't care if their drivers crash or not.
His contention is that in a situation where a crashing driver kills everything, driver writers are much more careful, and crashing drivers are not accepted by users.
A big difference between linux and hurd is that Linus set out to hack something together that would work, based on tried and tested technologies - (ie a monolithic kernel).
The hurd developers on the other hand set out to create something that is better than anything that has ever been developed before.
When you consider that, it is not hard understand why linux is one of the more popular mainstream kernels out there, whereas hurd still isn't ready for serious use.