GNU/Hurd Delayed To Fix Disk Size, Serial I/O Limitations 572
gregger writes "This Infoworld article indicates that the GNU/Hurd is still waiting to stampede. Evidently they have to switch from the GNU Mach implementation they're using now to OSKit's Mach which will help them support faster serial I/O and larger hard discs. Currently GNU/Hurd will only support somewhere between 1 to 2 GB partitions."
Hurd delayed? (Score:5, Funny)
Delayed??? (Score:2)
Re:Delayed??? (Score:2)
And after "20 years," they switch to someone elses' microkernel...
Re:Delayed??? (Score:5, Interesting)
Re:Delayed??? (Score:5, Insightful)
Re:Delayed??? (Score:3, Interesting)
I have to think that the Hurd is a case of following the fashion rather than evaluating the microkernel technology on its merits.
There are lots of folk out there who will blather on at great length about the merits of kernel design for absolutely no other reason than they think it makes them look clever.
I have not done anything at the O/S level since writing one ten years ago (unless you count the Web as an O/S). At that time Mach was flavor of the month because OSF and Next had used it as the basis of their operating system and Cutler had used a lot of the concepts of Mach to design his follow on operating system to VMS. Then Rashid joined Cutler at Microsoft in a very high profile move.
So yes microkernels were flavor of the month ten years ago. However the reason why they were flavor of the month had more to do with the politics and problems at the time.
OSF was trying to build a kernel quickly to compete with System V. Microsoft was building Windows NT to get to market as fast as possible. Microkernels were touted as the equivalent of RISC in CPUs, a design that allowed for shorter development time and hence faster to market.
Microsoft had another issue, they wanted to be able to emulate other O/S. In particular Posix so they could sell in the federal market. They also wanted to be able to migrate VMS to run on WNT at a later date as a subsystem. This is actually in the works now and will take place when HP transitions from Alpha to Itanium on the high end server line. One of the reasons Microsoft was keen to do this is that Cutler and his principal staff had left Dec after Dec cancelled the Prism project, Cutler's objective stated at the time was to make Dec have to pay for the O/S they could have had for free. At the time Dec was bigger than Microsoft.
There are advantages to microkernels, but the NT design has not been pure microkernel for some time. In order to get acceptable performance on early hardware they had to allow the display drivers to run in kernel mode.
The problem that I think will prevent HURD ever working is that to build a real O/S you have to really understand the reasons behind the principles you follow and break them when necessary. RMS is unfortunately a prisoner of many dogmatic beliefs which once fixed he simply will not abandon regardless of the evidence.
Linus may or may not have known what he was doing when he had the argument with Andy Tannenbaum, but he made the right decision. Andy has written a lot of good books that are widely used as text books, I don't know if people like Cutler, Rashid, Hoare and Co would rate him as being in the front rank. It is the same situation in most fields, everyone has heard of Bruce Schneier, fewer have heard of Ron Rivest and only people in the field tend to know names like Paul Kocher (SSL 3.0, the one that works), Butler Lampson (ACLS, lotsa stuff), Clark (end to end principle), Bellovin (firewalls), Schiller (IETF Security Area director).
Oftopic: Mark Goldston, CEO of United Online (Juno/blue light) is a clueless dweeb, he just tried to tell Mark Haynes on CNBC that cable modem router boxes are not a threat to his business as few people can afford them... Not only are WiFi cable routers $100 at frys they will be built into the cable modems soon. So either he is uninformed (unlikely) or another lying CEO.
cool! (Score:5, Funny)
Re:cool! (Score:5, Insightful)
This isn't the right way to measure the "goodness" of a system. The Hurd has concepts that are actually innovative.
If you're going to say that the Hurd sucks because it doesn't support some piece of hardware or software, then *damn*, Linux really sucks... and it did even more so at version 0.2. Gee, what am I doing... where's a Windows box? Win 98 must obviously be superior to all these Free/Open Source systems, with all the hardware and software it supports.
Re:cool! (Score:3, Funny)
wait for it..
*B*F*I* the BEARD FULLNESS INDEX
Let's compare the major players in our discussion:
HURD - Richard Stallman has a rich full beard. So.. BFI_stallman = BFI_hurd = 10
WINDOWS - ever seen a picture of that Paul Allen dude when he was younger? BEARD! What about Bill Gates? Well, he always looked like a faggot or an old ugly woman, no facial hair. So...
BFI_allen = 7,
BFI_gates = -1, and therefore it follows that
BFI_windows = (7 - 1)/2 = 3.
LINUX - Linus is beardless (but nowhere near as faggly as Gates)
BFI_torvalds = 0,
BFI_cox = 5.6, and therefore,
BFI_linux = 2.8
Now, clearly, beards indicate intellectuals who want to hide their faces from society. everybody knows that. that's why all professors have them.
So it logically follows that the LOWEST BFI will yield the most POPULAR and USABLE operating system. To recap our examples:
BFI_hurd = 10
BFI_windows = 3
BFI_linux = 2.8
Therefore, clearly the winner is Linux, with WIndows a close second. Unfortunately, Stallman pushes the HURD's BFI off the chart and out of the public eye. Sorry, Dicky!
Will they have to change the name? (Score:4, Funny)
Re:Will they have to change the name? (Score:5, Informative)
Actually, when distinguishing between implementations of the Hurd on different microkernels, we ususally say Hurd/Mach versus Hurd/L4. This is consistent with GNU/Linux and GNU/Hurd, ie. HigherLayer/LowerLayer.
OSKit-Mach is just a superior implementation of Mach, so we'd still call it Hurd/Mach if we needed to make a distinction.
Real improvements to the Hurd will come with the eventual port to the microkernel [l4ka.org] which is much superior to Mach (and the answer to current anti-microkernel FUD).
Re:Will they have to change the name? (Score:4, Funny)
whoops (Score:5, Interesting)
The release of a production version of the free GNU operating system (OS) has been delayed beyond the end of the year, as the current development version of the system does not support large disk partitions and high speed serial I/O (input-output), according to Richard Stallman
is it just me, or does it sound like they had it all ready to ship, date planned and everything, and then someone pointed out that it was lacking some major I/O features/performance, and the developers collectively slapped their foreheads and went "oh shit, yeah, we kinda forgot about that one."
like, all this took them by surprise? sucks to forget to implement a couple crucial features, eh?
Is this really a surprise anyway? (Score:5, Funny)
Re:whoops (Score:3, Insightful)
This has nothing to do with the Hurd, and everything to do with the microkernel it's sitting on. At present, that microkernel is obsolete and slow.
19 years (Score:5, Funny)
Finally the world will have a politically correct OS that works just like other Unices have for decades.
Re:19 years (Score:3, Informative)
That's not entirely fair. A lot of Linux-based OSes contain very healthy doses of GNU software and are compiled with GCC, one of the first major contributions of GNU.
The kernel was one of the last things they tackled, but along came Linus Torvalds and now many OS kernel developers would rather work on Linux than the Hurd.
Thank god they're fixing partition size (Score:5, Interesting)
Re:Thank god they're fixing partition size (Score:4, Funny)
Currently, the HURD doesn't support benchmarking software. But they hope to add that functionality within the next few years, if that answers your question.
Re:Thank god they're fixing partition size (Score:3, Insightful)
Currently, the HURD doesn't support benchmarking software
Oh man! I take back every bad thing I ever said about RMS and friends. Anyone who can disable benchmarking software deserves not only a McArthur grant, but international acclaim and recognition at every level. Why... oh... OK. Go ahead. Give him his Free Software tax. He deserves it. I'll be there to applaud him at the ribbon-cutting ceremony for the Bureau Of Software Development in Washington DC. Imagine! At last. No more benchmarks. This is a red letter day indeed.
Re:Thank god they're fixing partition size (Score:3, Informative)
As for benchmarks, I think the answer is "don't ask".
Re:Thank god they're fixing partition size (Score:4, Funny)
Hmmm. That is a very elegant way to handle disk partitions. Maybe they shouldn't rush into a quick fix for this that loses the benefits of mmaping the whole partition. In a few short years, AMD, Intel and IBM will all be offering mainstream 64-bit CPUs, and they'll be able to mmap exabyte sized partitions without throwing out the current codebase.
I think that they should just hold tight until then. No need for reckless haste.
Re:Thank god they're fixing partition size (Score:3, Interesting)
Re:Thank god they're fixing partition size (Score:3, Funny)
The project has been underfunded
They must have just got their first 10 GB hard disk in the P100.
Re:Thank god they're fixing partition size (Score:5, Informative)
It's a really hard problem to fix.
The ext2fs implementation is actually a userland process which takes a partition as an argument and attaches a translator to the mountpoint. The translator's job is to send requests under this namespace to this server.
The ext2fs server actually mmap()s the partition containing the filesystem and performs all operations as if it were a contiguous block of memory. Unfortunately the ext2fs driver, since it's a userland process, can only address 2GB of memory (the kernel often takes half). Adding a heap and a stack leaves mmap() with about 1GB to safely play with.
Eliminating this limitation would mean using either a 64-bit architecture, or using a read/write/lseek interface instead of mmap, which may mean totally throwing out the ext2fs server as-is. Perhaps they weren't concerned with the limitation because they thought everyone would be using 64-bit architectures by now?
I'm not sure if there are any other reasons other than the filesystem servers using mmap() for the limitation.
Re:Thank god they're fixing partition size (Score:5, Interesting)
This is completely nuts.
I can appreciate that the filesystem driver is a userland process - this means I can write a "filesystem" as a normal userland process (eg, make some things have a filesystem-like interface, so you can do interesting things with databases like make /etc/passwd a directory). This is a cool idea.
However, using mmaping an entire partition is just crazy. This is poor design. What were they thinking?
Are they trying to avoid the system call overhead for seek() calls? This is the only reason I can think of that someone would do this - when you read/write/seek, you have to do a system call for seek(), but that comes "for free" when you mmap() because you specify the address. This would only be a problem with HURD-like systems, because there is no overhead if the filesystem driver runs in kernel space along with whatever other subsystems it needs to use.
I know everyone hates backseat designers, but I'd like to know if the following approach has been considered:
Make two new system calls, say "readaddr" and "writeaddr". These work like read and write, except that you also specify an offset (perhaps with a "whence" field like lseek). This saves you the overhead of calling seek all the time by combining the operations into one system call. This might be useful for other things as well, but I would imagine a filesystem driver is one speed-critical piece of code that does a lot of jumping around. Actually, I just remembered that there already are calls for this: pread/pwrite.
Another possible approach: using mmap is nice, but mapping in an entire partition is fubar. Why not map in specific parts of the partition as they become needed? Eg, keep superblock mapped right away from startup, and map in other parts as they are needed. Seems a bit complex, but could be done more easily with another layer of abstraction (some library which keeps a hash or something of mmap()ed bits and provides a nice interface for filesystem drivers). I'm guessing mmap was used as this transfers certain operations (eg, cache management) "deeper" into the "kernel" and avoids code duplication.
But anyway, mmaping an entire partition is really nuts. They're not getting any sympathy from me.
Re:Thank god they're fixing partition size (Score:5, Informative)
And this kind of cache management is horribly hard in a monolithic kernel for a start. Look how long 2.4 took before the VM behaviour was considered decent (2.4.16 iirc). A decently fast distributed one is even worse to design.
OG.
Re:Thank god they're fixing partition size (Score:5, Insightful)
Does anyone here know why they let the partition size issue languish for so long?
The partition size is limited because the Hurd maps the entire disk partition into main memory, and the 32-bit architecture of current Intel processors limits the size of a virtual address space to 2^32 bytes, hence the limitation. Changing the Hurd to do things differently isn't exactly a one-weekend patch.
On another note, once we go the 64-bit processors, we'll see a much larger virtual address space (double it's current size 32 times), and hence a much higher cap on the partition size (assuming no fix).
On another note, does anyone know how HURD benchmarks against linux?
This really isn't the right question to ask: remember that the Hurd is at version 0.2, and that "Premature optimization is the root of all evil." No new Free/Open Source kernel is going to ship and be immediately as fast and full-featured as Linux... things just don't work that way.
What's important is that the Hurd represents new OS technology... and that's more important that any current lack of performance or drivers.
Re:Thank god they're fixing partition size (Score:5, Funny)
Hint: "man logrotate"
Systems work (Score:5, Insightful)
That being said, I think the Hurd is pretty much a solution in search of a problem. Who cares? And why? The FreeBSD kernel does everything Hurd purports to want to be able to do, and is more mature, stable, and feature-complete. The same could probably be said of the Linux kernel.
Does that mean the Hurd guys should stop what they're doing? Of course not. Writing operating systems is fun.
It does, however, probably mean that the stuff they're doing isn't really news.
Relevance (Score:2, Funny)
Re:Systems work (Score:4, Insightful)
And I agree that 20 years ago, "wouldn't it be nice if there was a free operating system" seemed like such a cause. But ever since BSDi settled the unix issues, it seems to me that BSD [footnote 1] became that free operating system.
-pete
footnote 1: Substitute Linux depending on your political preferences. Void where prohibited by law. Call before midnight tonight for complete refund of price of purchase. Terms available, don't be fooled by cheap imitations, no salesman will visit your home. My apologies to Tom Waits.
Ironic (Score:3, Insightful)
Nonstandard Partitioning? (Score:3, Insightful)
What kind of systems are they using for development that they just noticed the inability to read current large partitioning schemes and interact with them? This dosen't do much to encourage me to try HURD and hope it will support much of my newfangled hardware.
What is HURD? (Score:5, Informative)
http://www.gnu.org/software/hurd/hurd.html
GNU HURD is a slimmer re-write of the UNIX kernel that is completely OOP.
Here's a cut and paste from the homepage:
The Hurd is not the most advanced kernel known to the planet (yet), but it does have a number of enticing features:
it's free software
Anybody can use, modify, and redistribute it under the terms of the GNU General Public License (GPL).
it's compatible
The Hurd provides a familiar programming and user environment. For all intents and purposes, the Hurd is a modern Unix-like kernel. The Hurd uses the GNU C Library, whose development closely tracks standards such as ANSI/ISO, BSD, POSIX, Single Unix, SVID, and X/Open.
it's built to survive
Unlike other popular kernel software, the Hurd has an object-oriented structure that allows it to evolve without compromising its design. This structure will help the Hurd undergo major redesign and modifications without having to be entirely rewritten.
it's scalable
The Hurd implementation is aggressively multithreaded so that it runs efficiently on both single processors and symmetric multiprocessors. The Hurd interfaces are designed to allow transparent network clusters (collectives), although this feature has not yet been implemented.
it's extensible
The Hurd is an attractive platform for learning how to become a kernel hacker or for implementing new ideas in kernel technology. Every part of the system is designed to be modified and extended.
it's stable
It is possible to develop and test new Hurd kernel components without rebooting the machine (not even accidentally). Running your own kernel components doesn't interfere with other users, and so no special system privileges are required. The mechanism for kernel extensions is secure by design: it is impossible to impose your changes upon other users unless they authorize them or you are the system administrator.
it exists
The Hurd is real software that works Right Now. It is not a research project or a proposal. You don't have to wait at all before you can start using and developing it.
well, duh (Score:3, Insightful)
Unlike other popular kernel software, the Hurd has an object-oriented structure that allows it to evolve without compromising its design. This structure will help the Hurd undergo major redesign and modifications without having to be entirely rewritten.
And you guys are wondering why it's taken 19 years???
Re:What is HURD? (Score:5, Funny)
This structure will help the Hurd undergo major redesign and modifications without having to be entirely rewritten.
"...but we might change out the whole kernel from time to time when things aren't looking so good."
Re:Just more Vaporware? (Score:5, Funny)
Given all the comments I've been reading it's seems to me like this is nothing more than Vaporware.
Maybe not. But right now it's clearly meant to be Hurd and not seen. ;-)
Coincidence? (Score:4, Funny)
When does later become never?
Coincidence or a subtle jab at RMS?
Bundled Software! (Score:5, Funny)
Available real soon now
Can't wait to see how the GPL shall be affected by (Score:2)
I guess just emailing the diffs back to the source would not be sufficient. You would be required to set up and maintain a web server to serve any code you modify.
Some sort of FSF database at which you could register the fact that you've tweaked something, and the nature of those tweaks, might help to add some value to this requirement.
OTOH, BeelzeBill will welcome anything that might blunt the Open Source onslaught, I would think. Who was that with the Law of Unintended Consequences?
Why OSKit? (Score:3, Insightful)
Now if they were switching to L4, that would be cool. But it would be a research effort.
And why does anyone, at this late date, care much about high-speed serial line support?
Re:Why OSKit? (Score:4, Informative)
That port is fairly extensive, so right now they're moving to Mach + OSKit, since OSKit supports the Linux 2.2 device drivers, something Hurd is sorely lacking.
So, Linus was rfight? (Score:5, Interesting)
Re:So, Linus was rfight? (Score:3, Insightful)
Linus was right at the time, yes. If he were starting Linux today, however, none of those three points would be correct. They're not experimental any more (WinNT before version 4.0, QNX and BeOS are/were all mainstream microkernel OSes), they do not execute notably slower than monolithic kernels (yeah, the Mindcraft survey was rigged, but Linux and NT are still competitive) and (apart from NT) they are no more complex than Linux is today.
On the other hand, "I know I can do it and get it working" would still be a valid argument for him to write a monolithic kernel today, but that's open source for you.
Re:So, Linus was rfight? (Score:4, Funny)
depend on what you mean by "right" (Score:3, Insightful)
The Linux kernel is running out of steam--the software development is becoming more and more unmanageable (see the BitKeeper debates), and drivers and new functionality often take years to appear in stable, up-to-date form in the kernel.
Those are the kinds of problems microkernels were supposed to address. I have no idea whether the GNU/Hurd does or does not address them, and even if it does, it is 15 year old technology. But I do know that Linux isn't addressing them right now, and that's a problem.
I suspect that what will actually happen is that in a couple of years, there will be a severely hacked Linux kernel fork that keeps driver and file system compatibility at the source level for a while but otherwise goes its own way.
Re:depend on what you mean by "right" (Score:4, Interesting)
But sadly, my impression of what the Hurd has shown, is that just because something is userspace doesn't mean its easy to debug. It seems like code accessibility -- even for original developers -- has not been very good. I think it's in the same way that threaded programming is much harder to debug... a complex set of interworking services is even worse.
And while microkernels allow a certain level of modularity, it really should be possible to achieve a great deal of modularity in a monolithic kernel as well -- just not in as safe a manner. I don't know that safety is the difficult part of Linux development. Well... I'm not entirely clear on what is the difficult part, I've never tried to program on the kernel. Probably an issue of factoring -- when refactoring needs to occur across module boundries (for whatever reason) it requires different developers to communicate and agree on things (which is where the overload is occuring). But that same problem will exist in a microkernel -- only the refactoring will be occuring between processes. That's not a big difference.
Maybe with enough thoughtfulness you can refactor everything in the Right Way, so that interfaces are entirely stable and development can occur without as much interdependence. That's not impossible -- there's a lot of experience from Linux and elsewhere to learn from. But I don't think that is related to monolithic or microkernel design.
Re:So, Linus was rfight? (Score:5, Informative)
Look at QNX and L4 as examples of fast microkernels. About all the kernel does is manage memory, interprocess communication, and task switching. Everything else is in user space, where it's easier to debug and can't mess up as much when it breaks.
In addition, if you're serious about security, a system where only the microkernel is trusted is the only thing that has any hope of working. In a microkernel system, the kernel tends not to change much over time, once it's working. New functionality is all in user space. You're not patching holes forever, like we are now.
You do take a performance hit, but in a world where Java, Perl, and XML are used for production work, it's tiny by comparison.
Thoughts of the future? (Score:4, Insightful)
Kudos to RMS for fighting the good fight, but he's already contributed significantly to Linux. I really don't think it'll go farther than that.
Delayed? (Score:5, Funny)
I want a new slashdot poll:
Which long awaited project will be the first to become reality?
a) Duke Nukem Forever
b) SMP for OpenBSD
c) GNU/Hurd
d) The second coming of Jeebus
Re:Delayed? (Score:3, Funny)
The last option has to be:
d) The second coming of Cowboy Neal.
Re:Delayed? (Score:4, Funny)
Re:Delayed? (Score:3, Funny)
And that's coming from an athiest.
more than a nuisance (Score:3, Insightful)
if you get a moderate size disk you have to divide it into smaller partitions, which is a nuisance.
I'm sorry, but I have an 80gig drive. If I need between 40 to 80 partitions (between 1 and 2 gigs each), it's not just a nuisance.
Linus was right (Score:3, Troll)
By the time these guys switch to the new kernel, test all modules, etc., etc. they will have to update it again for new speed improvements and HD sizes.
Linus was right that Microkernels tend to be overdesigned, give up speed, and are less practical than monolithic. This is the living proof.
Why look at that example? (Score:3, Insightful)
Don't make such wide-ranging judgements based off of one case. You're counting your chickens before they are hatched.
I guess this makes sense (Score:5, Funny)
Experimental is good. (Score:4, Insightful)
The dark side.. er. half.. um portion of penguins. (Score:5, Insightful)
No one should have to justify what they want to build to you or anyone. Free software is not about the GPL. It's about freedoms. If these people want to build the most paradigmatically pure kernel ever conceived of, I think that's great.
If they want to turn an architecturally useful chunk of marble into a useless statue of some kid named David. That's great too.
When I enter a bunch of keywords into freshmeat and pick over the results, I occasionally ask myself, "What was this guy thinking?" Others with that same list ask that same question, but about different projects. It's the fact that we are free to combine conceptual purity, modifiability, stability, speed, and dozens of other engineering trade-offs in exactly the manner that we think is "right" that makes picking through Freshmeat like picking through a box of Dark Chocolates.
Oddly, the same rule applies. If you don't like a particular chocolate, don't eat it; don't whine about it; just pick a different one
I wish Mr. Stallman the fewest alpha particles and the best of luck in his noble pursuit.
In 1985... (Score:5, Informative)
God bless HURD for trying to advance the state of the art and improve upon the dated UNIX model, but sheesh! I wish HURD were ready for prime time. I really do. But a working model with caveats (Linux, OSX, *BSD) will always be better than a better model that's mostly theoretical in the real world.
That said, no one's paying the HURD developers. If it gos their nads, have at it. RMS needs to relax and realize that it is little more than a research experiment and not the second coming.
If you can't say something nice... (Score:5, Funny)
None of you so called geeks get it. (Score:5, Insightful)
HURD is not the operating system choice of "hackers" or slashdotters. Hackers want to run computer applications (reliably and speedily). That is not what HURD is about. Its the utopian platform for computer science geeks; people who want to go beyond the current paradigm of UNIX, classic sequential computing, etc. . By abstracting the ukernel to a couple of critical operations (time slicing, memory allocation, and IPC), and moving every other operation to user mode, you have a tool that can be used to implement new concepts in computer operating systems.
Its not an alternative to Linux. Its an orange to Linux's apple. It will suck as an alternative to Linux. It will run slower than Linux (especially if they stick with Mach). It will not run more stablely than Linux (given its increased complexity). It may be a better platform for multiple CPU configurations, be we won't know that for sure until its ukernel design is complete, and an implementation of HURD actually proves it to be faster. Very few people will want to port useful packages to HURD; they'll go to Linux for reliability and performance. HURD's purpose is not a platform to run applications. Its a platform for computer science research.
That is the reason why I do not wish death on HURD and rejoice when there is good news for it. It does not really compete with Linux for mindshare. If it proves to be a superior platform for MP processing, only then will it have a mundane use.
I have massive contempt for its project management. Its currently looking like the OS that will never get released. And it does not deserve a serious look until it gets a quality ukernel, like L4 (which itself is unfinished). MACH will not cut it, or its UKS(?) version.
OpenBEOS (Score:3, Funny)
Glad you noticed!!! (Score:3, Interesting)
Regardless of any negativity being expressed here towards the efforts of the Hurd Developers or the goal, this is a project that needs to be done.
I have no doubt that had Linux not come along, there would have been more man power and efforts put into the Hurd these past years.
Of course Linux was a distraction for many, yet it was also NOT a distructive distraction. Alot of GNU and GPL software has been developed and put into use. Enough So that, as we all know, MS has taken notice and has even launched a competitive campagin against not just Open Sourse, Linux and GNU, but with a focus on the GPL.
What software there has been made to run on Linux, can and probably already has been ported to run on the Hurd....(except for a few packages that just don't make sence to port as they deal with monolithic kernel issuse that don't exist in the Hurd). The count of software packages ported is in the thousands.
Even the drivers written for Linux are usable on the Hurd.
All of that porting and compatability was/is alot of work for which the Hurd Development team has done. So there has been energies going into alot more than just the hurd core.
Perhaps the really good part of all this is that MS probably doesn't have a clue as to what to expect of developer who will develop applications for the Hurd, to take advantage of the hurd. And it should be understood that the hurd opens the door up a lot more for development innovations.
So what will you have when the Hurd is officially publicly released... production version...??
You will have what appears to be no or very little different than using Linux. On the surface. But under the hood.... It's a more versatile, stable and in sum of.... overall more powerful in ability to bring about advancements.
There are quite a few other OS's being developed today, under the open source idea. And there is nothing about the Hurd that says you cannot attach a personal choice smart user space interface OS to the Hurd. Integrating it to benefit from the security of the Hurd, the GNU number crunching software already written, etc... thru the IPC of the Hurd....
I like the idea of plugging my personal Smart Interface OS into a hurd system for such benefits. A 3" CD, a smart card, or some yet to be developed re-writable device I can take with me.
Re:Glad you noticed!!! (Score:3, Insightful)
Really, this is getting to be too much.....after over a decade of floundering around, the FSF has yet to produce anything even remotely useful as a production operating system kernel. Linus and the people who worked on Linux did that in 7 - 8 years.
It's great what the FSF has done, to give the world a compiler to produce free software, and the tools and utilities to make Linux and other OS's a finished OS. And even the Hurd as a computer science experimental kernel to play with new ideas.
But it is ridiculous to say that Linux has distracted from the Hurd effort....the Hurd simply is not about designing a useful kernel.....it is a playground for ideas in OS architecture, and it will be many more years of flounder/play/redesign before it is known what ideas in there will even be useful for a production kernel,
RMS (Score:5, Interesting)
At some point you have to decide if you are going to go along with the pithy flames or do real research. It's not popular, but it reveals the truth. If not, go to the next comment, this isn't for you.
From a proctical standpoint, I understand the "Linux" side of the argument. However, people make that argument with statemnt like... "Don't do drugs, you'll end up like the Hurd peopl" - LT. RMS makes his argument respectfully on the GNU website and encourages people to use GNU/Linux. On the GNU site, he says the easiest and best way to start using free software is to go get a GNU/Linux distro. Personally, I respect people who make their arguments with facts instead of one-liners. If you buy things because they sound like a good quick answer, then you start going for things like "trusted computing".
Finally, since this is a discussion of the HURD kernel: I think people should find this interesting. The GNU tools we are already familiar with are going to get a microkernel. Merit arguments aside, there are a lot of people who choose/like microkernels (apple, *BSD). Also, it's a kernel project that offers a ton of work to be done. After all, 1GB partitions is a sign that there is a long way to go. Entry level kernel hacking on a system that has a LONG way to go is easier than "even though you've never kernel hacked, figure out how to save a few cycles with this kernel module that has been working for five years". Also, keep in mind, the HURD has one major advantage over the Linux kernel. There is not a one man bottle neck.
Personally, I like the linux kernel and use several Gentoo systems, and some OpenBSD. But I always welcome another choice in software and look forward to seeing the HURD in a more usable state.
There is a fine line between picking your battles and cowardice
Re:GNU/Hurd (Score:5, Funny)
-RMS
Re:GNU/Hurd (Score:3, Informative)
Linux has nothing to do with Gnu. If you wanted to, you could make an OS using the Linux kernel & the BSD tools.
So, it's now the distros (e.g. RedHat) that are supposed to start throwing GNU in there. Of course, that would cause some user confusion when they go searching for this "GNU Linux" kernel.
Where does it end? What percentage of an OS's software has to come from a certain source that it must be included in all titles? Shall we call it RedHat Linux/GNU/XFree86/KDE ? Hey, the Gnu tools are replacable... XFree86 doesn't have any real competition, and so it more important than GNU.
What's that you say? rms is just a vain blowhard that will suck up publicity where ever he can get some? I'm sure he would disagree with that completely, and then go and complain about bitkeeper some more.
Man am I glad BSDs are better. In fact, rms thinks so too. Why else would he run FreeBSD on his server?
Re:GNU/Hurd (Score:4, Informative)
And whether or not one uses the GNU C compiler is irrelevant. Code compiled with GCC is not part of the GNU project, nor it is required to be licensed with the GNU license. If you prefer, though, you can use Intel's C compiler, or Metrowerks's, or whichever compiler will work with your target architecture.
And you're mistaken about one more thing. The reason people drop the "GNU/" part of the name "GNU/Linux" is because "Linux," as has been pointed out again and again here by a persistent AC, is a registered trademark. Calling anything "GNU/Linux" without Linus Torvald's permission is infringement, and it's illegal. The name of the operating system is "Linux," and unless Torvalds says otherwise, that's the end of that.
Re:GNU/Hurd (Score:5, Informative)
So Torvalds, who has exclusive control over the name "Linux," as used to describe computer operating system software, initially granted permission for the use of the name "GNU/Linux," but he and Stallman had different ideas of how that variation on the "Linux" trademark was to be used. In this interview, Torvalds makes it clear that he does not approve of the use of the mark "GNU/Linux" to describe "'every' Linux system." Consequently, the name "GNU/Linux" is an infringement on Torvalds's trademark.
If you want to call the operating system "Foonix," you're free to do so. You can call it whatever you want-- to the extent that you don't violate anybody's copyright. But you can't dilute or otherwise distort the trademark "Linux" without permission, which Torvalds explicitly denied in that interview.
Thanks for pointing out that article. It makes the issue even more crystal-clear to me.
Re:GNU/Hurd (Score:4, Interesting)
So, replacement for gcc, replacement for libc(bsd/other libc's mentioned), replacement for all other standard unix utilities.
As a side note several other OS projects use the GNU compiler to create their binaries. Should the be called GNU/Projects as well, even though they use few if any other GNU components? And I thought GNU and the FSF was about freedom....
Re:GNU/Hurd (Score:2, Insightful)
GNU/Linux
and
GNU/Hurd
Thing that bugs me about this is that the pace of hardware technology obsolescence is such that if it takes more than 2 months to develop a new OS, you can't go out and buy new (as opposed to second hand) hardware to run it on... because all the new hardware thats available is incompatible with what you were developing for.
I reckon PC hardware should follow the model of Soviet military technology, which is to say;
Refine existing technologies, don't introduce new, untested, technologies every freakin month!!!
Re:GNU/Hurd (Score:5, Funny)
when it (frequently) broke down, we had to call an ibm machinist to come open the case for us and oil the flywheel or unjam the transverse flying arm on the card-feeder. as you can imagine, this seemed hardly the ideal solution, because usually all it needed was a little bit of work that me and rich could easily perform (even through we were not trained calculating machine operators).
long story short, we starting working on the GNU/hurd tabulator. the centerpiece to our system was the pipelined card loader, which could load the next punchcard while the calculating engine was stilll churning on the previous card. we had also designed the system so that you could have dual loading mechanisms, so that one would always be running if the other jammed. rich always insisted that we should publish the blueprints for our machine, so that other people in our tabulation club could also build similar machines, and help us with the design. to me the whole idea sounded a bit bolshevik, but richard seemed intent to follow through with it, and i didn't mind so much. honestly, i didn't believe he would ever be able to publish anything, given that his handwriting was quite terrible (although he was working on a new type of typewriter, the electro-macs so that he would be somewhat more legible).
5 years later, when i was conscripted to join the great war in europe, we had a nearly complete tabulator in hand. we had solved nearly all the problems of page clipping and bending that were present in our earlier builds, and our machine could run at a rate of well over 70 cards per minute (compared to the ibm's 42). however, we never completed the loader fully, and the latest model i saw could only hold 3 cards on the loading queue, making it much less than useful (however promising).
i've lost contact with rich during the war years. i had always assumed he's been killed in action. anyway, i'm glad to see he's still going strong with our GNU/hurd tabulator, and wish him well on it. hopefully it will be done before my great grandkids graduate college.
Re:GNU/Hurd (Score:3, Funny)
You forgot to add that you were both wearing onions on your belts, which was the fashion at the time.
Re:Umm, okay... (Score:3, Insightful)
No wonder I don't use Hurd.
I think the Hurd is a nice, interesting CS project, but there isn't enough of a pragmatic influence amongst its developers ranks to make it actually useful to anyone.
Relevancy: (Score:5, Funny)
Mad hoes.
Yes. You see, the GNU HURD project is just a front. These guys are just looking for a little lovin'. I, for one, will be downloading and running HURD 1.0 as soon as it's released, to support the libidos of these great, visionary men.
- A.P.
Re:Tha HURD (Score:2, Interesting)
My $0.02 (-$12.02 after depreciation).
Re:Tha HURD (Score:5, Informative)
Stability (Score:3, Funny)
What GNU/Mach/OSKit/HURD will be is a unix-like OS with all the famed stability of NT. I can hardly wait. It'll probably ship real soon now, just like they've been promising for the last 20 years.
Note to RMS - if you don't put Mach in the name, you're denying them their due credit. Seriously. I refuse to type GNU/Linux ever again until I see Mach/HURD on every FSF website.
Re:The Hurd (Score:5, Insightful)
Bang on the money.
If I might add to what you've pointed out, RMS has explained [gnu.org] that the motivation for continuing development of the Hurd is that it has the potential to be something much more powerful.
Which leads to what really bothers me about the Slashdot crowd's reaction to the Hurd. Lot's of people I know criticize Free/Open Source Software just rips stuff off, and doesn't innovate. Well, the Hurd is one of the most innovative Free Software projects around. These guys were talking about buiding a multi-server OS back at the beginning of the 90s.
Come on, once the Hurd is finished, GNU/Hurd will be years ahead of GNU/Linux, Windows NT, or Mac OSX. The only other OS I know of that's as theoretically-advanced as GNU/Hurd is QNX [qnx.com] another multi-server.
This is cool stuff. Unfortunately, it seems that most people just want to complain, "Oh, does it have the drivers for XXXXX? No. Then it's useless." Grow up - the value of an operating system isn't defined by what hardware it runs on. That's much easier to change than the fundamental architecture of the system.
Re:The Hurd (Score:4, Funny)
And all of those operating systems will be years ahead of themselves....
Re:The Hurd (Score:5, Insightful)
People can use GNU/Linux. You don't use the kernel (as an end-user), you use your applications.
I think we've got a best-of-both worlds situation here: in the meantime, we've got a very good monolithic kernel (Linux), and we've got a nice multi-server in the works (Hurd), for when the time comes when monolithic kernels just can't cut it anymore.
And regarding your statement, "It doesn't matter if you are theorectially advanced.", that's a load of BS. If no one is innovating, technology stagnates. What we're seeing here is the price of innovation. And if Free/Open Source isn't willing to do this, then we'll deserve the criticism that we're just ripping off proprietary software.
Re:The Hurd (Score:3, Interesting)
The thing is, though, that they're still talking about it, and haven't been able to actually do anything with it.
Haven't been able to do anything with it? Buddy, I've got a GNU/Hurd box running at my university. It's not vapourware. And it's rapidly making progress.
don't expect me to get all hot and bothered because the design is different in some exciting but arcane way.
I don't call microkernel architecture "arcane." I'm not satisfied with the long-term potential of monolithic kernels, hence I support the Hurd.
Actually, IBM is getting all hot and bothered by this stuff. They're financing the development of SawMill, a multi-server version of Linux running on top of the L4 microkernel. This stuff is the future.
Re:Tha HURD (Score:3, Insightful)
As processors get faster and faster the time it takes to do the context switch will become less and less important.
Re:Tha HURD (Score:5, Insightful)
You and I are running servers and gaming systems; we want pure performance, and don't mind rebooting a couple of times or recompiling a kernel to change hardware or upgrade drivers. In contrast, my mom has trouble right-clicking My Computer and choosing Properties to get a driver list. For her, a layered driver system that can dynamically load and unload drivers as needed and layer itself against instability is a MAJOR plus, even if it's not for me.
Just because I favor speed over robustness doesn't mean either is intrinsically better - it just means my needs run that way. And, being a programmer, chances are that my needs represent a very tiny fraction of the computer users out there.
Re:Tha HURD (Score:3, Insightful)
You and I are running servers and gaming systems; we want pure performance, and don't mind rebooting a couple of times or recompiling a kernel to change hardware or upgrade drivers. In contrast, my mom has trouble right-clicking My Computer and choosing Properties to get a driver list. For her, a layered driver system that can dynamically load and unload drivers as needed and layer itself against instability is a MAJOR plus, even if it's not for me.
Linux can dynamically load and unload drivers with ease. It's been able to do this since the 2.0.x kernels, IIRC. Hell you can compile modules and install them without updating the kernel tree in many cases. And kernel OOPSes in the stable trees have been few and far between, to say the least.
Yes, microkernels are nifty but there isn't a whole hell of a lot one can do that a modular monolithic kernel can't. I hear there's even work to make the networking stack itself a module. Yer mom isn't going to notice any difference between a microkernel and the hybrid kernel that Linux offers.
Re:Tha HURD (Score:3, Interesting)
I think you might be confusing yourself.
A monolithic kernel has no fewer layers than a modern microkernel OS. Say you want to write to a file. You make a system call, which goes through the system call interface layer, which then goes to the read() system call implementation, which then goes to the disk subsystem, which then goes to the disk driver.
"But microkernel OSes have to copy stuff around between subsystems", I hear you say. Well that's true under Linux too. At the very least you have to copy the data from user space to kernel space. Compare this with a modern microkernel system where the data is copied straight between your user space and the disk server's user space. Same number of layers, same amount of copying.
Having said, that I agree with you that Mach can't possibly be as fast as, say, Linux, which is why I carefully said this applied to "modern" microkernel systems, such as QNX. So my hopes aren't high for the Hurd, at least in its current incarnation. However, modern microkernel systems which run as fast as modern monolithic kernel systems are here today and they work.
Where is Mach today? Here are two places. (Score:3, Informative)
MkLinux [mklinux.org] and
Mac OS X [apple.com]
Of course, both are somewhat more successful than the HURD...
Re:Tha HURD (Score:5, Insightful)
I'd assume that they're working on the HURD because they think that it's interesting, fun, and/or a good learning experience. Not all Free Software development has to take place with the goal of taking over the world. A lot of it, as ESR points out, is done to satisfy the interests of the individual authors. That's why there are a million projects on Freshmeat that are essentially clones of the same basic project- mp3 player frontends, database systems to catalog CD collections, etc. Individual programmers write them for their own personal reasons and then provide them for anyone else who wants a copy.
Re:Tha HURD (Score:3, Interesting)
Re:Explanation please (Score:3, Informative)
Re:Solution in search of a problem? (Score:3, Insightful)
so you'll have all the apps, functionality of a solid, if slightly sluggish linux distro.
in theory the more elgant design should bring performance increases,
and the superirio code maintainability won't need Bitkeeper to submit patches for it.
in theory.
Re:Solution in search of a problem? (Score:3, Insightful)
Stupid need-for-portability, making everything slow
Re:Hurd developers, please (Score:3, Insightful)
Right. Any software project that takes effort, breaks new ground, and has real academic value isn't worth it.
Microsoft should be thanking you for spreading this attitude among Free/Open Source developers.
Re:Slow progress annoys (Score:3, Informative)
Try two years maybe less. Seriously. People were doing real work in a Linux environment running the version 0.99.x kernels which were release in 1993 [cdut.edu.cn]. Linux ran X, vi, emacs, and the GNU tools. For a lot of acedemics on a limited budget this was more then enough.
You don't need a big hard drive to install Debian (Score:4, Insightful)
I think everyone here is being pretty unfair to Hurd and RMS's efforts. Hurd can easily do all kinds of stuff you'll never get Linux to be able to do, like allow unpriviliged users to mount filesystems in their home directories without causing problems for security, allowing ordinary users to hack the kernel without breaking security and so on.
All of this has been a major advancement in computer science, and they simply haven't needed things like large partitions that of course would be needed for widespread acceptance. I simply don't see it as a big deal that they've taken so long to add the features needed for an end-user, because they had to take a long time to write the architectural underpinnings that are miles beyond Linux.
You don't understand Mr.Stallman's reasons at all. (Score:4, Informative)
The free operating environment he has been trying to create for 20 years is called GNU. This encompases a kernel, userland, system libraries, compilers, etc. It's a whole, big lot of work. They started out with the editors, a C library, and a compiler so they could write the rest, and they went very far. GNU userlands started to supplant the traditional ones on most UNIX machines because GNU applications were full featured and matured quickly (try the BSD userland sometime, you'll start to notice missing options quickly), and because they were open and free.
But their kernel, the Hurd, lagged in development. Linus took the amazing GNU userland and added his Linux kernel. The GNU/Linux system was born, a fusion of the GNU userland and the Linux kernel. Mr. Stallman believes than Linus deserves much credit for bringing a free kernel into the world (remember, it was released when BSD was dealing with much legal ramblings), and that's why it's listed as a part of the name (and not just included in the name "GNU").
A modular layer deep in the kernel which can be swapped at will is not really relevant to it. You could ask why XFree86 is not in the name of GNU/Linux, and you'll be told it's because only the GNU and Linux parts were designed towards the goal of a free system. XFree86 is just a reference version of X11R6 which runs on x86 (and other) hardware. The same can be said of Mach, it's just a reference implementation of some software.
GNU is the only operating environment designed to be free as in freedom from the very start, which is why Mr. Stallman asks that you properly credit the GNU contributors for their many man-centuries of effort.
Re:You don't understand Mr.Stallman's reasons at a (Score:3, Insightful)
From his viewpoint, linux was merely dropped into The GNU System. But from the perspective of the rest of the world, Linus made an OS and a the Linux distributions added a bunch of userland stuff from different projects, GNU being a major supplier.
To use an analogy, Linus built an internal combustion engine, then his friends when to the local AutoParts and built a car. The name of the completed vehicle is not AutoParts/Linux.
If you take a look from any perspective but Mr. Stallman's, a heck of a lot of GNU was adjusted to fit the Linux kernel. Linux was not adjusted to fit GNU. Just browse through the glibc ChangeLog for proof.
Re:You don't understand Mr.Stallman's reasons at a (Score:3, Insightful)
You're totally misinterpretting Mr. Stallman's beliefs about naming.
Probably.
A modular layer deep in the kernel which can be swapped at will is not really relevant to it.
"Swapped at will?" Not to put to fine a point on it, but this is in an article about the Hurd being delayed an indeterminate amount of time due to just such a swap.
You could ask why XFree86 is not in the name of GNU/Linux, and you'll be told it's because only the GNU and Linux parts were designed towards the goal of a free system.
1) I really don't believe those were the only parts developed towards the goal of a free system, so I suspect I must be misinterpreting your point, and 2) I would suspect I would really be told that you can have a perfectly reasonable Gnu/Linux system without XFree86. The GNU/Linux FAQ [gnu.org] seems to imply it's really a matter of giving credit for effort, and not a matter of the philospohical goals.
GNU is the only operating environment designed to be free as in freedom from the very start, which is why Mr. Stallman asks that you properly credit the GNU contributors for their many man-centuries of effort.
Doesn't follow. Mach sure seems like it's free (and thus Hurd can use it), and it seems necessary to enabling the Hurd to exist. I still don't see why the efforts of the developers deserve any less credit for their man-years of effort towards making Hurd possible.
I'm not trying to be arbitrary here; I don't know all the issues, and I didn't know about the planned port to a different microkernel, but it seems like the current Hurd owes a lot of credit to the existence of Mach, in a way simliar to the way Linux-based OSes owes a huge amount of credit to the existence of GNU.