Slashdot Mirror


GNU Hurd Gets Improvements: User-Space Driver Support and More

jones_supa writes "At FOSDEM 2014 some recent developments of GNU Hurd were discussed (PDF slides). In the name of freedom, GNU Hurd has now the ability to run device drivers from user-space via the project's DDE layer. Among the mentioned use-cases for the GNU Hurd DDE are allowing VPN traffic to just one application, mounting one's own files, redirecting a user's audio, and more flexible hardware support. You can also run Linux kernel drivers in Hurd's user-space. Hurd developers also have working IDE support, X.Org / graphics support, an AHCI driver for Serial ATA, and a Xen PV DomU. Besides the 64-bit support not being in a usable state, USB and sound support is still missing. As some other good news for GNU Hurd, around 79% of the Debian archive is now building for GNU Hurd, including the Xfce desktop (GNOME and KDE soon) and Firefox web browser."

163 comments

  1. Hopefully by Anonymous Coward · · Score: 1

    Hopefully it will be launched until 2038.

    1. Re:Hopefully by Anonymous Coward · · Score: 1

      That will spare them the worry of dealing with time counters wrapping around and give them another 68 years to work on version 1.1.

    2. Re:Hopefully by unixisc · · Score: 1

      The funny thing is that the OS would still be 32-bit. That's like having an 8-bit OS around today.

    3. Re: Hopefully by Anonymous Coward · · Score: 1

      There really haven't ever been 8 bit operating systems. Even the PDP-8 was a 12 bit cpu. Early low end machines for the consumer market like Apple 2 and Commodore systems were 8 bit but really didn't have OSes. They had rudimentary program loading capabilities to start up one program at a time. MS-DOS was barely an OS on 16 bits.

    4. Re: Hopefully by unixisc · · Score: 1

      What about CCPM? The OS that was there on an 8085?

    5. Re: Hopefully by Anonymous Coward · · Score: 0

      TR-DOS on ZX Spectrum? ProDOS on Apple II? CP/M-80 on plenty of early computers?

      "Can start many programs at once" is not in a definition of "OS" (it's in definition of "multitasking", which may or may not be a feature of any single OS)

      OS is just a program abstracting access to the hardware and providing some common facilities, like I/O, for user programs to build upon.

    6. Re: Hopefully by UnknownSoldier · · Score: 1

      > like Apple 2 and Commodore systems were 8 bit but really didn't have OSes.

      Amnesia much? Do you even understand what the acronym RWTS - Read/Write Track/Sector means? Do you even understand what a File System is? Do you understand what a Device Driver is??

      I also guess these books are just figments of my imagination:

        * Beneath Apple DOS http://www.amazon.com/Beneath-...
        * Beneath Apple ProDOS http://www.amazon.com/Beneath-...

      Gee, I wonder what these programs are?

      * Apple DOS 3.2 and DOS 3.3 = Disk Operating System.
      * ProDOS/8 = Professional DOS
      * ProDOS/16

      Maybe you should try reading the source code before making ignorant claims:

      "Apple ][ ProDOS 1.7 Operating System Source Listing "
      * ftp://ftp.apple.asimov.net/pub...

      References:

      * http://en.wikipedia.org/wiki/A...
      * http://en.wikipedia.org/wiki/A...

      ==
      Piracy === Disrespect.
      Piracy =/= Theft

    7. Re: Hopefully by Anonymous Coward · · Score: 0

      There really haven't ever been 8 bit operating systems.

      What about OS-9? While it got more exposure as OS-9/68k on the 68000 processors, it started off on the 6809 processor and was pretty capable.

    8. Re: Hopefully by Anonymous Coward · · Score: 0

      Concurrent CP/M only ran on 8086 processors and similar as far as I know. CP/M3 ran on 8085 and supported bank switched memory. However, it did not really manage memory for multiple applications/users like one would expect from a full operating system.

  2. Coming from a GNU Hurd developer by Anonymous Coward · · Score: 0, Interesting

    I have been working on Hurd for quite a long while (made contributions to the kernel years ago), and I would like to bring up the pertinent point that Beta sucks!

    1. Re:Coming from a GNU Hurd developer by unixisc · · Score: 1

      Which one? Mach? Viengoos? Coyotos? L4? Which?

  3. Re:Does it run Beta? by Jeremiah+Cornelius · · Score: 2

    User Space Drivers != "Improvement".

    This is normally called a "defect". Performance design failure and security disaster, in one convenient package!

    --
    "Flyin' in just a sweet place,
    Never been known to fail..."
  4. Re:Does it run Beta? by Anonymous Coward · · Score: 0

    Does it run Beta?

    Does it?

    Yes, but commenting doesn't work.

  5. HURD is an embarrassment by realmolo · · Score: 2, Insightful

    Having a project like HURD reflects poorly on Open Source/Free software. It's kind-of emblematic of the major problem with non-commerical software projects; namely, without a central guiding force and a *real* budget, big software projects have a very difficult time getting finished.

    Stallman should just kill it. It's pointless.

    1. Re:HURD is an embarrassment by serviscope_minor · · Score: 4, Insightful

      Having a project like HURD reflects poorly on Open Source/Free software.

      Rubbish. It's a hobby/research project for a few people at the moment. This no more reflects poorly on Open Source software than my crap github account.

      Stallman should just kill it. It's pointless.

      Tell you what, I'll petition Stallman to ask them to stop (RMS doean't have to power to tell people what to do in their spare time and I doubt he'd weald it if he did) if you agree to cease all your hobbies since you're not pro-level at any of them.

      That aside, it's actally beginning to get to the interesting stage. Things are beginning to work quite well. It's soon going to be able to use all of the Linux drivers (i.e. no hardware support problems). The capabilities are interesting because it can do all of this without hacks or root. This gives a much smaller attack surface.

      It's also interesting because the difficult and complex security concious important system code can be written in something other than C very easily. In facy you can cobble together all sorts of stuff in all sorts of languages if desired.

      --
      SJW n. One who posts facts.
    2. Re:HURD is an embarrassment by Anonymous Coward · · Score: 0

      Amen. It's wasting developer time more properly spent on GNU compatible kernels, drivers, and userland tools that actually have more than one user. The Mach kernel is *DEAD* to free software development: it can't be maintained without a dedicated core of paid, proprietary programmers who are in a position to enforce development specifications and to actually control the hardware.

      Stop playing with it!

    3. Re:HURD is an embarrassment by Anonymous Coward · · Score: 0

      Looks like between red and blue pill you choose the green-troll one.

    4. Re:HURD is an embarrassment by jandrese · · Score: 2

      I don't think it reflects badly on FOSS as a whole, it just shows that Stallman doesn't seem to know when he is in over his head, and is too difficult to work with to attract a sizable developer base for support. It is true that Open Source projects need a sensible leader just as much as regular companies do, but that shouldn't be a surprise. I guess there is one problem in FOSS where, especially on non-megahuge projects, when the original leader steps down there is no meta-organization (like some sort of open source CEO) to appoint a new one, and if nobody volunteers a project can flounder and die. I've seen this happen to many projects over the years, even ones I still use despite minimal maintenance for several years.

      Notable examples of this include WindowMaker (which did see a new release a couple of months ago, so maybe someone cares again), and Pan, which was by far the best newsreader available to people with powerful machines but died right around the time most ISPs were pulling their free Usenet access.

      --

      I read the internet for the articles.
    5. Re:HURD is an embarrassment by serviscope_minor · · Score: 2

      just shows that Stallman doesn't seem to know when he is in over his head,

      Yay. Today is "make shit up about Stallman day" just like every other day.

      Let's go for an RMS quote on the HURD:

      "finishing it is not crucial" for the GNU system because a free kernel already existed (Linux), and completing Hurd would not address the main remaining problem for a free operating system: device support.

      --
      SJW n. One who posts facts.
    6. Re:HURD is an embarrassment by Anonymous Coward · · Score: 2, Funny

      This no more reflects poorly on Open Source software than my crap github account.

      Yeah, we weren't going to bring up your "contributions" quite yet, but since you mentioned it...

    7. Re:HURD is an embarrassment by unixisc · · Score: 1

      I am no fan of RMS, but to be fair to him, he had abandoned HURD years ago. His chosen OS is GNU/'libre'-Linux i.e. Linux w/o any 'binary blobs', whatever that is. His preferred distro is gNewSense, running on his Lemote Yeedong laptop, based on the Loongson CPU.

      HURD is now not so much a GNU project as much as a project that some FOSS organizations, like Debian & Arch are interested in. Personally, I think that they should use Minix for their microkernel (fork it to GPL3 if they want) and combine it w/ the HURD servers. Let's see how the combination is. Would be an interesting way of exercising all the cores.

    8. Re:HURD is an embarrassment by DrXym · · Score: 3, Insightful

      But Linux *didn't* exist when Hurd was started. It was the moribund state of development 23 years ago which motivated Linus to write his own kernel. So in a sense we should thank Hurd for being so badly mismanaged, mired in politics and kernel correctness that it drove someone to produce something better and more useful. Pragmatism won the day.

    9. Re:HURD is an embarrassment by unixisc · · Score: 1

      I think that HURD itself is interesting - all the services that sit ON TOP of the microkernel, but I agree w/ you that Mach is an outdated platform for this one. Instead, they should look at Minix 3, which is one of the smallest FOSS microkernels around, and use that as the basis for HURD.

    10. Re:HURD is an embarrassment by unixisc · · Score: 1

      Like I mentioned, Stallman had abandoned this long ago. It's other hobbyists, and Debian and Arch who are working on this.

    11. Re:HURD is an embarrassment by serviscope_minor · · Score: 1

      It was the moribund state of development 23 years ago which motivated Linus to write his own kernel.

      I'm not sure what your point is or if "morbiund" is even right. The Hurd was only started a year before Linux.

      So in a sense we should thank Hurd for being so badly mismanaged, mired in politics and kernel correctness that it drove someone to produce something better and more useful.

      Do you have any citiaions that the hurd was mired in politics and mismanagement in late 1990/early 1991, before Linux was released?

      As far as I know the main problem was adopting the idea of a microkernel before it was really ready for the prime time. That's hardly the daming criticism you are giving.

      --
      SJW n. One who posts facts.
    12. Re:HURD is an embarrassment by Pope · · Score: 1

      And we all know how free and open the PRC is.

      --
      It doesn't mean much now, it's built for the future.
    13. Re:HURD is an embarrassment by jandrese · · Score: 1

      "Your signature project has been in development hell for over 20 years, how do you respond?"
      "Finishing is not crucial"

      --

      I read the internet for the articles.
    14. Re:HURD is an embarrassment by serviscope_minor · · Score: 4, Interesting

      "Your signature project has been in development hell for over 20 years, how do you respond?"

      You're making stuff up. Making up things is generally known as lieing. I'll be generous and assume that you're merely staggeringly ignorant and perfer to regurgitate anti-GNU talking points you've culled from various message boards and have never bothered to actually find out much about the GNU project yourself.

      The HURD kernel is not and has never been the "signature" project. The project is the GNU project (est. 1983) and has been progressing quite nicely. The kernel was not worked on until about 1990. When Linux came along in '91, it was rapidly adopted as the GNU kernel of choice, since it is under an appropriate license.

      The goal is to be able to run computers entirely from copyleft software. The fact that some of these were achieved externally is neither here nor there. The GNU project has in fact achieved its major goal: you can now run a computer on completely copyleft software.

      --
      SJW n. One who posts facts.
    15. Re:HURD is an embarrassment by DuckDodgers · · Score: 1

      Free software is like natural selection - millions of things come out, most suck and die. But the ones that win go big: GCC, LLVM, Firefox, Linux kernel, Perl, Python, MySQL/MariaDB, PostgreSQL.

      Work on and use what you like, don't work on and don't use what you don't like.

    16. Re:HURD is an embarrassment by loonycyborg · · Score: 1

      The thing is it's very hard to determine whether project is or isn't pointless. There's always non-obvious reasons to have it around, maybe as research project, maybe it'll end up linux killer after all, maybe it just will result to some ideas reused in other kernel projects. There's no way YOU would know better than people actually contributing to it. When you're saying that it's pointless you're just randomly guessing.

    17. Re:HURD is an embarrassment by davydagger · · Score: 1

      but the very nature of open source attracted a developer to come in and complete GNU, making GNU/Linux, which is both Free, and working.

      since we have a free working OS, improving it along other lines is a bigger priority than completely finnishing a pure GNU OS. Stallman has his priorities right here. For once he's being pragmatic.

    18. Re:HURD is an embarrassment by HuguesT · · Score: 1

      Thanks, at least that sounds believable.

    19. Re:HURD is an embarrassment by operagost · · Score: 2

      His preferred distro is gNewSense, running on his Lemote Yeedong laptop, based on the Loongson CPU.

      Ye gods, if I didn't know any better I'd say that was all made up gibberish on the spot. Lemote Yeedong... yeah, that's the ticket.

      --

      Gamingmuseum.com: Give your 3D accelerator a rest.
    20. Re:HURD is an embarrassment by UnknownSoldier · · Score: 1

      > So in a sense we should thank Hurd for being so badly mismanaged, mired in politics and kernel correctness that it drove someone to produce something better and more useful.

      I don't disagree with how it is often ironic for some software to be the father of a good idea but someone else comes along and uses that as motivation to produce something even better. The history of computer software is littered with examples. i.e. Closed source compilers -> open source gcc (originally), Xerox Park, Mac GUI, Visicalc -> Lotus 123, Unix -> Linux, Infiminer -> Minecraft, etc.

      What I do disagree with is that I'm tempted to call bullshit on that claim; you do you have _any_ credible sources to back the GNU/Hurd politics claim up ?

      > Pragmatism won the day.
      That is true! It is easy to start a software project, the hard part is shipping it !

      I respect Stallman for giving us GNU, GCC, and Linus for Linux.

      --
      Piracy === Disrespect.
      Piracy =/= Theft

    21. Re:HURD is an embarrassment by Anonymous Coward · · Score: 0

      Yay. Today is "make shit up about Stallman day" just like every other day.

      God damn! You really do need to be slapped right upside the head. You love Stallman, toe-jam-eating and all. We get that. It's nasty, unhealthy, and sad that you idolize a disgusting zealot like him, but that's apparently what floats your boat. The real problem is the hypocrisy of you calling out people for "making shit up", when you've done so regarding Wayland at just about every opportunity on Slashdot. You twist, spin, lie, and spread FUD on a consistent basis, all the while trolling other users with lines like this: "You're making stuff up. Making up things is generally known as lying." You think you're so cleaver, when really you're just a smart-ass prick.

      Well.... enjoy that while it lasts. Sometimes it takes years, but eventually the big trolls like you get served.

    22. Re:HURD is an embarrassment by epyT-R · · Score: 1

      Commercial software projects have their own ways of stagnating.. Needed features disappear due to pressure from marketing's desire to segment the market so customers pay more for less with each new version. Security problems are routinely covered up because the vendor is more worried about image than the actual quality of their product. Large budgets can hinder as well as help development, Windows 8 is a good example where Microsoft just threw money/people at the problem instead of focusing on design coherency (which requires leadership), and what leadership was there had irrational, contradictory goals.

      Of course, there are other user-caustic situations, such as when applications simply disappear because the company folds, leaving its users up a creek. This is especially true with SaaS. If an OSS project's leaders fold, the possibility is there to hire a few programmers to maintain the application as long as it's needed.

    23. Re:HURD is an embarrassment by Anonymous Coward · · Score: 0

      The value of herd is not in having an actual usable operating system out of it, but rather to research the issues they are trying to solve and come up with better operating system design heuristics than "wouldn't a microkernel be nice?"

    24. Re:HURD is an embarrassment by Anonymous Coward · · Score: 0

      And now mismanagement in Linux is driving increased activity in Hurd.

    25. Re:HURD is an embarrassment by smash · · Score: 1

      Exactly. Even back when Linux was announced, the HURD vapourware jokes were around.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    26. Re:HURD is an embarrassment by smash · · Score: 1

      So HURD was started in 1990, Linux was started in 1991, and yet I was using LINUX in PRODUCTION (in an ISP) in 1996. A mere 18 years later, and HURD still isn't even BETA. It is a joke.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    27. Re:HURD is an embarrassment by TWX · · Score: 1

      The goal is to be able to run computers entirely from copyleft software. The fact that some of these were achieved externally is neither here nor there. The GNU project has in fact achieved its major goal: you can now run a computer on completely copyleft software.

      If I understand it correctly, that was not the original goal of the GNU project. The original goal was to provide a a free operating environment. The goal was not to replace all commercial applications or to nit-pick free-to-use-but-commercial software, but to provide a medium on which the user could work, consistently and freely, to avoid vendor lock-in where one software company develops a vertical monopoly, where their required applications run only on their operating system, which promotes more of their own applications to the exclusion of other vendors.

      If that understanding is wrong, please correct me, but that's my biggest beef with Stallman et al.

      --
      Do not look into laser with remaining eye.
    28. Re:HURD is an embarrassment by Bite+The+Pillow · · Score: 1

      It is still part of open source. It is still the face of the free software movement. Don't compromise on principal, but use something that barely works.

      Open source operating systems that come to mind - Linux, "it works, it's free, people use it". Otherwise, Haiku copying BeOS, ReactOS copying Windows but not as well. And the running joke, GNU Hurd.

      And your crap github account also is part of open source. If I look for whatever you have, and your account pops up in the list, am I supposed to know somehow to discard or discount your code? Is there some marker somewhere that says, "Sorry, this code should not be used or indexed, or considered part of the open source community"?

      I'm guessing it doesn't. I'm guessing it's there because someone, somewhere, might be able to use it. To the billions of people who cannot use it, is it worth anything? Is Linux worth anything to those same people?

      I would say that we can calculate a direct and indirect benefit from Linux, and it reflects positively on open source as a success. Equally, we can calculate little or no benefit to open source. To the few people who use it as a hobby/research project, it may be invaluable. But you are talking about Open Source in general, to people in general. It looks like a failure. Maybe not to you, but you don't get to determine how other people view open source.

      I disagree that it should be stopped. That doesn't mean it is a good example of how open source works. Every other project from GNU seems to be successful, and reflect well on both open source in general and free software specifically. That does not exempt Hurd.

    29. Re:HURD is an embarrassment by Pseudonym · · Score: 2

      They did play with L4, which is an even better choice.

      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    30. Re:HURD is an embarrassment by dbIII · · Score: 1

      Yes that little gem cracked me up at the time. That's when RMS went from pretending linux did not exist (the "never HURD of it" joke in every interview or appearance, sometimes multiple times in one interview, for YEARS) to hinting at ownership "in the good cause of promoting GNU" by pushing the stupid LiGnuX name and then the gnu/linux name.
      Linux is not a gnu project.

    31. Re:HURD is an embarrassment by dbIII · · Score: 1

      but the very nature of open source attracted a developer to come in and complete GNU

      Now that's an obvious troll if I've ever seen one. Are you going to suggest Charles Manson for sainthood as your next trick?

    32. Re:HURD is an embarrassment by Anonymous Coward · · Score: 0

      "It will never be the kind of professional OS that Hurd will be (in the next century or so :)"

      - Linus Torvalds, Dec' 91.

    33. Re:HURD is an embarrassment by serviscope_minor · · Score: 1

      I'm not sure what your point is. It's not an embarrassmet to the FSF and it's not a flagship project. It's yet-another-kernel to go with all the yet-another-language or yet-another-shell or yet-another-editor. Basically at this point (as has been the ase since the early 90's) it's the pet research project of a small group of people.

      If you feel like mocking it, go ahead, whatever floats your boat dude, I can't stop you.

      Personally, I like the way it's heading. I've been vaguely following its progress for years, and this release is beginning to get pretty interesting.

      --
      SJW n. One who posts facts.
    34. Re:HURD is an embarrassment by serviscope_minor · · Score: 1

      It's not 100% clear on the matter, but it does describe more than just an operating environment:

      http://www.gnu.org/gnu/manifes...

      Bear in mind that basically everything was commercial by that stage. By the later paragraphs, talking about the particular freedoms, it seems to allpy well to all software.

      --
      SJW n. One who posts facts.
    35. Re:HURD is an embarrassment by Anonymous Coward · · Score: 0

      Linux is not a gnu project.

      Most emphatically not. It is a kernel and some core facilities. Most of the userland is a GNU system. That includes a sizeable amount of third-party free software (the ratio has increased over the years) and all the components architectured by the GNU project that were missing for a complete system.

      A GNU/Linux system is like a mortar/rock wall. Except that a sizable number of rocks were also manufactured by GNU, and that future generations of the wall considered mortar from other sources as well. Also more external rocks than initially.

      The system compiler is GCC, the system libraries are Glibc, the core text and file facilities are GNU, the default shell is GNU Bash. If you exchanged the Linux kernel for a BSD kernel, this would be less noticeable to the user than if you exchanged the GNU userland components for BSD components.

      Point of the "GNU/Linux" naming campaign was to keep people aware that the system they are working with is not just attributable to a hero figurehead "Linus Torvalds" (a simplification that is actually pretty insulting to Linux core developers as well but is rather popular with the media). It was not intended to make people take a liking to Richard Stallman. While it definitely did not do the latter, it arguably had some success with the former.

    36. Re:HURD is an embarrassment by DrXym · · Score: 1

      I'm not sure what your point is or if "morbiund" is even right. The Hurd was only started a year before Linux.

      The 3rd definition of moribund on dictionary.com is what I meant - not progressing or advancing; stagnant. Of course perhaps my frame of reference was too short. Maybe I should have measured progress across decades.

      Do you have any citiaions that the hurd was mired in politics and mismanagement in late 1990/early 1991, before Linux was released?

      I didn't say it was. Linux didn't become better and more useful the instant that 0.01 came out. But it was the utter lack of progress with Hurd which meant Linux gained critical mass. Hurd couldn't even bootstrap until mid-1994 and a dist only crawled out into the light of day in 1997. It was too late by then.

    37. Re:HURD is an embarrassment by DrXym · · Score: 1

      Clearly it was. Linus was itching to produce a kernel that ran on his 386 hardware but was more Unix-like than Minix. And Hurd wasn't scratching that itch. It seems it didn't scratch anybody's itch for that matter.

    38. Re:HURD is an embarrassment by Anonymous Coward · · Score: 0

      And we all know how free and open the PRC is.

      I prefer my jailers to live as far away from me as possible.

    39. Re:HURD is an embarrassment by serviscope_minor · · Score: 1

      The 3rd definition of moribund on dictionary.com

      Perhaps you should actually read the definition rather than regurgitate it. People were working on it.
      Not producing usable results is not the same as stagnant. It was a year old, people were working on it, it wasn't ready because it was a much harder problem than expected. It becme morbiund for a while after Linux came onto the scene as developers left.

      I didn't say it was.

      Oh my bad. You see, when you said: " So in a sense we should thank Hurd for being so badly mismanaged, mired in politics", I thought you meant that the Hurd was being mismanaged and mired in politics. Looking back at your post it seems obvious now and I can't imagine how I misunderstood you.

      Beyond that I have no idea what point you're trying to make. No one's disputing that the Hurd wasn't producing usable results in the early 90's and Linux ate its lunch in short order.

      --
      SJW n. One who posts facts.
    40. Re:HURD is an embarrassment by Anonymous Coward · · Score: 0

      If you have an issue with freedom of choice, and not to choose. Then you have serious issues.

    41. Re:HURD is an embarrassment by DrXym · · Score: 1

      Perhaps you should actually read the definition rather than regurgitate it. People were working on it.

      Er what? I know what moribund means and I used it without expecting someone to start nitpicking. The definition is there. It applies.

      Oh my bad. You see, when you said: " So in a sense we should thank Hurd for being so badly mismanaged, mired in politics", I thought you meant that the Hurd was being mismanaged and mired in politics. Looking back at your post it seems obvious now and I can't imagine how I misunderstood you.

      Ah yes, it was my fault that you misinterpreted what I said. I see now. It's so obvious.

    42. Re:HURD is an embarrassment by dbIII · · Score: 1

      Point of the "GNU/Linux" naming campaign was to keep people aware

      I read the gnu newsletter that you should take a look at. It was an "ends justifies the means" thing of advertising gnu by painting their name on someone else's wagon. LiGnuX was the first name suggested but it didn't get any traction.

      attributable to a hero figurehead "Linus Torvalds"

      Ah yes - RMS was jealous of someone that was respected more than himself and rolled that one out. Linus is no hero figurehead and has tried far less than RMS to be one.

    43. Re:HURD is an embarrassment by TWX · · Score: 1

      Well, then that's where I do have a problem with the GNU manifesto. Commercial software pays the salaries of developers and ensures that a significant number of developers are trained to produce a pool that can work on open source. Without at least some form of personal profit, I don't see that many people receiving degrees in computer science or an associated field.

      --
      Do not look into laser with remaining eye.
    44. Re:HURD is an embarrassment by cheesybagel · · Score: 1

      Not to mention Emacs. Which is an entire operating system all by itself.

    45. Re:HURD is an embarrassment by Anonymous Coward · · Score: 0

      "More difficult than expected" is equivalent to "Stallman was in over his head."

    46. Re:HURD is an embarrassment by LWATCDR · · Score: 1

      HURD was the signature project for GNU. The whole point of the GNU project was a Free Open Source Unix like operating system. GNU stands for GNU is Not Unix. I don't have a problem with HURD as a project. I am all for grand experiments and now that we have Linux as a production FOSS operating system HURD can fill that roll. HURD may not now be GNUs signature project but at one time it really was.
      I will add that I find Minix 3.0 to be very interesting project that is not getting the attention that it deserves.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    47. Re:HURD is an embarrassment by LWATCDR · · Score: 1

      Got to love the idea of someone that is so concerned about freedom using an all Chinese laptop. Buying an all Chinese computer because you are worried about US spying is like feeling the US to Nazi Germany because you were worried about anti-semites.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    48. Re:HURD is an embarrassment by smash · · Score: 1

      My point is that there is no reason anyone would ever actually run it, other than to develop it for the sake of development, and responding to the excuses put forward that HURD was only started in 1990 as reasoning that it is unreasonable to expect something usable. Linux took about 4-5 years to become usable in a business for production use. The fact is that we're 23 years down the road with HURD and there's still no usable product.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    49. Re:HURD is an embarrassment by davydagger · · Score: 1

      that comment has absolutely nothing to do with my comment?

      sense you make not!

  6. Micro Kernel, Failed Computer Science Pipe dream by Anonymous Coward · · Score: 0

    Hurd is based on a failed Computer Science Pipe Dream, the Micro Kernel. Why would anyone embrace something that is so slow? (except to write a phd thesis)

  7. Re:Does it run Beta? by Anonymous Coward · · Score: 0

    No, but it finally runs Duke Nukem Forever.

  8. Re:Does it run Beta? by Anonymous Coward · · Score: 5, Informative

    It also has security advantages, in that drivers don't run in ring zero can't access all memory.
    Performance is less of a problem nowadays, because we have fast chips like the Pentium III.

  9. Linux vs. Hurd/xBSD by jellomizer · · Score: 4, Interesting

    As a rule, I support the idea of making a new OS just for the sake of it. But the important thing to realize most of these will never really get too far as in terms of market share.

    Linux success was by luck. It came out when BSD had a lot of serious licencing issues and a big demand for something free, it was developed to a point of being useful fairly rapidly and got a lot of attention. At the same time the 32bit computers for home users were available, and people were jumping on getting a Real OS to do real work on. MS/DOS and Windows 3.1 wasn't a good option, for real work, other solutions just costed way too much money.

    Hurd which was made during the same time BSD was having their issues, however it was more of am ambitious project, and couldn't get in during that opening which Linux did.

    Now BSD with Free/Open/Net being based on original Unix code, came out of the Licencing mess as an open solution, with some still bad taste in peoples mouth. However they came out a bit more stable than Linux at that time. Where xBSD was being used in a business production settings, for a long time, while Linux matured and took over.

    There is a lot of flamewars about GNU being superior then the new BSD license. Saying Linux is proof of this. I would disagree GNU and BSD are both Open Enough standards for general adoption, and Linux success was based on getting in at the right time. Otherwise you would expect HURD to be nearly as possible as BSD is now.

    --
    If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    1. Re:Linux vs. Hurd/xBSD by iggymanz · · Score: 0

      No, Linux success not by luck, who else made alternative free operating system kernel that was Unix work-alike at that time?

      HURD has floundered around since the 1980s, trying this and that and still not a production ready or usable system, it's a school science project. It is not serious OS kernel for production use.

    2. Re:Linux vs. Hurd/xBSD by Trepidity · · Score: 3, Interesting

      I agree it's basically a confluence of circumstances. Fwiw, while GNU's kernel project was pretty unsuccessful, I do think their more general project of trying to put together all the parts of a free Unix-like was quite useful, and one part of the circumstantial confluence. With BSD tied up in licensing issues at the time, Linus was able to basically grab the GNU compiler, libc, userland, etc. and make a working system. GNU's efforts were less essential to the BSDs after the lawsuit was resolved, but still fairly important in the early years to get something up and running: the lawsuit resolution resulted in ripping out the AT&T-licensed code from BSD, a bunch of which was replaced by GNU utilities as drop-in replacements. These have since been re-replaced in most of the BSDs ('grep' was one of the last GNU utilities to be phased out), but served as a pretty useful 20-year stopgap. And of course GCC had replaced the traditional CC much earlier (GCC appears in 4.3BSD).

      One missing bit of this soup that's a real shame, imo: The very late open-sourcing of Plan9 led to a bunch of good stuff that could've been pulled in being ignored. If at least parts of Plan9 had been available in the early '90s when this GNU/BSD/Linux code was coalescing into free operating systems, Plan9's code could've contributed usefully.

    3. Re:Linux vs. Hurd/xBSD by Anonymous Coward · · Score: 0

      Linux won because it was targeted at the hardware people already owned -- 386 PC clones.

      Aside from legal issues, early *BSD was a rather half-assed port. For example, it couldn't be dual-booted with DOS, was picky about certain hardware, expected SCSI, etc.

    4. Re:Linux vs. Hurd/xBSD by Anonymous Coward · · Score: 0

      No, Linux success not by luck

      Luck is being somewhere at the right time usually and being able to spot the situation.

      Right now the reason linux is as good of shape as it is now is because IBM/RH/HP/Google/Oracle/etc are putting some cash/engineering up to fix things. If they didn't exist the whole linux would still be a mire of dozens of distros fighting it out instead of 1-3. Hurd does not have that (I doubt it ever will). Until it has some sort of corporate sponsorship it will continue to be hobbyist playing around much like linux was until IBM said 'lets move some of our OS stuff over'.

      Think that is false? Ok look at GCC. Same thing. Until corporations started putting real money into it the GCC state was basically 'works but awful'.

      I remember Linux from the late 90's it was not pretty. It was pretty sweet if you were into tinkering around with OS's though as there was a ton of stuff to do.

    5. Re:Linux vs. Hurd/xBSD by Anonymous Coward · · Score: 0

      No, Linux success not by luck, who else made alternative free operating system kernel that was Unix work-alike at that time?

      Strangely enough; as mentioned in the comment you replied to; the BSD team.

      The BSD team started on a much more solid basis than Linux; they began from a complete working system; they had much more in the way of kernel development experties. Once the AT&T lawsuit was over they had a nice clear legal status. They always had more sound development methodologies and realistic planning. There were even, at one point, many more commercial devices based on BSD (think of NEXTSTEP, BIGIP, JunOS, Nokia's IPSO, Sony NEWS-OS, Ultrix, SunOS etc. etc.). The thing is, as with the current OSX, each of these devices took the code, and took some developers, but contributed almost nothing back. Those companies which did contribute back ended up giving their competitors a present which those competitors never returned.

      Linux, on the other hand, had a much weaker situation. A student project; starting from almost nothing. Linux had few commercial backers and had to grow most of them (RedHat; SUSE etc) from nothing. However, Linus' brilliant decision to choose the GPL meant those people's investment was protected and rewarded.

      To blame this on luck and/or timing is to completely forget history. There were many alternatives competing with Linux whilst it was still young (Minix; 386BSD; FreeBSD; NetBSD; Plan9; QNX; Coherent etc.) and many of those were non copy-left open source. What made Linux special is that it was the working GPL operating system and so made a safe base for its contributors to work together.

    6. Re:Linux vs. Hurd/xBSD by rahvin112 · · Score: 1

      Linux won because it was GPL. Up until that point no company would contribute to open source because their rivals could take their inventions, improve them and not share them back. This is the same thing that caused UNIX's original fragmentation. GPL prevented that, it gave any company contributing a guarantee that anything they put in that someone else improves they get to use as well.

      IMO it's only the success of GPL that showed companies that forking was unprofitable that led some of those same companies to embrace BSD projects. Even with that success I don't think a BSD kernel will ever displace Linux. BSD licensed software has it's place in some of the other stacks where there is little innovation and lots of advantages for cooperation. But anything on the cutting edge is going to be GPL or not open source because of that same risk that split UNIX and handed the PC market to Microsoft.

      I see the same UNIX split in the webkit fragmentation. Two companies at odds that don't want to share back certain innovations led to forking webkit. Because of BSD the shared workload is gone, though they will likely watch each others open side and reincorporate improvements the simple fact remains that both forks will likely never re-merge. I like BSD, it's a bit purer of an OSS license IMO, but like Libertarianism and Communism it makes great ideology when you assume everyone has perfect and pure motives and is terrible in practice because there are a lot of people out there that don't know how to work together and are bloody selfish.

    7. Re:Linux vs. Hurd/xBSD by dbIII · · Score: 1

      Linux success was by luck

      Definitely not. I'd say it's by hard work, and unlike HURD, allowing others to contribute their own hard work.

    8. Re:Linux vs. Hurd/xBSD by jellomizer · · Score: 1

      Almost nothing back. But they did contribute something.

      If it were under GPL these companies would have avoided it, and gave nothing back.
      If you want to scare a business who's main business model is selling software licenses, is to try to convince them to use a GPL alternative.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    9. Re:Linux vs. Hurd/xBSD by Anonymous Coward · · Score: 0

      Linux won because it was GPL. Up until that point no company would contribute to open source because their rivals could take their inventions, improve them and not share them back.

      Complete bullshit.

      This is the same thing that caused UNIX's original fragmentation.

      Ridiculous oversimplification.

      As the designated telephone monopoly of the USA, AT&T was prohibited from competing in other businesses. As a result, they couldn't sell this interesting OS their Bell Labs researchers had invented for internal use. Said researchers were able to wrangle management permission to share it with outsiders. Once it hit universities, its portability and code clarity made it popular for production use, teaching, and research. It was also shared with several commercial entities, who made proprietary derivatives.

      As I understand it, this original AT&T UNIX code was not licensed with anything we'd recognize as an open source license today. It was proprietary, and so were the commercial derivatives. Universities got a murky and somewhat more open license which permitted more freedoms, but only in an academic context. So there wasn't any real open source license at all.

      That slowly changed. During the 1980s, even as UNIX took off like wildfire in universities, AT&T stopped updating its code much. UC Berkeley was particularly enthusiastic about modifying UNIX for its own needs, eventually replacing so much of the original AT&T code in their "Berkeley Standard Distribution" (shared with other universities) that, sometime around the end of the 1980s, people began to envision the possibility of a BSD release completely free of AT&T legal entanglement. There was tremendous interest in this, commercial and otherwise.

      However, AT&T's regulatory situation was also changing. The company had been broken up into the "Baby Bells". With the national telecom monopoly gone, the government was also easing restrictions on AT&T's entry into other markets. AT&T began trying to monetize UNIX. It filed a copyright infringement lawsuit against UCB and other BSD entities, claiming that even the new code in BSD was derivative of AT&T UNIX and therefore their intellectual property.

      Before the lawsuit, lots of people and companies were ready, willing, and eager to build a new open source ecosystem on top of BSD and the BSD license. The lawsuit put it all on hold for several years. That was the climate in which Linux was born and subsequently flourished. You can claim the license choice was good, and I won't argue with you, but Linux took off like a rocket mostly because it was a UNIX-like kernel written from scratch by a kid in Finland who had never seen the AT&T code, and therefore it had no forseeable legal issues (people at the time didn't anticipate the insanity of the SCO lawsuit).

      The other important factors were that the Finnish kid was pretty open to contributions, grew into an effective project manager, and provided new opportunities for some of the people alienated by cliquishness in the BSD kernel community. By the time the BSD lawsuit was resolved, mindshare had shifted to Linux, and the rest is history. A classic case of being in the right place at the right time.

      GPL prevented that, it gave any company contributing a guarantee that anything they put in that someone else improves they get to use as well.

      You've got a bad case of FSF-induced paranoia. There are many non-GPLed projects which do fine without such a license-imposed guarantee.

      The thing is, maintaining proprietary changes to a complex project is a pain in the ass. Say you're running Evilco, and you want to fork and extend LLVM for your nefarious purposes. Great! But now you're committed to maintaining your own private fork. Corporate use of open source actually is all about getting the benefit of freely shared work without paying money for it. (

  10. Re:Does it run Beta? by Anonymous Coward · · Score: 5, Informative

    If you're going to disagree with the whole security community on a security issue, you might want to explain why.

    Everybody I know who has any security credentials believes monolithic kernels are a security risk. I have about 20 years of security specialization, and I agree with that view.

    If you have an IOMMU, your drivers belong outside kernel address space. If you don't have an IOMMU, you need to get one.

    This does not imply that Hurd has done it right. I know nothing about that. It is possible to do it wrong.

  11. Re:Does it run Beta? by Anonymous Coward · · Score: 0

    Liedtke proved that if you design your kernel with high-performance IPC in mind, the cost is negligible, plus you get the security BENEFIT of not running your drivers in Ring-0 (which gives them full access to the address space).

    Not to say that Hurd fully takes advantage of these insights.

  12. Re:Does it run Beta? by unixisc · · Score: 1

    With multi cores, and a lack of applications that can thoroughly stress them, one could run the ring 0 kernel mode stuff on 1 CPU, ring 1 on a second, ring 2 on a third and ring 3 on a fourth. So performance doesn't have to necessarily take a hit.

  13. Re:Does it run Beta? by MightyMartian · · Score: 1

    Christ man! Keep your voice down, lest Torvalds and Tenenbaum waken from their uneasy slumber and the Kernel Wars arise anew.

    That being said, I tend to agree, and with the speed of processors and RAM these days, microkernels should have a better chance than they did in the past.

    --
    The world's burning. Moped Jesus spotted on I50. Details at 11.
  14. Re:Does it run Beta? by unixisc · · Score: 1

    Does Mach 3 support having drivers in user space, as opposed to kernel space?

  15. Hurd hurd hurd by Anonymous Coward · · Score: 0, Flamebait

    Have you heard about the Hurd?
    Well, everybody knows that the Hurd is a turd!

    Hurd Hurd Hurd
    The Hurd is a turd

    Hurd Hurd Hurd
    The Hurd is a turd

    1. Re:Hurd hurd hurd by Anonymous Coward · · Score: 1

      Maybe we're just old, but I thought it was funny.

  16. Can drivers move so easily from kernel to user? by unixisc · · Score: 1

    I'm not a developer, but if a Linux driver exists that is written to sit within a kernel, the way it is in Linux, how does one have that driver run in user mode in any OS? I'm somewhat not getting that.

    1. Re:Can drivers move so easily from kernel to user? by Unknown+Lamer · · Score: 2

      There's a Device Driver Environment that emulates parts of Linux as calls to other servers and Mach. Slides 22-25 have a bit of info on the port from running inside Mach to userspace.

      --

      HAL 7000, fewer features than the HAL 9000, but just as homicidal!
  17. Re:Micro Kernel, Failed Computer Science Pipe drea by Dr.+Spork · · Score: 4, Informative

    I really think you're wrong. QNX, for example, is an amazing, fast operating system. Microkernels make certain things difficult, but for all of those difficulties there are technical solutions. That HURD can't implement these is not the fault of the microkernel architecture.

  18. Server-Client vs Monolithic operating system archi by Anonymous Coward · · Score: 0

    Sorry but it doesn't matter with Server-Client architecture operating systems are drivers located in User Space or in Kernel Space as long they are separated from the microkernel itself.

    The whole reason why Server-Client architecture exist was to avoid problems what the Monolithic operating system architecture had with device driver or operating system function crashing causing whole operating system (kernel) crashing and so on the whole software system to crash at that moment.

    But as we can see, Monolithic OS architecture isn't a problem like Linux kernel can proof that whole operating system can be a monolithic but still modular in binary level and be very stable, secure and fast.

    Hurd would have been nice operating system if they would have got their microkernel working right and they would not chose to use Server-Client architecture for it instead superior Monolithic architecture what Linus Torvalds chose to Linux operating system (went on that time under different name before it got renamed as Linux as everyone knew it afterwards and before GNU fans tried to claim Linux is a microkernel and not a monolithic).

  19. Kernel, not a microkernel by Anonymous Coward · · Score: 0

    He said "kernel" and not to "microkernel". So he means the whole HURD operating system and not just its one of the many microkernels HURD has included.... this in sense that he claims HURD is a kernel like monolithic operating systems are instead HURD is server-client and so on just operating system and not a kernel because it has a microkernel and servers.

  20. Re:Does it run Beta? by Bacon+Bits · · Score: 1

    I'm sorry, but what? Running drivers as the kernel in ring 0 -- which is the Linux model since it's a monolithic kernel -- is a better security model than user space drivers? How about running as root and writing directly to /dev/mem for memory mapped devices? Is that a better security model, too?

    --
    The road to tyranny has always been paved with claims of necessity.
  21. Re:Micro Kernel, Failed Computer Science Pipe drea by unixisc · · Score: 1

    It used to be slow on single core CPUs. But does that have to be the case w/ today's multi-cores? I would think that in the x64, each ring could have its own CPU. They could run the microkernel on one core in ring 0, the OS management on a second on ring 1, and the user mode programs on a third on ring 2, and any VMs in ring 3.

  22. Re:Does it run Beta? by Jeremiah+Cornelius · · Score: 2

    How about subjecting hardware access to the same environment as arbitrary use case and unlimited connectivity options of a user context.

    Whoops! Flash exploit just took over my filesystem and network card!

    --
    "Flyin' in just a sweet place,
    Never been known to fail..."
  23. Re:Does it run Beta? by Jeremiah+Cornelius · · Score: 1

    Have you ever seen this done well? It always looks good on paper.

    What about virtualization, and byte-code virtualmachine processes? How many context switches will you do "all the way down"?

    --
    "Flyin' in just a sweet place,
    Never been known to fail..."
  24. Re:Does it run Beta? by Jeremiah+Cornelius · · Score: 1

    Theory is outdated, and not taking into account past 10 years of experience.

    Kernel can be whitelisted. Userspace? Good luck.

    --
    "Flyin' in just a sweet place,
    Never been known to fail..."
  25. Straw man by Anonymous Coward · · Score: 0

    Straw Man

  26. Fuck you, beta by Anonymous Coward · · Score: 0

    Then it's simply less efficient in terms of power.

    1. Re:Fuck you, beta by smash · · Score: 1

      Given the user is going to be running crap like Java anyway, I don't see that the minor performance hit running a microkernel has is going to make a heap of difference.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
  27. Comment removed by account_deleted · · Score: 2

    Comment removed based on user account deletion

  28. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  29. Hmmmmmm by Anonymous Coward · · Score: 0

    Hmmm, should I install Hurd or Plan9? .....

    1. Re:Hmmmmmm by unixisc · · Score: 1

      If you want an FOSS version of Plan 9, you should go for Inferno

    2. Re:Hmmmmmm by nurb432 · · Score: 1

      Plan 9 works, today. If you want to stay current, you want to go with 9Front however.

      --
      ---- Booth was a patriot ----
    3. Re:Hmmmmmm by nurb432 · · Score: 1

      Plan 9 is open too.

      On Inferno, has there been any activity at all the last few years from vitanuova? Seems like its totally stagnant at this point. Not flaming, but i cant see anything going on now.

      --
      ---- Booth was a patriot ----
    4. Re:Hmmmmmm by Anonymous Coward · · Score: 0

      More specifically, Plan 9 is GPL licensed. It's about as open as you can get.

  30. GNU HURD by Chas · · Score: 2, Funny

    Bringing you the technology of 1997...TODAY!

    --


    Chas - The one, the only.
    THANK GOD!!!
    1. Re:GNU HURD by operagost · · Score: 0

      Oh, come on. Microsoft still hasn't released a USB driver for Windows 3.1, either!

      --

      Gamingmuseum.com: Give your 3D accelerator a rest.
    2. Re:GNU HURD by smash · · Score: 1

      Given that 3.1 was almost 2 major releases old by the time USB came out, i'm not surprised.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    3. Re:GNU HURD by ChunderDownunder · · Score: 1

      Ah, the old Useless Serial Bus.

      Win9x gained USB support but I remember around 2003/4 enterprises were still using PS/2 mice and keyboards on NT 4 workstation.

    4. Re:GNU HURD by Ashtead · · Score: 1

      From what I remember, NT 4 didn't support USB very well, if at all. Windows 2000 however, did work reasonably well with USB. So unless they had upgraded to Windows 2000 or XP, they would still be stuck with the PS/2 -connected devices.

      Interestingly enough, the summary indicates that Hurd still doesn't support USB ... that does limit the selection of useful hardware.

      --
      SIGBUS @ NO-07.308
    5. Re:GNU HURD by smash · · Score: 1

      Last I checked, I don't think it supported anything other than IDE either, but admittedly that was a few years ago. I just remember being curious to try it, looking at the supported hardware list, thinking "I don't have anything that ancient anymore" and moving on...

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
  31. re: HURD is an embarassment by Anonymous Coward · · Score: 0

    Wouldn't this make a good automated testing layer for kernel modules?

  32. Re:Does it run Beta? by Anonymous Coward · · Score: 0

    Are you only running little toy apps? Anything involving multimedia, databases, compilers/dev tools, etc. can easily stress 8 and 16+ core systems. Maybe if all you run all day are Twatter/Friendface and fart apps this might be true, but or anyone actually using a computer can easily stress multi-core systems.

  33. Re:Does it run Beta? by Billly+Gates · · Score: 1

    It also has security advantages, in that drivers don't run in ring zero can't access all memory.
    Performance is less of a problem nowadays, because we have fast chips like the Pentium III.

    MacOSX and Windows Vista/7 have had this for many years now.

  34. Re:Micro Kernel, Failed Computer Science Pipe drea by DuckDodgers · · Score: 1

    My understanding is that inter-core communications, while fast, are not as fast as the things a single core can do by itself when only interacting with the level 1 cache. Since the rings of a microkernel would be communicating very frequently and as fast as possible, I'm not sure it would work better.

    But more importantly, free software is full of tens of thousands of experiments that didn't seem to make sense at a start. Most wither and die, a few become very big and hugely popular, and even the ones that never see widespread use often serve as a way their authors learn more about the problems they're trying to solve. Maybe the next major revision of the HURD will contain some architectural innovation that improves speed. Maybe some HURD developer, or even just someone reading the HURD source code, will learn something that makes them a better contributor to monolithic kernels. Any benefit is great, nobody is forced to work on it or use it.

  35. Re:Does it run Beta? by Anonymous Coward · · Score: 1

    Ummm.

    Kernel-space drivers have arbitrary access to hardware since ever. There is no way to effectively limit what a ring 0 process has access to - you can only trust them not to meddle where they're not supposed to. A misbehaved or malicious printer driver _can_ ruin your harddrive, or send your bank credentials to a server in Indonesia.

    User-space drivers have to request access to hardware resources from the kernel. If a user mode driver requested (and was approved) access to memory range 0x12340000-0x23450000, IO range 0x3d0-0x3e0 and IRQ10 - that's all it can use. Kernel mode driver's requests for those resources are more of a courtesy, not a restriction.

    PS: Flash exploits (and even TIFF or .LNK icon exploits) took over filesystems and network cards on Windows just fine. Often thanks to the bugs in a kernel part of graphics driver, win32k.sys. And, yep, that's exactly what moving everything into user space is meant to prevent.

  36. Re:Micro Kernel, Failed Computer Science Pipe drea by Trepidity · · Score: 2

    An interesting historical tidbit about QNX is that it was started more or less on the basis of a textbook implementation of a microkernel with real-time features. In the literal sense that the company's co-founders did a class project where they implemented a basic realtime microkernel in an OS class, wondered why there wasn't something similar in the marketplace, and founded a company to sell it.

  37. IOMMU is for restricting device's memory access by pikine · · Score: 1

    I think you confused the purpose of IOMMU. It's for restricting the device's memory access. Without IOMMU, it just means that any firmware running on the device's coprocessor can access the main memory unrestricted, meaning that a hacked firmware can root the machine. IOMMU virtualizes device's access to main memory so that doesn't happen. On a machine without IOMMU, you can still run device drivers in user space as long as the kernel sets up the correct memory mapping for the device's PCI address space. That's called memory mapped I/O and has nothing to do with IOMMU.

    --
    I once had a signature.
    1. Re:IOMMU is for restricting device's memory access by amorsen · · Score: 1

      With the IOMMU, the userspace driver sending malicious commands to the device will not enable that driver to access memory that it should not access.

      Without the IOMMU, the kernel needs to inspect every command sent to the device in order to check that the userspace driver is not malicious. This is not good for performance.

      Depending on the device and the bus, there may be other ways to interfere with normal system operation, so an IOMMU is not necessarily a complete solution.

      --
      Finally! A year of moderation! Ready for 2019?
    2. Re:IOMMU is for restricting device's memory access by cheesybagel · · Score: 1

      MMIO is slow. To me the IOMMU is as important as the MMU was in the past to ensure system stability and security. You certainly do not want a malicious or buggy piece of hardware writing crap all over the rest of your system any more than you would want someone's program to do the same in a system without memory protection.

  38. Re:Does it run Beta? by Anonymous Coward · · Score: 3, Interesting

    Oh, shut up.

    Windows Vista/7 still haven't even completely separated GUI from ring 0.

    Last year had like 5 or 6 vulnerabilities messing with kernel mode to varying degrees simply by trying to display malformed images (and those vulnerabilities were all there at least since WinXP).

    My favorite, for sheer WTF-ness, was "display an iframe of a very specific height - get a BSOD". You can find a bunch more by searching for "win32k.sys+(vulnerability|cve)"

  39. Re:Does it run Beta? by unixisc · · Score: 1

    I'd think that initially, very few people would be running multimedia, databases, simulation programs on HURD. Compilers/dev, yep. But in real life, very few programs are embarrassingly parallel so as to easily stretch systems no matter how many cores are tossed at them.

  40. Shazbot!??? by Anonymous Coward · · Score: 0

    Shazbot! We ran into some trouble getting the comments.
    Try again... na-nu, na-nu!

    WTF IS THIS GARBAGE?
    Fuck Beta!

  41. GNU Hurd: A Solution In Search of a Problem by sirwired · · Score: 2

    I'm not saying that Linux is the be-all, end-all of Free Operating Systems, but after 24 years I think Hurd meets the definition of a failed software project. (And you think Duke Nukem Forever was in development for a while!)

    If the developers want to continue developing it, great. But I hope the project is not siphoning off any resources from the FSF's productive work. But I have my doubts as long as the FSF webpages continue to treat Linux as some sort of temporary work-around to Hurd not being available. (And please, just please, let go of the whole GNU/Linux thing... that ship sailed about fifteen years ago.)

  42. That's nice... by SplawnDarts · · Score: 4, Funny

    User space driver's are one thing, but I'm still waiting for the day whe HURD gets a user.

  43. Re:Does it run Beta? by epyT-R · · Score: 1

    yes, if you don't mind getting the performance of a Pentium 3 out of your core I7 system whenever that driver becomes the I/o bottleneck. All that extra context switching basically guarantees it will happen regularly.

  44. at this rate of progress by FudRucker · · Score: 0

    GNU?Hurd will be at the same level of hardware support as Windows 95 in a few years

    --
    Politics is Treachery, Religion is Brainwashing
  45. Re:Does it run Beta? by epyT-R · · Score: 1

    I can see corner cases for microkernels, like single-purpose/banking/ATM machines where security is paramount. SCADA (though latency might be an issue) might be another good application. However I bet there isn't hardware fast enough to compensate for them in performance critical systems like stock markets.

  46. Re:Does it run Beta? by LordLimecat · · Score: 1

    Gasp, you mean there are architectural security advantages to the way NT is designed vs how Linux is?

    Dont let the rest of the community hear you, youll end up tarred and feathered.

  47. Good work guys by lkernan · · Score: 0
    "Hurd developers also have working IDE support, X.Org / graphics support, an AHCI driver for Serial ATA, and a Xen PV DomU."

    These guys are fast!
    IDE AND AHCI. wow!

  48. Re:Does it run Beta? by Anonymous Coward · · Score: 0

    You are still dealing with extra context switching that kills performance. Modern PCs depend on DMA for performance, especially for devices with huge IO and low latency requirements (GPUs for instance).

  49. Re:Does it run Beta? by Anonymous Coward · · Score: 0

    Great, so we can regress to 1996 era performance on a core i7? For what purpose? To compensate for the stupidity that is having things like scriptable browsers? It would be a lot easier and faster to quit building these endless stacks and focus on making programs for single uses. The browser should be used to render static html.. Dynamic stuff happens on the server. Now you get security AND performance.

  50. Re:Micro Kernel, Failed Computer Science Pipe drea by LoRdTAW · · Score: 2

    Your answer sounds like it is nothing more than the regurgitated result of the Torvalds - Tenenbaum debate. Basically it was an argument between the creator of Minix (Tenenbaum) and Torvalds who was inspired to write Linux after playing around with Minix. Torvalds outright called Tenenbaum an idiot and since then we have this single argument as some sort of proof that macrokernels are the holy grail of OS design. And this was over 20 years ago. Though in the end the Linux kernel won because it was available and working.

    This ancient argument still poisons peoples opinion about kernel topologies and I still believe there is some hope for microkernels in the area of security. Partitioning in a microkernel is a bit more powerful than jails as Root is not needed to access things that would normally lie in kernel space (e.g. drivers.) Each user can be given their own drivers and user-space outside of the scope of root. Root serves as the true root user, NEVER allowing users any access to it.

    Here is a good excerpt from the wikipedia article on microkernels (Hurd uses Mach):

    Performance is therefore a potential issue in microkernel systems. Indeed, the experience of first-generation microkernels such as Mach and ChorusOS showed that systems based on them performed very poorly. However, Jochen Liedtke showed that Mach's performance problems were the result of poor design and implementation, and specifically Mach's excessive page cache footprint. Liedtke demonstrated with his own L4 microkernel that through careful design and implementation, and especially by following the minimality principle, IPC costs could be reduced by more than an order of magnitude compared to Mach. L4's IPC performance is still unbeaten across a range of architectures.

    While these results demonstrate that the poor performance of systems based on first-generation microkernels is not representative for second-generation kernels such as L4, this constitutes no proof that microkernel-based systems can be built with good performance. It has been shown that a monolithic Linux server ported to L4 exhibits only a few percent overhead over native Linux.[15] However, such a single-server system exhibits few, if any, of the advantages microkernels are supposed to provide by structuring operating system functionality into separate servers.

    A number of commercial multi-server systems exist, in particular the real-time systems QNX and Integrity. No comprehensive comparison of performance relative to monolithic systems has been published for those multiserver systems. Furthermore, performance does not seem to be the overriding concern for those commercial systems, which instead emphasize reliably quick interrupt handling response times (QNX) and simplicity for the sake of robustness. An attempt to build a high-performance multiserver operating system was the IBM Sawmill Linux project.[16] However, this project was never completed.

    So there you have it. The old argument doesn't appear to hold any water simply because no one has ever undertaken the task of actually building a modern u-kernel based OS for mass consumption. Torvalds is a bit of an egomaniac and a blowhard (though I am very grateful for his efforts) and I doubt he would ever change his opinion until someone actually wruites a u-kernel OS that gives Linux some serious competition. And I doubt it will ever happen because of a great quote I once read:

    "Plan 9 failed simply because it fell short of being a compelling enough improvement on Unix to displace its ancestor. Compared to Plan 9, Unix creaks and clanks and has obvious rust spots, but it gets the job done well enough to hold its position. There is a lesson here for ambitious system architects: the most dangerous enemy of a better solution is an existing codebase that is just good enough. (emphasis mine)
    -Eric S. Raymond

    This quote is about Plan9, the bell labs "successor" to Unix. It really explains why the sometimes better technology fails to replace existing technology. And it rings true in any area of engineering.

  51. Their time is not any of your fucking business by Anonymous Coward · · Score: 0

    Why is it that so many non-coders have so many opinions as to what coders should do with their time? It's as if you think that we are somehow here to scratch your itches, rather than our own.

  52. Re:Micro Kernel, Failed Computer Science Pipe drea by amorsen · · Score: 2

    The Amiga microkernel was fast because there was no memory protection. "Kernel" entry consisted of pushing a few registers to the stack and doing a jump. Context switches were similar.

    Practically no one is willing to do without memory protection today, and it is likely that achieving Amiga-like context switch times while retaining some kind of memory protection would require significant hardware changes.

    --
    Finally! A year of moderation! Ready for 2019?
  53. Re:Does it run Beta? by Unknown+Lamer · · Score: 1
    --

    HAL 7000, fewer features than the HAL 9000, but just as homicidal!
  54. Re:Does it run Beta? by smash · · Score: 1

    Funny how user space drivers appear to work elsewhere. You can buy higher performance parts, you can't just buy security.

    --
    I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
  55. Re:Does it run Beta? by Anonymous Coward · · Score: 0
  56. Re:Does it run Beta? by smash · · Score: 3, Interesting

    NT itself is designed pretty well. It's the Win32 layer which is garbage.

    --
    I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
  57. Re:Does it run Beta? by smash · · Score: 1

    No. Performance is nowhere near as bad as that.

    --
    I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
  58. Re:Does it run Beta? by Pseudonym · · Score: 1

    High frequency trading systems are not a typical example of anything, and should be held as a typical use case for any reasonable operating system. They do things like use custom network hardware which plays fast and loose with the standards, and could easily be compromised if they weren't on a fairly trusted network.

    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  59. Re:Does it run Beta? by Pseudonym · · Score: 1

    [...] and should not be held as a typical use case for any reasonable operating system.

    FTFM

    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  60. Re:Micro Kernel, Failed Computer Science Pipe drea by smash · · Score: 0

    OS X is a microkernel.and appears to be doing quite well.

    --
    I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
  61. Re:Does it run Beta? by Pseudonym · · Score: 1

    No, you aren't. This was a key point in Liedtke's design for L4.

    A "context switch" in a macrokernel OS (on Intel hardware; architectures which support tagged TLBs have a different tradeoff) is a single thing. In L4, the various parts of a context switch are decoupled and the kernel tries very hard to only do as much as it needs to. For commonly-accessed drivers, for example, an IPC round-trip requires only a selector switch (which a macrokernel OS does anyway when it enters and exits kernel mode) and avoids the address space switch completely.

    Of course, none of this applies to Mach, which isn't a "micro"-kernel by modern standards.

    On the P4, the expensive part was entering and exiting kernel mode; it even dominated address space switching and TLB reload for typical scenarios. I don't know about modern CPUs, but the key point remains: "extra context switching [...] kills performance" is a claim that's hard to prove.

    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  62. Prejudices - that's the problem by Anonymous Coward · · Score: 0

    Interesting how many people come up with negative arguments against Hurd & microkernels in general, obviously without having any experience in system design at all, simply citing the same ancient crtitisms that were raised 20 years ago. Just to make this clear: performance is not the issue with microkernels today. You probably even have a cell phone that is running a microkernel as hypervisor below your actual advertised OS like Android, Symbian, Linux and more. You are not seeing it, and the vendor did not tell it, but it's there. Running on a lousy weak ARM CPU. You have a fruit phone instead? Then you are running the XNU microkernel instead.

    Negative prejudices, floating around in the mass of people, are probably THE biggest problems an alternative system like Hurd has, that prevents it for being accepted by people, being adopted by new developers and thus against allowing it to grow.

    Most of you are probably fine with a monolithic kernel like Linux ... today. There were also times where people were fine with systems that did not provide memory protection & virtual memory. They were simple, they were fast, so why do we need fancy stuff? But fact is, our systems are growing constantly and stability, complexity, timing and security issues already reached a level where they become hardly satisfiable with monolithic kernels. Nobody today would consider building a huge ferry or supertanker where a tiny leak could float the entire boat. But that's eactly what you got with monolithic kernels.

    I'm using Linux, developed device drivers on it for years, but I do think that its design is not able to fulfill requirements soon to come. Especially the current tendency from user based isolation & protection over to task and program based isolation & protection is simply not feasible with a monolithic kernel.

    So I am very happy to give Hurd a chance. I hope you too.

  63. MySQL/MariaDB is a bigger embarrasment by Anonymous Coward · · Score: 0

    MySQL/MariaDB is crap and a waste of developer effort.

    Seriously do yourselves a the rest of the world a favor and stop implementing applications using that crap. There is no place for it. Its not a good as an enterprise even a single application database and its not a good embedded database either. But ignorant assholes keep implementing applications in it.

    1. Re:MySQL/MariaDB is a bigger embarrasment by DuckDodgers · · Score: 1

      Tell that to Google and Facebook.

  64. There is no hope by dbIII · · Score: 1

    You've missed that the "beige box is the hard drive" people don't consider something is an operating system until it has a GUI solitaire card game in userspace. To them that card game is part of the operating system simply because it came with the computer. Anything with less than that they consider too archaic to have an operating system. Text screen on a linux server? "How quaint, obviously far less advanced than a TV program recorder" they think.
    Thus it's better ignoring them instead of trying to feed them the textbook definition that they are deliberately ignoring.

  65. Re:Micro Kernel, Failed Computer Science Pipe drea by dbIII · · Score: 1

    Torvalds is a bit of an egomaniac and a blowhard

    WTF!
    What on earth are you basing that on or are you just punching a strawman? How is he more of an egomaniac than ANYBODY in politics and media?

  66. Re:Micro Kernel, Failed Computer Science Pipe drea by ChunderDownunder · · Score: 1

    Yes, I've heard the 'real-time' arguments in embedded but for consumer devices are there tangible benefits to QNX vs Linux?

    I'm just thinking, hypothetically, of when Blackberry.com goes under - whether the assets be sold off again to a standalone QNX entity.

    Or would it be useful for a company like Samsung re-basing their Android and Tizen efforts on their own proprietary kernel to differentiate their offerings from HTC and LG etc?

  67. Re:Does it run Beta? by Anonymous Coward · · Score: 0

    If you're going to disagree with the whole security community on a security issue, you might want to explain why.

    Everybody I know who has any security credentials believes monolithic kernels are a security risk

    No, they aren't. They are a security risk amplifier. But you still need a concrete vulnerability to get an actual security problem. Likewise, the C programming language is not a cause for buffer overflows and/or off-by-one errors. Programmers are.

    The current setup leads to a number of core applications getting a lot of scrutiny from black and white hats, and in consequently having quite lower than industry standard bug density. A certain ratio of the few remaining bugs in system facilities can be amplified into an exploit for taking over the system.

    The HURD architecture is a game changer in that area. Whether it or its concepts will ever take flight depends on how much people are willing to change the game. The current game is pretty well-explored, and long-term investments and employments have been based on its dynamics.

  68. Re:Does it run Beta? by Anonymous Coward · · Score: 0

    First of all, nobody uses ring 1 and 2. Secondly, do you still run dos that you only have a single application running?

  69. Re:Micro Kernel, Failed Computer Science Pipe drea by Anonymous Coward · · Score: 0

    OS X is a microkernel.and appears to be doing quite well.

    OSX does not have a microkernel.

  70. Re:Does it run Beta? by cheesybagel · · Score: 1

    Yeah. But i386 hardware has more than two rings. The fact that OSes don't use them is what is a problem.

  71. Re:Micro Kernel, Failed Computer Science Pipe drea by smash · · Score: 1

    Mach.

    --
    I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
  72. Re:Does it run Beta? by Anonymous Coward · · Score: 0

    While you're correct that Windows implements too much of its GUI in kernel mode, it is not true that a good chunk of that code shouldn't be there.

    For ages, X11 has been essentially user mode only, directly playing with hardware from userspace. Not a good thing.

    With the implementation of kernel-modesetting, the really security sensitive parts of the code are now in the kernel where they belong, and the user mode parts can only interact with the hardware thru safe, well defined means.

  73. Re:Does it run Beta? by unixisc · · Score: 1

    Can't anyone do (micro)kernel in ring 0, user services in ring 1, VM hypervisors in ring 2 and VMs in ring 3?

  74. Re:Micro Kernel, Failed Computer Science Pipe drea by Anonymous Coward · · Score: 0

    Mach != microkernel. It's a piece of operating system building block code which implements virtual memory primitives, task context switching, and IPC primitives (message passing).

    Now, one obvious (and common) thing to do with those three basic pieces of functionality is to use Mach as a microkernel in a true microkernel OS, one where device drivers and filesystems and so forth are farmed out to separate tasks which live in independent virtual address spaces and communicate with each other via Mach IPC. Paring the highest privilege code down to VM, process management, and IPC primitives, and implementing the rest as isolated message passing modules -- that's pretty much the classic definition of a microkernel.

    But you don't have to use Mach that way, and the OS X "Darwin" kernel doesn't. Everything in-kernel lives in a single address space, and communicates by direct function calls instead of message passing. Some userland features (shared mem, IPC, threads) are built on top of Mach primitives instead of the traditional BSD primitives, but that doesn't make the kernel a microkernel, just a funny BSD variant with Mach code replacing a bunch of the BSD code.

  75. I think Linux, Windows, etc actually lost this one by Burz · · Score: 1

    The default mode of Linux use on servers is inside virtual machines (i.e. managed by a hypervisor). Same for Windows.

    On the desktop we have Qubes OS and its ability to sequester hardware devices to VMs using IOMMU / VT-d, so the drivers for those devices are effectively contained.

    Monolithic kernels have failed at security, so they've been demoted to largely non-security roles, held apart from the core OS like the driver modules of a microkernel.