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!'"
How fast is GNU/HURD compared to GNU/Linux? How about non-GNU/Linux?
To me HURD is like, well, like a missed opportunity.
Except this one, of course.
Slashdot: Where people pretend to be twice as smart as they really are by behaving like children.
... if GNU/HURD comes out before Longhorn?
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!'"
this needs to be file under "Its funny, laugh"
Just like a computer with nothing on it, it's a blank slate.
Perhaps a blank slate would be better because it's only a matter of hours to get a working Linux system on one.
Maybe the second program should be a better web server.
/* oops I accidentally made a comment, sorry */
This is a joke, right? Please tell me there isn't anybody out there who still believes that the Hurd will ever be anything more than the wet dream that everyone snickers up their sleeve at Stallman about.
that 1st program wasn't a web server by any chance, was it?
What are the relative benefits of L4 vs the Mach Microkernel? Better performance? As I understand it, MacOS X's microkernel is also based on the Mach microkernel... would it make any sense for Apple to look at L4?
return 0; }
Reminds me of the Dilbert comic strip where an old man waves a piece of paper around and says "At last, I have formed a strategy that is acceptable to all departments. Now if only there were a way to reproduce text from one piece of paper to many."
Mach was still an active CMU project when the Hurd glacier began its very slow creep from the peaks of lofty idealism towards the throng of onlookers waiting patiently for the free unix kernel they always craved to reach them. I understand there are actually a few brave souls still standing there waiting.....
ya know, "fast pane relief for Windows" ... with marketing like that no wonder...
Viva la GNU HURD!
Bush was a load Barbara should've swallowed.
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
BTW, Revolution OS is a great movie, even my non-nerd friends loved it. You can pick it up here: http://www.amazon.com/exec/obidos/ASIN/B0000A9GLO/ revolutionos-20/103-9235316-0475036
.. the GNU/HERD L4 Live CD so I can see if I like this OS>
I hope the server is not running on GNU/Hurd, that would not be good for its public image.
http://en.wikipedia.org/wiki/L4_microkernel_family
EN TEE
i agree with the parent poster
I might as well quote this too, which I think this story most likely refers to (posted on 27 jan~):
This uses a lot of advanced words I have no idea what they could mean though, but I don't mind as long as someone does and writes an article
Still a long way to go. Not much one can do except wait... or send in patches if you have kernel hacking experience!
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.
When I see X, KDE, & Postgres ported to Hurd then I'll believe it.
When the first programs run, it is just a matter of time before there is a functional L4 port of Debian GNU/Hurd (or just Debian GNU?). I really like the design of the Hurd, but what I'd like to see the most are not the "POSIX capabilities" but the real capabilities as described in the 1975 paper by Jerome Saltzer and Michael Schroeder, The Protection of Information in Computer Systems. (For those who don't know what am I talking about, I recommend starting from the excellent essay What is a Capability, Anyway? by Jonathan Shapiro, and then reading the capability theory essays by Norman Hardy. As a sidenone I might add that I find it amusing that people who say that there are other advantages than only Digital Restrictions Management of using TCPA/Palladium-like platforms usually quote security features, which have already been implemented in the 1970s, only better and with no strings attached. Those TCPA zealots are usually completely ignorant of the existance of such operating systems as KeyKOS or EROS with formal proofs of correctness without all of the silliness.) Are there any plans to have a real capability-based security model available in the Hurd?
Sincerely,
Pan Tarhei Hosé, PhD.
"Homo sum et cogito ergo odi profanum vulgus et libido."
How much time would it take to port it over ?
The Internet's nature is peer to peer - 20050301_cs_profs.pdf
FIRST CODE! :D
(kudos to everybody working on this. think of how long mozilla took to "come out" - and the impact it had!)
I can (well, almost) hear you asking yourselves "why?". Hurd will be out in a year (or two, or next month, who knows)
/. in 2006 doesn't have a new flame topic:
/. lips is, in regard to anything, when will HURD run Linux? ;-)
Courtesy of Gooooooogle
The thing is, GNU/HURD will still be... Linux. Don't shout, yes I know, the thing is, people call Linux, Linux.
Then people say, aaahaaaa Mr Bond... it is really GNU/Linux.
Well I am not so sure anymore. Debian think so, but why not call it GNU/Gimp/OOo/Java/Perl/apache/*all other installed apps*/Linux.
Is GNU software is great, and calling Linux+GNU 'Linux' is wrong, but calling any installation of the Linux kernel 'Linux' is correct regardless of other software.
If I call my OS Linux, I do so without reffering to the installed user space apps, however necessary they might be.
I think the person who is most keen to see HURD is Linus himself! After all, he has been waiting since 1990!
I do hope that
HURD v Linux (and HURD will never sell with that name - IMHO)
HURD running on top of the GNU Mach microkernel first booted in 1994 and became GNU's official kernel
The development of the GNU/Hurd has important emotional and practical value to GNU fans because in 1990s GNU had not completed any kernel and used the Linux kernel out of necessity. Thus, a number of GNU fans feel that they will have "pure GNU" only with the Hurd kernel.
I do think that some of the GNU ramblings are a bit ungrateful to Linux kernel. Without Linux it would be in 5 years that people would wake up to *nix OS's types, and in 5 years we would be where we were in 1994.
I see one thing, with the FUD over linux, will the same FUD establish itself over the huge sprawling software base of GNU?
Will GNUimp get sued by Adobe? How will this GNUism evolve?
And the final question on every
#hostfile 0.0.0.0 primidi.com 0.0.0.0 www.primidi.com 0.0.0.0 radio.weblogs.com
... to see what headline was up and I see that Hurd has ran its first app. What's the next headline going to be, "Duke Nukem Forever Net Test released to public"? :) Yes, it's flamebait. Yes, it's a troll. Like most people on here though, I wish them all very good luck and I look forward to the day I actually do get to run Hurd on a few systems.
sigs are like a box of chocolates, they all suck remove the underscores to email me
I, for one, welcome our new L4 overlords!
Get a free iPod Nano 4GB!
the GNU project want to provide a free OS, for this they build GCC and emacs to write a kernel(Hurd) i think that software, that can be compiled with GNU Gcc compiler would run on this kernel (on the contrary i must laught) so now we can a "Linux Software Gcc"-based O.S. with Gnu/Hurd-L4 kernel.. this sounds good..
GCS/T/O -d+ -p c++++(++) l+++ u++ e+ m+@ s+/+ n+(--) h* f++(+++) !g w(+) t r+(++) y?
... Maybe now Stallman will leave linux alone!!
... right?
I mean the whole useing linux thing was only temporary
Wait, why are we wanting to call it GNU/Linux still?
Don't like it, go play with your own OS!!
The entire idea of HURD, while wonderful in theory is a waste of time, and the project hasn't been set back by years because of anything other than LINUX ALREADY WORKS.
I mean I am not one to stifle innovation, but HURD will never ever be where Linux is, because no one except slashdot and Stallman care.
I guess I'm just a flamebaiting troll, but as if you'd expect anything less from a story about HURD.
Ignore the "p2p is theft" trolls, they're just uninformed
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.
Reminds me of the Dilbert comic strip ...
I've been boycotting Dilbert since its authors became BSA propaganda whores.
The way I see it is:
;-)
1. Hurd enables the port for Linux kernel modules (it was the case in the Mach series as I believe but the port was quite old 2.0.xx modules or so)
2. Port Gentoo to Hurd
I really hope Hurd developers can create better kernel than the Linux one. With all the woooo for Linux it is still not a perfect solution - buffer overflows etc. Such things should not happen in a good designed kernel.
If you add kernel hotplug and scalability (native clusters) there would be NO competition for Hurd. I hope
best regards - Michal
He says: 'We can now easily explore and develop the system in any way we want. The dinner is prepared!'"
If you immediately know the candlelight is fire, then the meal was cooked a long time ago.
Or...
http://marcus-brinkmann.org/banner.jpg
Look, congrats and all, but if I'm going to run a pointless operating system, it's going to be one that's actually impressive, like MenuetOS .
On the other hand, every so often, even the linux kernel devs get sort of rabid and out of control. I don't like proprietary software any more than the next guy, but if it's the best tool for the job then that's life, and it should run. I shudder to imagine what HURD will be like in this regard, we'll none of us be allowed to run anything at all if RMS has his way.
Don't you mean, "FRIST CDOE!"?
ok lameness filter time for much lowercase stuff ok ok ok lameness filter dealt with time to post
BRAINFUCK! Or something like that with one less command.
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.
"You must be GNU here"
"Yes, but does it run GNU/Linux?"
"In Soviet Russia the first program executes GNU/Hurd"
"Netcraft confirms it, GNU/Hurd is dying"
"In Korea, only old people use GNU/Hurd"
"GNU/Hurd isn't ready for the desktop"
"Imagine a beowulf cluster of these"
"I've got a greased up GNU shoved up my..."
And lastly, something about a herd of Natalie Portmans and hot grits....
Guess it's time to restart based on the brand spanking new L5 kernel then? :P
Seems to be slashdotted, so..
... We hope its superior architecture will make free operating systems more powerful". HURD running on top of the GNU Mach microkernel first booted in 1994 and became GNU's official kernel, according to the Hurd history page.
A historic first step for the Hurd/L4 microkernel port
Submitted by nsk on 3 February, 2005 - 05:39.
After hard development work and numerous code contributions, Marcus Brinkmann implemented process initialisation, the important internal functionality in the Hurd/L4 project that allows programs to be invoked through the activation of a process and the subsequent execution of software code by the computer. This means that the Hurd/L4 developers are now free to focus on implementing further features that will be directly visible to the end user, like executing more complex applications.
HURD/L4 is an ambitious project to port the already-functioning Hurd-Mach to the L4 microkernel.
The Hurd is a collection of servers running on top of the GNU Mach microkernel, implementing various services that operating systems usually offer, like file system access and networking. It is GNU's replacement for the Unix kernel, and currently it can support a graphics environment, is usable by experienced end users and is used by the Debian GNU/Hurd distribution. However, the implementation is still not appropriate for production environments or home end users.
GNU is a project started in 1985 by Richard M. Stallman for the creation of a Free operating system resembling Unix. Together with the Linux kernel (created by Linus Torvalds) it forms the core system of the numerous GNU/Linux distributions that are available today, like RedHat, SuSE, Mandrake, Debian, Gentoo, Slackware and many others.
GNU Mach and Hurd were in development from 1990, long before the GNU developers heard about Linux, but they decided to continue working on it because of its superior architecture. According to Richard Stallman's "Hurd and Linux" message: "Given the years of work we had already put into the Hurd, we decided to finish it rather than throw them away
Hurd Logo
However the developers later decided to port Hurd to the advanced L4 microkernel, which although very powerful and fast, the extra development needed for the transition slowed HURD development by years, but it never halted. The Hurd/L4 development is very active, as evidenced by the CVS commits mailing list and the CVS repository.
L4 is a second-generation microkernel originally developed by Dr. Jochen Liedtke who, while in Germany, had developed the previous L3 microkernel/OS and its predecessor, EUMEL. He unveiled the 12-Kbyte fast L4 microkernel after 1996 while working for IBM in New York City. Prof. Jochen Liedtke died unexpectedly on 10 June 2001, at the age of 48.
A microkernel is a minimalistic kernel which provides only the basic functionality needed to run special modules on top of it which provide the usual services of an operating system. The disadvantage of microkernels is that they generally run slower than monolithic kernels, although this didn't discourage Andrew Tanenbaum to debate with Linus Torvalds about a microkernel approach to Linux. L4 achieved an impressive breakthrough in microkernel performance by being highly customised for specific hardware architectures (and even for specific CPUs).
The development of the GNU/Hurd has important emotional and practical value to GNU fans because in 1990s GNU had not completed any kernel and used the Linux kernel out of necessity. Thus, a number of GNU fans feel that they will have "pure GNU" only with the Hurd kernel. The practical value of the GNU/Hurd is that it is built over a fast powerful microkernel, benefiting from the many advantages of that approach.
However, Hurd/L4 is not be the only software running on top of the powerful L4 microkernel: A version of the Linux kernel running on L4 already exists, and it is named L4Linux. The L4 developer community is very active and
Mach was still an active CMU project when the Hurd glacier began its very slow creep from the peaks of lofty idealism towards the throng of onlookers waiting patiently for the free unix kernel they always craved to reach them.
Well, its pace is matched then by the very slow creep of systems like Linux (and OS X and Windows) towards some semblance of coherent design and implementation.
You see, when you implement a system, you have two choices: you can do a shoddy and cheap job initially and fix things up later (Linux, Macintosh, Windows) but grab lots of market share, or you can try to do it right and not get a lot of market share.
Of course things are not black and white: some quick and dirty jobs (Linux, NeXT) are not quite as shoddy as others (Macintosh OS 1-9, Windows 3.1). And some people just can't design a decent system even if you give them nearly infinite resources and time (like the Windows NT kernel).
I'm glad efforts like L4Ka exist. The Linux kernel is not infinitely extensible, and we will need something to replace it eventually. Whether it's this or something else, I don't know. But you shouldn't sneer at it.
It's at the same stage as Linux was in 1994?
Great. I'm 40 next month, so maybe I will still be alive when its ready for the desktop!
Open Source Drum Kit, LPLC deve board - mjhdesigns.com
Do you think the total time saved by all the processes which ever run on the L4-HURD on any machine anywhere will ever be larger than the time taken to switch from MACH to L4?
_O_
.|< The named which can be named is not the true named
Now where'd I put that 200MIPS SparcStation to run it on...
I am MR MBOTO SHAW, Testamentory Executor of the Will of joe_bruin by appointment and prior arrangements made by the Township of KWANZAA-TOBOGO. After further investigation of his Next of Kin proved fruitless, I come to you in utmost Confidentiality so that the fruits of this old man's labor will not get into the hands of corrupt Township officials.
Date: Unknown
Place: Slashdot
when me and richard m. stallman (the m stands for 'merryweather', did
you know that?) started GNU/hurd back in 1908, we were out to replace
the closed-internals of the international business machines (ibm)
automatic punch card tabulator, which was at use at the time in the
department of the census (where me and rich were summer interns).
those machines had a 2mm steel case sealed with canadian metric square
screws (wherever you call them, please don't correct me). since nobody
had any metric screwdrivers at the time, much less square ones, we had
no access to the internal cogs and wheels of the tabulator. we
definitely did not want to punch through the casing, because that
would void our warranty and service contract, and we would have to
contract ibm to build us a second tabulator (which cost nearly 200
american dollars, and took 7 months to assemble).
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.
-- joe_bruin @ slashdot
Many sections are starting to move to something equal to a microkernel so they cannot stop the system. Init networks are being moved.
Basicly if hurd does not get a move on it will be the OS that promised so much but got beaten.
You're describing the bootstrapping problem, which if I recall correctly is actually described on the GNU website, somewhere.
To answer your question, the GNU devs started out with proprietary operating systems -- primarily SunOS, I think -- and took advantage of the modularity of UNIX to replace one utility at a time. This is why the kernel was the last piece -- because most of what makes a UNIX system run actually resides in user space.
Attempts to create free versions of other OS types -- ReactOS comes to mind -- have a harder time following this example, because most other operating systems are not designed in such a modular way. So they start with the kernel.
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.
I thought so.
Now, what was it you wanted to say?
Check out this analysis. The whole book is pretty good; I never looked at Dilbert in the same way after reading this.
Unfortunately, due to incompatibilities with the /bin/true program, the kernel has to be rewritten from scratch.
It sure had jumped the shark, anyway. The last couple of weeks in particular have had some seriously lame strips. It's a shame. I'm going to miss it.
"The Milliard Gargantubrain? A mere abacus - mention it not."
Shouldn't the site be slightly updated, then? At least take the "this project is dead" part out. Go Hurd!
guess nobody bothered to g**gle it: New kernel for Darwin:
Your point? The world now knows there are viable alternatives, and they can be had for historical lows on price.
The world's got practice. It's no longer in the same state it was in '91. Back at that time, very few people had unix machines on their desk or at home. Unix ran in the computer room at work or school and you connected to the system but did little in the way of administration. Millions have been introduced to "the unix-like way of life" (TULWOF), superuser status, and have developed desires to exploit the powers of their machines in an infinite number of ways. The world is primed to be wowed again.
I see our future selves laughing at our current fascination with Linux like we now look at time we spent with DOS. We'll see someday how horribly inflexible it was compared to what's coming in this next generation of operating systems. Your post shows you know very little about the Hurd and what possibilities it will allow. One cannot currently imagine all the fun things people are going to do with it (them?) X years from now.
Exactly not the case. There are *profound* advantages [to "the Hurd"].
If and when a usable system comes to fruition is the question. Developers. Developers. Developers. Get them excited and you'll soon be doing things with your machine you'll never even have considered possible. Maybe not yourself, but people will be doing things they never dreamt possible. There are fundamental differences that are difficult to comprehend having experienced only monolithics. Granted, most of the advantages are not so much at the user level, but from a system administration perspective. Guys working "in the computer room" will probably have much more to be excited about than somebody with a user account. If you know what "having root" is like, the possibilities coming with the Hurd's architecture will be much more meaningful than they would to a typical user. However "typical user accounts" will be much more powerful on a box running the Hurd. Even low level stuff like filesystems floats up into "userland" allowing you the ability to customize your environment to great extents without affecting other users on the same machine.
Maybe more people should work on the current telephone system instead of wasting their time with VoIP. Maybe you should have worked harder at your old job instead of trying to find a new, better job? The Hurd is to Linux users like Linux is to DOS users. If Linux (as currently implemented) lives in N-space, the Hurd lives in N+1.
Resources get split up; sure. Consider however how the body of developers grows every day as more and more are introduced to TULWOF. None of us get to justify or dictate how others spend their free time. Get excited about the underdog. Linux has enough developers, don't you think? Will developments made on a new system with completely different rules positively effect Mr. Torvalds pet project? Most certainly I presume. I see the relationship as symbiotic. The Hurd takes on the huge body of software that has been developed due to "the Linux revolution" of the last decade and Linux takes from the Hurd (besides the jealousy that I can only predict will develop eventually) new techniques and perhaps, somehow, some type of hybrid approach to the kernel. There's no telling really; I can only imagine good things coming to both camps. Your attitude of discouraging work on such projects, done freely by others, I see as sel
A 15-years-and-counting-delay in delivery. Hurd must be exceptionaly better than Linux if it wants to gain even a minimal market share. I would bet that even OpenSolaris10 will find more users.
Coral Cache Link
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?
Isn't it important to recognize the important contributions the BSD team has made to the project?
yes but... does it run linux? :P
(The Wizard of Oz: If I Only Had...)
If the Hacker Gods beside me
Would graciously abide me
And let my wish be heard:
That I would consider shaving
I might even start behaving
If I only had a Hurd
I'd make fun of the internalsOf monolithic kernels
Old-fashioned and absurd
Since they don't put "Gnu" before it
I'd prefer to just ignore it
If I only had a Hurd
I could maybe have a relapse
And do some work on Emacs
To make a brave Gnu/Word
I would write some manifestos
Clad in flamewar-proof asbestos
If I only had a Hurd
----- :)
The text is in the public domain. No offense, honestly
All your GNU are belong to us
What is the difference between a cluster of systems all running Linux.( because its a cluster you can "pretend" each node is a microkernel process of the overall O.S - grid ) and using HURD?
How would a network of HURD machines compare to the most modern mainframes and grids that we have now. I'm interested to be educated on this matter
Thanks for the kernel...
MirrorDot Cache Link
Yes, actually.
;)
Error 407 - No creative sig found
You know, being intolerant of tolerance is not a good thing. I like freedom in software, but I also like to smoke weed every now and then. I'm not perfect and there is no perfect licence or model out there. Heck ,I'll miss using Slackware if I go and start usin Solaris, but screw it, I might just do it.
Any chance of them being able to hack something together so linux driver modules can be loaded?
I mod down anyone who says "I will be modded down for this", regardless of the rest of their comment
Those who think it's evil to advocate the enforcement of copyrights on commercial software should bear in mind that it is this same copyright law which is at the center of IBM's defence against SCO, which, if you need a reminder, is not "Copyrights are evil, man, and SCO needs to like, chill out and let it be free," but "Linux was copyrighted according to the GPL, and SCO violated those terms."
You can't apply copyright law only to those things which you, personally, want copyrighted.
I am Sartre of the Borg. Existence is futile.
Can't Linux drivers be ported to the HURD?
Correct me if I'm wrong, but due to their shared GPLv2 license, the below-mentioned "huge amount of embecded knowledge on how PC hardware works buried in the Linux code" can be leveraged for use in the HURD. This could be a boon for HURD development, because unlike the other Free OS Linux compatibility modes, the HURD can lift such code straight from the Linux kernel, giving it a significant advantage in that matter over others.
Maybe with a little work even proprietary drivers like NVidia and ATI drivers could be made to work. That would give it the huge advantage of being one of 3 Free OSs that has accellerated modern 3D hardware
Yawn
Coral Cache
MirrorDot
Many hanks to the people who run these cache services.
if you enjoyed this story please keep the wikinerds.org on your bookmarks. Thanks
It has always been a mystery to me that so many difficult problems have been solved by so many brilliant GNU teams (gas, gcc, gdb, gld, bfd, glibc, emacs, m4, grub, bash ...) that developing a good kernel has eluded them. The people that have developed these packages are certainly skilled enough. They have also demonstrated tremendous drive. Any ideas?
an ill wind that blows no good
I for one welcome our gnu overlords
That's got to be some kind of record.
Why is it that the proponents of "one nation under God" are so eager to get rid of "liberty and justice for all"?
"I, for one, welcome our GNU/Hurd Overlords"
Even a stopped clock gives the right time twice a day.
Yeah this is a milestone. Or is that a millstone.
Congratulations. Yawn. Due to the staggering delay between project start and minimal system, I think there will be a stunning lack of emotion until we see something friggin spectacular!
Bitter and proud of it.
I find myself wondering what this will mean for Linux. Will there actually be something of a community split (at least initially) with people going off and trying the HURD? Obviously the "ready for the desktop" lemmings won't be among that crowd, but I'm still guessing there'll be a fair number of adventurous souls wanting to try it out once it's a bit more workable.
The kernel is not implemented as true microkernel. There is seperation, but the message passing is limited to IO request packets that are sent to and from the HAL from (properly written) drivers. The drivers run in the same thread but in a different execution context / ring (IIRC through a "door").
But drivers that require "fast IO" are running in the same address space as the kernel.
So while the IORP-using drivers shouldn't be able to take the system down, I wouldn't call it a microkernel exactly.
THIS THING CAN TURN ON A DIME, MACROSSZERO STYLE ALSO FUCK BETA, ~NYORON
With IRIX, a T-1000 shoots you in the foot. Then a T-Rex bites it off.
With UNICOS, you shoot yourself in the foot with an MP-5.
Facts do not cease to exist because they are ignored. - Aldous Huxley
... and I was expecting "Hello world!"
At the rate they are going, I'll retire before it is ready. I think I'll stick with Linux and my Atari 800 Unix loaded from casette.
new OS kernel called HURD ... using the GNU Mach microkernel.
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.
Ok, I'm confused. HURD is a kernel. L4 is a kernel. How do you port a kernel to a kernel?
Coder's Stone: The programming language quick ref for iPad
1. Release a kernel 10 years after the Linux boom started which will never be used by anyone besides a few RMS fanboys and Free purists.
2. ????
3. Profit!
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.
First DOOM3 and Halo2 come out. Then the Red Sox win the World Series. Now HURD is about to reach a major milestone. Has someone called Hell to see if they are snowed under?
Well, there's spam egg sausage and spam, that's not got much spam in it.
Does this mean GNU/HURD will be available before my powerbook G5? It's coming out next tuesday, you just wait!
I try not to laugh in death's face. I tend to make belittling comments and snicker behind death's back.
[sarcasm]GNU Software: It works! Fuck, lets re-write it before people find some sort of use for it![/sarcasm]
I know HURD must be more of a research project than anything else - otherwise they'd be trying to get something at least usable to arouse some interest in the project.
I admire what HURD attempts to achieve, but at the moment its a bit of an incomplete solution to a non-problem (find an open-source kernel for the GNU operating environment)....
smash.
I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
Microkernels would be helped tremendously if 80x86 CPUs did not only have rings but also regions...because a faulty driver can write to anything inside its ring and lower-priviliged rings.
The ring protection should have been inside the page table. A page descriptor has enough room for that. It should have been like this:
Page Descriptor with Ring Protection:
bit 0: page present/missing
bits 1-3: other
bits 4-5: current ring
bits 6-7: Read ring
bits 8-9: Write ring
bits 10-11: eXecute ring
bits 12-31: page frame
So in order for some piece of code in a certain page A to read from another page B, it should be that A.page_ring = A.read_ring. The same goes for write and execute access.
This mechanism has many advantages over the current one:
a) ring protection is per page and not per segment. Segments become totally irrelevant for protection.
b) there is no need for ring gates. A process in ring 3 can execute code of ring 0 if the kernel page allows it. There is also no need for special instructions like 'syscall'.
c) higher-privileged code can have const data be read from lower-privileged code.
d) device drivers can easily be isolated from the kernel.
e) there is no need for special 'virus' protectiobn bit, since executable code can have write ring set to 0 and execute ring to 3 (which means an application can not execute data).
Can GLX fans expect to see a usuable GNU/Hurd distro before the next full release of Debian?
First man landed on the moon?
These microkernels running services make much more sense on a processor with multiple cores - the main problem on a traditional "single-threaded" processor is there is way too much OS overhead 25-30% with the microkernel strategy, compared to a monolithic kernel. So in 5 to 10 years, as the HURD moves forward galacially like the plot to Dr. Who, this will be a good foundation for the new generation of processors.
Wasn't it back in about 1991ish, when Linus still thought that Linux wasn't going to be anything special, that Linus said "maybe in the next year or so HURD will become useful", or something similar to those lines? implying that HURD would displace any usefulness of Linux.. hmm.. my my my how things have changed.
Aside from academics is there any reason whatsoever that anyone on earth would ever want to attempt to operate this?
"Champagne for my real friends - and real pain for my sham friends!" http://ericblade.postalboard.com/
I've got no secrets from a GNU. Classic joke from a big blue joke book when I was a kid circa 1972 City Slicker: That's a great group of cows Farmer: Herd. City Slicker: Huh? Farmer: Herd. A cow "herd" City Slicker: What do I care what a cow heard? I've got no secrets from a cow!
when I can run windows apps on it... will they have something like WINE?
I mean GNU/WINE, of course.
I think a kernel unencumbered by intellectual property disputes may be what is required at this stage in OS development. How many organisations and companies are holding back with their Linux deployment because of nagging doubts about intellectual property in the Linux kernel? It's just possible SCO might get away with some stuff.
/. have previously been talking about IBM looking at *BSD as an alternative to Linux, just in case things get hairy with Linux. Having the HURD as another option can't hurt.
People on
yeah ... we got HURD, Linux, BSD the diversity is amaizing? But how much market share do theese OS-es have? 5%?
There is a interesting little book called "The trouble with Dilbert : how corporate culture gets the last laugh," by Norman Solomon that is an extended polemic on the ways in which Scott Adams has allegedly become a tool for the corporate overlords. The basic argument is that by making slightly-but-not-too subversive cracks at modern corporate life Dilbert defuses potentially revolutionary worker resentment. We all recognize our own feelings of helplessness, laugh a little, feel as if we are "sticking to the man" by posting our favorite PHB cartoon on the cubicle wall, and then go on with life without ever substantially challenging the structures of modern capitalism.
It's Dilbert meets Marx. Fun stuff.
And if you're really inclined to help the Hurd along, and have more money than hack time, you could always make adonation.
and don't come back.
"...which enabled him to execute the first software on HURD-L4."
And in another fifteen years, they'll finish the code that allows them to stop that program.
I keep re-reading your post, and I'm still no less confused.
Based on your words, you are saying:
1.) You don't want your drivers to be able to restart when they "crap out." This means you want the whole kernel to die instead?
2.) You say the drivers are buggy and take the whole house down, requiring fixing. You prefer the whole house to be taken down rather than just restarting the driver in userspace to stay running?
3.) You talk about buggy, closed-source drivers right after you've already said open source drivers are buggy and take the whole house down. So what's the difference?
4.) You argue against a fixed driver interface like every other modern operating system has, allowing for both open source and commercial driver development (that whole choice thing, right?). Your only supporting evidence appears to be that "Linus is against it." Linus is not a perfect developer whose words should always be followed.
What if we started taking development for 2.8 in the direction of microkernel functionality without making it a microkernel? Say we just coded in the difference, where modules are run in userspace instead of kernel space while keeping a "protected memory space" of the filesystem, hard drive, and other other driver modules (as an option of course). We can do this so that if hardware failure happens it can be restarted, we also can recover the hd/fs in case that goes and if a module decides to crash (as if a module has cognitive ability to do so) it won't take out the kernel.
I'm not a kernel programmer by any stretch of the imagination, but just how possible is this? Meaning, is it feasable to do this within the timeframe of any 2.8 or even 3.0 kernel development, and what would we have to do to make it this way?
I personally don't like any driver taking out my whole system, nor do I like having to reboot just because I upgraded or compiled and installed a newer driver/module. (sometimes it happens)
Help me out here fellas
Hurd will never be big and professional like Linux ;-)
LedgerSMB: Open source Accounting/ERP
Those are not "mafia tactics." Like references to Nazis, references to the mafia are overdone, overexaggerated, emotive, and inaccurate. Debate on merits, not emotive connotations.
Believe it then. Already done.
-Dan
to have a wide addoption of GNU/HURD as a Desktop OS? From what you say, it sounds like the dream OS - at least regarding security and stability - to me.
Before this, well it was just out of the radar, but now... I'm starting to think that maybe in some years, there could be a viable alternative to Windows AND Linux.
What do you think ppl?
Well, I was intrigued enough to load it onto a floppy and give it a try.
It's pretty cool that you get a such a responsive and slick GUI running off a floppy.
I think all it needs to be of some minimal use is a half-decent web browser. They had some testing browser that can load the text of webpages (but no images), but I didn't see that even hyperlinks worked in it. I gave their telnet client a try too, but had no luck interacting through it, although it seemed to connect.
If they could get a nice browser running on it, it'd be great to use for cheap web kiosks.
I wonder how hard it would be to port something to it.
I don't see Apple making any changes to this in the immediate future.
- But the whole thing about layers is that they can be swapped in and out.
I think that if there was a good enough reason, porting from the MACH microkernel to the L4 microkernel could be done without breaking too much.
And higher level software could run without noticing the difference.
I have seen from elsewhere that Apple is interested in Kernel development.
Although rewrites of the lower level items would not be worthwhile unless it lead to some significant gains.
Will Apple be running the L4 kernel in 10 years time ? - Who knows - it's possible.
One thing is certain - and that's that software development never stands still for long.
I guess if they spent 20 odd years working on this
then they though it worthwhile...
Switching from one MicroKernel to another is easier then switching from monolythic to microkernel.
OSX's microkernel is already very good, (and improving) along with improvements to MACH,
- So it would be interesting to see what speed differences there really were.
And whether this was a viable future direction.
Certainly the answer to that question at the moment is NO.
-- What OS we we be using in 20 years, 50 years, 100 years time ?
One answer is that it will be Microkernel based
- Other details may differ...
- Certainly parallel processing will be involved
- Only lower speed CPU's will use electronics...
It's quite possible that either way some lessons may be learnt for L4 developments, and that has to be a good thing.
Too bad everyone already had takeaway Linux.
The Hurd website, wiki, etc. haven't been updated in years.
At a more fundamental level, there's a design disaster in the making here. L4 seems to make the same mistake Mach made with interprocess communication - unidirectional IPC. This design error is called "what you want is a subroutine call, but what the OS gives you is an I/O operation". This is a crucial design decision. Botch this and your microkernel performance will suck.
QNX gets it right - the basic message-passing primitive is MsgSend, which sends a message and blocks until a reply is received (or a timeout occurs). The implementation immediately transfers control to the destination process (assuming it's waiting for a message), without a trip through the scheduler. That's crucial to getting good performance on real work from a microkernel.
Mach botched this. Mach IPC is pipe-like, with one-way transmission. And that's a major reason Mach was a flop. (Note that the version of Mach used for the MacOS isn't the final "pure Mach", it's a Berkeley BSD UNIX kernel with Mach extensions.)
Why does this matter so much? Because if send doesn't block, when you send, control continues in the sending process. Later, presumably, the sending process blocks waiting for a reply. But who runs next? Whoever was ready to run next. If you're CPU-bound and there are processes ready to run, every time you do a message pass, you lose your turn and your quantum, and have to wait. So programs with extensive IPC activity grind to a crawl on a loaded system.
But if message passing is tightly integrated with scheduling, a message pass doesn't hurt your thread's CPU access. Control continues in the new process with the same quantum (and in QNX, the same priority by default, which avoids priority inversions in real time work). Now message passing is only slightly more expensive than a subroutine call, and can be used for everything.
There is a big literature about Mach, Minix and related underperforming academic microkernels, while the key architectural details of the commercial microkernels that work (basically QNX and IBM's VM) aren't well publicized. But you can dig the information out if you work at it.
Can someone explain to me how to interpret the screenshot as a successful execution of anything?
It looks like a spew of debugging messages, with a few blobs of # symbols.
Are those blobs supposed to be part of the banner output? I don't get it.
From what I can tell, this Hurd port was using the L4Ka::Pistachio kernel, which is licensed as BSD and not GPL. I am surprised that GNU would go for that.
Did anyone else take that last statement as being some sort of reference to The Rocky Horror Picture Show that I missed the meaning of?
Magenta sounding a gong
Magenta: "Master, dinner is prepared!"
Frankenfurter: "Excellent. Under the circumstances. Formal dress, is to be optional"
As I demonstrate that I've seen that movie may to many f'king times, AND IT KEEPS GETTING FUNNIER EVERY TIME I SEE IT"
Yes, "the world" as in anybody who would care to implement a computer to do some work for a multitude of users. Geek development community. Check. Businesses in search of a computing platform designed for stability and flexibility. Check. Operating system researchers. Check. Linux users. Obviously, check. Those in need of superior reliability. Check.
My mother? She's not part of the world to which I'm referring. But she does know there are viable alternatives to the desktop she's found herself sometimes tortured by on a daily basis.
The modern world has been introduced to Linux. They heard about it during the bubble. People now know there are other things out there besides what comes from Redmond, SCO, IBM, or HP. If they find that isn't suitable for them, or it has failed them in the past, they can search for alternatives. What's more valuable than choice when searching for alternatives? The argument can be made that choice quality is more valuable than choice volume. I'd counter with the fact that competition between choices typically raises quality across the board.
Unix has been around for a long time and in the meantime computing users have explored many of the alternatives. OS/2 and BeOS have not lived up to the task. BSD can certainly stand on it's own. NeXTStep's legacy can be seen in the wildly popular OSX from Apple. Who's to say something better than Linux can't come along?
Admittedly, referring to a bunch of geeks and business as "the world" is a stretch. Point taken. One must look however at growing market share in Asia, India and other places across the globe to understand why I chose the term. Growth in these places is booming. The world is waking up to life outside the intentional incompatibilities and blue screens currently sitting on their desks.
I refer the reader here.
Something to remember is that almost all of the technologies that we use today date back to the sixties. Object oriented programming dates back to the sixties, and yet it wasn't until C++ that it finally broke out into the mainstream. Likewise, it took how many years for the Internet to break out and become useful to people?
The fact is that most stuff that comes out of the Computer Science departments takes years before it can become a useful and practical in the real world. The people sneering at microkernels as an old CS idea that will never work probably were the same folks sneering at OOP when C++ first came out, discussing how broken the C++ implementation was. Or a bunch of other concepts.
The fact is that in time Linux may well shift over to a microkernel to provide advance functionality someday. It may be that microkernel technology is just a little ahead of its time and it's just going to take a few more years for the computer world to catch up to it.
Linux too is able to run on top of a version of L4 from the University of Dresden: L4Linux. There's more to L4 than we may think of at first glance!
cpghost at Cordula's Web.
Sorry to be pessimistic but I don't see any interest to a new kernel.
Whatever design they choose, I have lots of doubts that it will bring any serious improvement.
Even if the linux kernel doesn't have any microkernel design, it did not prevent it to evolve in many directions.
And whatever the design is, they need to evolve... and the evolution is driven by advances in hardware mostly... I'm not sure if in the long run a microkernel has really any advantages.
Also something that I'm not sure Kernel developers have in mind are drivers... do they expect that driver developers will rewrite all existing drivers for their new kernel?
It is enough of a challenge to get drivers for the linux platform, I'm afraid that too many platform would slow down these developments.
NOTE! This copyright does *not* cover user programs that use kernel services by normal system calls - this is merely considered normal use of the kernel, and does *not* fall under the heading of "derived work". Also note that the GPL below is copyrighted by the Free Software Foundation, but the instance of code that it refers to (the Linux kernel) is copyrighted by me and others who actually wrote it.
As far as I know, the HURD license has no such preamble, which means that you cannot run any non-GPL'ed programs on HURD. None, zero, zip. Why? Because clause 2b of the GPL states:
b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
The reason Linus put the preamble in is that this clause means that if you put two programs in memory at the same time, and they interact in any way, you have created a third derivative program. This is so that, I as an commercial software developer can't simply do some type of unothodox dynamic linking to get around the intent of the 2b. But since every user program must talk to the OS, under this interpretation, every user program must be GPL'ed. Hence Linus' preamble.
So while nobody cares today (and rightly so), somebody will make this an issue at some point, because it has already been made an issue with Linux. If/when it gets made an issue, I cannot foresee RMS putting in a preamble like Linus did.
In this case HURD will only run GPL software, and is therefore useless to general public. It even would be useless to me, and I've used *BSD and GNU/Linux since 1994.
In order for a hardware driver to function properly, it must disable interrupts on its CPU. This is so that it can read the information off the bus in the shortest time possible and perform handshakes that require exact timing.
This means either you have to run part of the driver in kernel mode, you have to allow a user mode process to disable interrupts, or don't allow drivers to disable interrupts. If you run at least part of the driver in kernel mode, you lose the advantages of user-mode drivers. If you allow user-mode drivers to disable interrupts, you can still have user processes bring down the whole machine. If you don't allow interrupts to be disabled then you won't have fully-functioning hardware.
Which one are you going to choose?
aqazaqa
Complexity is the real problem in any large software system. This is a good opportunity to rework some of the code at the OS level and simplify the interdependencies in the process of getting it to all work with HURD. Linus' preferred monolithic kernel is faster, but increasing complexity is making improvements more difficult and costly. Reworking all that code, dare I say refactoring, is just the thing the sclerotic Linux kernel needs.
Even Amiga or Atari 400/800 has more users than HURD ever will!
ACHTUNG! Das computermachine ist nicht fuer gefingerpoken und mittengrabben. Ist nicht fuer gewerken bei das dumpkopfen.
What OS we we be using in 20 years, 50 years, 100 years time ? One answer is that it will be Microkernel based
In 100 years we will probably be using quantum computers and all of today's OS paradigms will be obsolete.
I really wonder how much it's worth to contribute and continue projects like this one (and even to Linux at larger scale). Both of them are SO old. Linux, for example, is so freaking outdated from modern OS point of view. Managed .Net and Java style VMs is the next evolution of moden OS but Linux hasn't even reached to a technology summit where Microsoft COM was 5 years ago. Yeah, I know all those security issues and blunders. But from pure OS sophistication point of view, that was the awesome way to let applications built by components. Look at even FireFox. Those poor guys have finally realised its importance and now has started duplicating MS COM as their own XPCOM. But to a person who looks at OS by their feature-richness, technology like XPCOM is an old news from last century. Sometime I don't know what these Linux guys so proud of? For carrieng burden of that '60s OS concepts still in 2000s? Look at the difference between MS and them. MS renews their OS, applies new technologies like COM and .Net and keep building ever more sophisticated dev tools every 5 years or so. It's not because they are not smart but it's because they have evolved so fast. Technically, Windows is far reacher OS than Linux any single day. I view Linux is stuck on Unix base and deprived of many modernizations that goes under the hood of Windows and Macs. Is it because most of these guys are from really old generation. Every now and then some geek of 80s comes around, builds a process loader and sends out news about new OS and others rejoices. Pathetic.
Does an instant segfault really count?
Mix the failings of Usenet with the shortcomings of the World Wide Web and the result is slashdot.
But this is on L4, not Mach, runs on x86 (AFAIK only x86), and is up to date; 2.4.28, and 2.6.10 are available.
Linux on Mach (MkLinux) is as you describe, and even L4Linux was done mostly to understand the L4 technology. but the L4 port is definitely more that a curiosity...
"Go to CNN [for a] spell-checked, fact-checked summary" -- CmdrTaco
Hurd Undergoes Repeated Delays
"OMG, d00dz, it runs a program now! What do we do?!"
"Oh, fuck, dude, I dunno! We should start over from scratch or something!"
"Hey, good idea!"
It's not an L4-based kernel. L4 is the kernel, the rest, while part of the OS, is not. Most of the rest will simply reuse the code from the Hurd on Mach, so it really isn't a different project. It only has a different structure underneath (which isn't visible to anyone but system programmers, except for performance and security).
It's not the kernel which will solve them, but we hope they are indeed solved by the project.
How about calling the kernel L4, as their makers named it? (Just like we all call a certain operating system GNU, as its makers named it ;-) ). That's a snazzy new name, compared to Mach, don't you think? ;-)
I recall an October 2004 article in which Mr. Torvalds suggested that ...HURD is dead. I could not help but wonder if this was an attempt to assure spectators like myself that the HURD project is *still alive*.
Make no mistake, I will definitely give HURD a shot when it becomes as usable as Linux was five years ago. Given the time delay taken to report execution of the first application, I suspect such usability is decades away. By that time, Linux itself may have been replaced by a more efficient kernel, Microsoft may have to compete with Apple for minuscle market share, and BSD-style forks may have happened to the HURD code.
The glacial pace of HURD development may explain why it took more than three months for them to take this action which may be seen as a response to Linus' comments.
Not a troll, just a thought.
That is really great to hear. Now I have no doubts that Debian GNU/Hurd will be my future system of choice. Today I use Debian GNU/Linux and my main problems are drivers running in the kernel space causing security and stability issues and the lack of real capability system. I'm glad that there is going to be a perfect system for my needs hopefully in not too distant future.
I'm sure I will use it even for the price of nonportability because I have already hit the wall of user-based privilege control system's limitations too many times, which is quite frustrating as no one else seems to see any problem with them. I suppose that there will be some convenient way similar to chroot and ulimit to run programs with restricted privileges even if they are themselves not aware and dependent on capabilities. Also I hope that it will be possible to use capabilities where available from managed environments like Parrot or maybe even directly in places like Apache configuration to give specific and limited rights to individual scripts. The possibilities are very promising.
Sincerely,
Pan Tarhei Hosé, PhD.
"Homo sum et cogito ergo odi profanum vulgus et libido."