Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

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

samzenpus posted about 6 months ago | from the now-even-better dept.

GNU is Not Unix 163

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."

cancel ×

163 comments

Sorry! There are no comments related to the filter you selected.

Does it run Beta? (-1, Offtopic)

dntslashdotslashbet (3528261) | about 6 months ago | (#46210989)

Does it?

Re:Does it run Beta? (2)

Jeremiah Cornelius (137) | about 6 months ago | (#46211069)

User Space Drivers != "Improvement".

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

Re:Does it run Beta? (5, Informative)

Anonymous Coward | about 6 months ago | (#46211161)

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.

Re:Does it run Beta? (1)

Billly Gates (198444) | about 6 months ago | (#46211791)

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.

Re:Does it run Beta? (3, Interesting)

Anonymous Coward | about 6 months ago | (#46211945)

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 [stackoverflow.com] ". You can find a bunch more by searching for "win32k.sys+(vulnerability|cve)"

Re:Does it run Beta? (1)

epyT-R (613989) | about 6 months ago | (#46212973)

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.

Re:Does it run Beta? (5, Informative)

Anonymous Coward | about 6 months ago | (#46211189)

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.

Re:Does it run Beta? (1)

MightyMartian (840721) | about 6 months ago | (#46211243)

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.

Re:Does it run Beta? (1)

unixisc (2429386) | about 6 months ago | (#46211253)

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

Re:Does it run Beta? (1)

Jeremiah Cornelius (137) | about 6 months ago | (#46211471)

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

Kernel can be whitelisted. Userspace? Good luck.

IOMMU is for restricting device's memory access (1)

pikine (771084) | about 6 months ago | (#46211881)

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.

Re:IOMMU is for restricting device's memory access (1)

amorsen (7485) | about 6 months ago | (#46213795)

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.

Re:Does it run Beta? (1)

epyT-R (613989) | about 6 months ago | (#46213145)

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.

Re:Does it run Beta? (1)

LordLimecat (1103839) | about 6 months ago | (#46213171)

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.

Re:Does it run Beta? (0)

Anonymous Coward | about 6 months ago | (#46211223)

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.

Re:Does it run Beta? (0)

Anonymous Coward | about 6 months ago | (#46213181)

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).

Re:Does it run Beta? (1)

unixisc (2429386) | about 6 months ago | (#46211229)

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.

Re:Does it run Beta? (1)

Jeremiah Cornelius (137) | about 6 months ago | (#46211453)

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"?

Re:Does it run Beta? (0)

Anonymous Coward | about 6 months ago | (#46211771)

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.

Re:Does it run Beta? (1)

unixisc (2429386) | about 6 months ago | (#46212179)

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.

Re:Does it run Beta? (0)

Anonymous Coward | about 6 months ago | (#46213207)

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.

Server-Client vs Monolithic operating system archi (0)

Anonymous Coward | about 6 months ago | (#46211349)

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).

Re:Does it run Beta? (1)

Bacon Bits (926911) | about 6 months ago | (#46211361)

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?

Re:Does it run Beta? (2)

Jeremiah Cornelius (137) | about 6 months ago | (#46211445)

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!

Re:Does it run Beta? (1)

Anonymous Coward | about 6 months ago | (#46211837)

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.

Re:Does it run Beta? (0)

Anonymous Coward | about 6 months ago | (#46211075)

Does it run Beta?

Does it?

Yes, but commenting doesn't work.

Re:Does it run Beta? (0)

Anonymous Coward | about 6 months ago | (#46211141)

No, but it finally runs Duke Nukem Forever.

Hopefully (1)

Anonymous Coward | about 6 months ago | (#46210997)

Hopefully it will be launched until 2038.

Re:Hopefully (1)

Anonymous Coward | about 6 months ago | (#46211217)

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.

Re:Hopefully (1)

unixisc (2429386) | about 6 months ago | (#46211261)

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

Re: Hopefully (1)

Anonymous Coward | about 6 months ago | (#46212553)

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.

Re: Hopefully (1)

unixisc (2429386) | about 6 months ago | (#46212695)

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

Re: Hopefully (0)

Anonymous Coward | about 6 months ago | (#46212713)

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.

Re: Hopefully (1)

UnknownSoldier (67820) | about 6 months ago | (#46212849)

> 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-... [amazon.com]
  * Beneath Apple ProDOS http://www.amazon.com/Beneath-... [amazon.com]

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... [asimov.net]

References:

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

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

Coming from a GNU Hurd developer (0, Interesting)

Anonymous Coward | about 6 months ago | (#46211015)

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!

Re:Coming from a GNU Hurd developer (1)

unixisc (2429386) | about 6 months ago | (#46211237)

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

Kernel, not a microkernel (0)

Anonymous Coward | about 6 months ago | (#46211357)

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.

HURD is an embarrassment (2, Insightful)

realmolo (574068) | about 6 months ago | (#46211077)

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.

Re:HURD is an embarrassment (-1)

Anonymous Coward | about 6 months ago | (#46211149)

It's kind-of emblematic of the major problem with non-commerical software projects; namely, Richard Stallman

ftfy

Re:HURD is an embarrassment (4, Insightful)

serviscope_minor (664417) | about 6 months ago | (#46211173)

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.

Re:HURD is an embarrassment (2, Funny)

Anonymous Coward | about 6 months ago | (#46211281)

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...

Can drivers move so easily from kernel to user? (1)

unixisc (2429386) | about 6 months ago | (#46211325)

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.

Re:Can drivers move so easily from kernel to user? (2)

Unknown Lamer (78415) | about 6 months ago | (#46211441)

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

Re:HURD is an embarrassment (-1)

Anonymous Coward | about 6 months ago | (#46211469)

Ohh! The snide irony! Might you say this about Wayland? Funny, when it comes to that particular project you go into ape-shit overdrive TROLL MODE and declare Wayland to be the worst thing to happen to humanity since human genocide while at the same time ejaculating blissful praise over X.org. It's assholes like you I'm hoping Slashdot Beta would drive away. Trolls like you hurt Slashdot more than a 1,000 Betas.

re: HURD is an embarassment (0)

Anonymous Coward | about 6 months ago | (#46211755)

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

Re:HURD is an embarrassment (0)

Anonymous Coward | about 6 months ago | (#46211193)

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!

Re:HURD is an embarrassment (1)

unixisc (2429386) | about 6 months ago | (#46211339)

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.

Their time is not any of your fucking business (0)

Anonymous Coward | about 6 months ago | (#46213805)

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.

Re:HURD is an embarrassment (0)

Anonymous Coward | about 6 months ago | (#46211199)

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

Re:HURD is an embarrassment (2)

jandrese (485) | about 6 months ago | (#46211201)

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.

Re:HURD is an embarrassment (2)

serviscope_minor (664417) | about 6 months ago | (#46211267)

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.

Re:HURD is an embarrassment (3, Insightful)

DrXym (126579) | about 6 months ago | (#46211319)

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.

Re:HURD is an embarrassment (1)

serviscope_minor (664417) | about 6 months ago | (#46211545)

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.

Re:HURD is an embarrassment (2)

cream wobbly (1102689) | about 6 months ago | (#46211661)

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

Aside from being barely a year old 23 years ago, Richard's (since we're on first name terms) progress or otherwise was not the motivation behind Linus's work.

Re:HURD is an embarrassment (1)

davydagger (2566757) | about 6 months ago | (#46212289)

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.

Re:HURD is an embarrassment (1)

UnknownSoldier (67820) | about 6 months ago | (#46212981)

> 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

Re:HURD is an embarrassment (1)

jandrese (485) | about 6 months ago | (#46211627)

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

Re:HURD is an embarrassment (4, Interesting)

serviscope_minor (664417) | about 6 months ago | (#46211723)

"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.

Re:HURD is an embarrassment (0)

Anonymous Coward | about 6 months ago | (#46213271)

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. [slashdot.org]

Re:HURD is an embarrassment (1)

unixisc (2429386) | about 6 months ago | (#46211345)

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

Re:HURD is an embarrassment (1)

unixisc (2429386) | about 6 months ago | (#46211299)

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.

Re:HURD is an embarrassment (1)

Pope (17780) | about 6 months ago | (#46211607)

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

Straw man (0)

Anonymous Coward | about 6 months ago | (#46211639)

Straw Man

Re:HURD is an embarrassment (1)

HuguesT (84078) | about 6 months ago | (#46212515)

Thanks, at least that sounds believable.

Re:HURD is an embarrassment (2)

operagost (62405) | about 6 months ago | (#46212621)

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.

Re:HURD is an embarrassment (1)

DuckDodgers (541817) | about 6 months ago | (#46211737)

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.

Re:HURD is an embarrassment (1)

loonycyborg (1262242) | about 6 months ago | (#46211865)

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.

Re:HURD is an embarrassment (1)

epyT-R (613989) | about 6 months ago | (#46213349)

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.

Re:HURD is an embarrassment (0)

Anonymous Coward | about 6 months ago | (#46213681)

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?"

Micro Kernel, Failed Computer Science Pipe dream (0)

Anonymous Coward | about 6 months ago | (#46211121)

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)

Re:Micro Kernel, Failed Computer Science Pipe drea (4, Informative)

Dr. Spork (142693) | about 6 months ago | (#46211327)

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.

Re:Micro Kernel, Failed Computer Science Pipe drea (2)

Trepidity (597) | about 6 months ago | (#46211859)

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.

Re:Micro Kernel, Failed Computer Science Pipe drea (1)

unixisc (2429386) | about 6 months ago | (#46211365)

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.

Fuck you, beta (0)

Anonymous Coward | about 6 months ago | (#46211651)

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

Re:Micro Kernel, Failed Computer Science Pipe drea (1)

DuckDodgers (541817) | about 6 months ago | (#46211795)

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.

Re:Micro Kernel, Failed Computer Science Pipe drea (1)

cream wobbly (1102689) | about 6 months ago | (#46211687)

It was the microkernel which made Amiga so suitable for TV work. Oh, and games. it was just so damned responsive. I want that back.

Re:Micro Kernel, Failed Computer Science Pipe drea (2)

LoRdTAW (99712) | about 6 months ago | (#46213399)

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 [wikipedia.org] (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.

Linux vs. Hurd/xBSD (4, Interesting)

jellomizer (103300) | about 6 months ago | (#46211169)

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.

Re:Linux vs. Hurd/xBSD (0)

iggymanz (596061) | about 6 months ago | (#46211803)

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.

Re:Linux vs. Hurd/xBSD (0)

Anonymous Coward | about 6 months ago | (#46212509)

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.

Re:Linux vs. Hurd/xBSD (0)

Anonymous Coward | about 6 months ago | (#46212703)

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.

Re:Linux vs. Hurd/xBSD (3, Interesting)

Trepidity (597) | about 6 months ago | (#46211987)

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.

Re:Linux vs. Hurd/xBSD (0)

Anonymous Coward | about 6 months ago | (#46212195)

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.

Re:Linux vs. Hurd/xBSD (1)

rahvin112 (446269) | about 6 months ago | (#46213597)

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.

Hurd hurd hurd (0, Flamebait)

Anonymous Coward | about 6 months ago | (#46211297)

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

Re:Hurd hurd hurd (1)

Anonymous Coward | about 6 months ago | (#46211487)

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

Hmmmmmm (0)

Anonymous Coward | about 6 months ago | (#46211725)

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

Re:Hmmmmmm (1)

unixisc (2429386) | about 6 months ago | (#46211893)

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

Re:Hmmmmmm (1)

nurb432 (527695) | about 6 months ago | (#46213221)

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.

Re:Hmmmmmm (1)

nurb432 (527695) | about 6 months ago | (#46213199)

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

GNU HURD (2, Funny)

Chas (5144) | about 6 months ago | (#46211741)

Bringing you the technology of 1997...TODAY!

Re:GNU HURD (0)

operagost (62405) | about 6 months ago | (#46212637)

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

Shazbot!??? (0)

Anonymous Coward | about 6 months ago | (#46212271)

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

WTF IS THIS GARBAGE?
Fuck Beta!

GNU Hurd: A Solution In Search of a Problem (2)

sirwired (27582) | about 6 months ago | (#46212371)

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.)

That's nice... (4, Funny)

SplawnDarts (1405209) | about 6 months ago | (#46212439)

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

at this rate of progress (0)

FudRucker (866063) | about 6 months ago | (#46213021)

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

Good work guys (0)

lkernan (561783) | about 6 months ago | (#46213173)

"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!

Duke Nukem Forever! (-1)

Anonymous Coward | about 6 months ago | (#46213649)

The Duke Nukem Forever of kernels is inching its way closer to release! Yay! I can't wait to install it so I can run firefox on another FSF desktop! I'm such a rebel!

Hurrah (-1)

Anonymous Coward | about 6 months ago | (#46213715)

It's the year of the GNU Hurd Desktop!

From the slides (-1)

Anonymous Coward | about 6 months ago | (#46213719)

Some things I took from the PDF slides:

* 64 bit support has only just started despite the currently popular 64-bit architecture (AMD64) being available over a decade ago.

* No USB and no sound yet. Good work there.

* Whoever did the slides has poor English ("Should be not very complex"), though that's hardly the fault of Hurd so I'll give it a pass. Someone should have probably read the slides first before making them final though.

The lack of USB and sound and the fact that 64-bit support has only just started makes me wonder why people give Hurd any attention in the first place. To me it looks like a failure - technology is a moving target and you have to be able to develop faster than they have if you want to have any chance of a usable operating system capable of functionality most people expect. To the developers I'm sure they don't see it as a failure, probably because they have no pressure to make it conform to a level similar to other systems (no-one uses Hurd to do anything of merit so there's no pressure to improve it within a realistic timeframe). To the developers it's a hobby, and that's fine. But given the lack of progress I still don't understand why it gets attention.

Posting anon because fuck beta.

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>