5 ms·
The world is full of many ironies, but perhaps one of the largest in computing is that Hurd, a project that began in 1990, was not only beat in time to market b
by gjsman-1000 2y ago
The world is full of many ironies, but perhaps one of the largest in computing is that Hurd, a project that began in 1990, was not only beat in time to market by Linux; but was even upstaged by Nintendo (a glorified toy company) with their microkernel-based Switch OS.
(Edit: https://media.ccc.de/v/34c3-8941-console_security_-_switch https://media.ccc.de/v/34c3-8941-console_security_-_switch and https://en.m.wikipedia.org/wiki/Nintendo_Switch_system_software https://en.m.wikipedia.org/wiki/Nintendo_Switch_system_softw... )
- tempest_ 2y agoHuh, I always assumed the switch ran on some flavour of custom android, I suppose for not other reason than it seems every digital device in the last 10 years has done so. https://en.wikipedia.org/wiki/Nintendo_Switch_system_software https://en.wikipedia.org/wiki/Nintendo_Switch_system_softwar...
- alias_neo 2y agoIf it was any sort of Android, we'd probably have known about it, and been running all sorts of Android things within minutes of its release. Given that the Tegra X1 chip it runs was already a couple of years old when Switch released, they might have had to perform some magic to get performance what it is even with a cut-down Android; even under their custom OS, their flagship game, TLoZ: Breath of The Wild, doesn't run smoothly.
- tjr 2y agoI got the impression that the FSF rather downplayed their own kernel development after Linux became available. I remember reading things like, you can still work on Hurd if you want to, but it's more of a research project.
- DEADMINCE 2y agoI recall that as well. Linux basically filled the need/goal they wanted with Hurd, so it became far less important.
- mjhay 2y ago[flagged]
- baggy_trough 2y agoPerhaps it should be called Systemd/GNU/Linux these days. Beyond glibc and coreutils, does GNU really bring much to the party any more? Bash - don't use it. Clang seems to be inexorably taking over from gcc.
- mardifoufs 2y agoI wouldn't say taking over (not anymore) but yeah the fact that it's basically an almost 100% "drop in" alternative to gcc for Linux makes GNU software a bit less relevant/central to Linux. For better and for worse I guess!
- binary132 2y agoLet me know when the mainstream distros have switched their kernel builds to Clang.
- mikepurvis 2y agoPoe's Law prevents me from knowing how to interpret this comment. (oh nm it's literally a copypasta so in that case almost certainly posted in a spirit of parody)
- Zambyte 2y agoSeeing this in reply to an indisputably correct usage of the word "Linux" is quite silly
- NelsonMinar 2y agoOh if only it were that gracious. My impression was FSF spent some time scolding us that we should wait for Hurd (not to mention Guile). But the Hurd project got deeply bogged down and never got to usability. The closest to admitting reality was the time Stallman started saying we should talk about "GNU/Linux" and not "Linux".
- ahazred8ta 2y agoTBH, Stallman's baby has always been the compiler suite and the development environment. As far as he's concerned, 99% of the moving parts are in the GNU part of the environment and people should acknowledge this by using the name.
- HeckFeck 2y agoXbox is a cousin of Windows, PS4/5 is a BSD. Well and good, but the fact that Nintendo still roll their own OS warms my heart. At least someone is trying a new thing!
- written-beyond 2y agoWhat?! I thought Nintendo was building on BSD.
- gjsman-1000 2y agoNope, at least, not any more than Windows. It’s a homegrown microkernel OS. https://en.m.wikipedia.org/wiki/Nintendo_Switch_system_software https://en.m.wikipedia.org/wiki/Nintendo_Switch_system_softw... https://media.ccc.de/v/34c3-8941-console_security_-_switch https://media.ccc.de/v/34c3-8941-console_security_-_switch https://switchbrew.org/wiki/Main_Page https://switchbrew.org/wiki/Main_Page
- written-beyond 2y agoThis is insane, but don't their developers also hate them. Like I understand having the opportunity to engineer and OS from scratch and have millions of people using it. But after the honeymoon ends and you now have to build and add features to it as the platform grows and you realise you don't have an army of OSS contributors helping you ship and innovate. Isn't it frustrating for them?
- gjsman-1000 2y agoProbably not. The Switch OS is very small - under 400MB. And that’s including the NVIDIA drivers and WebKit (which is maintained by a third party called NetFront, so not their problem) and all graphical assets. When you strip it down to the actual amount of code Nintendo maintains, by ripping out the NVIDIA, NetFront, graphical and audio assets, it’s manageable. Compared to the complexity of the hundreds of video games that Nintendo has worked on, it’s probably not as difficult as it would seem. There’s a reason why it’s small though - every game card comes with a copy of the required OS version and can self-update the console if needed. Not only can the game card update the console - other Switch players, using the version synchronization feature, can even update each other’s consoles wirelessly without internet for both the game and OS. > but don't their developers also hate them No idea where you got this from. The primary complaint regarding the Switch is the dated chip and performance metrics, not the system. Nintendo as a company meanwhile has a 98%+ retention rate. There were five people who worked on the original Super Mario Bros in 1985, all five of them worked in some capacity on Super Mario Bros Wonder in 2023.
- hiAndrewQuinn 2y agoI always thought the Switch OS was based off of FreeBSD, I guess I have my facts wrong.
- gjsman-1000 2y agoThe Switch uses bits of FreeBSD for Networking, but so does Windows. There are also bits of the Android display stack (NVNFlinger sounds a lot like SurfaceFlinger), but none of that changes that this a mostly homegrown Nintendo project. https://media.ccc.de/v/34c3-8941-console_security_-_switch https://media.ccc.de/v/34c3-8941-console_security_-_switch
- pjmlp 2y agoWindows is BSD clean since Vista, when the networking stack was rewriten.
- dale_glass 2y agoIMO in hindsight we can say Linux was probably the technically superior choice. I can see the appeal of microkernels in theory, but in practice? Here's what I gathered are the general problems: * A microkernel won't stop some very bad things, like filesystem corruption. Some kinds of bugs are still a huge pain. * Devices like hard disks and video cards have gotten smarter. They have lots of state, their own firmware, and can possibly DMA over system memory bypassing OS protections. This means that the effectiveness of splitting things into processes is likely limited when the video card can just take your entire system down anyway. * The "system can tolerate a part of it crashing" is great, IF anyone bothers to take advantage of it, and IF things like hardware can be properly reinitialized. In practice your desktop probably doesn't account for that so your user session goes down. Might as well reboot. * HURD specifically used to be limited to a 32 bit address space for filesystems which means it couldn't handle disks larger than 2GB (or some such size) for a long time. * HURD processes can't trust each other. You can't have part A tell part B to drop their cache reliably to free up system memory. Every bit is separate from another, and can just ignore such a request. * HURD specifically contained design decisions made to appeal to Stallman's pet peeves about sysadmin power. This is irrelevant today, but likely hampered adoption. * Performance is bad. * A monolithic kernel can always imitate a microkernel where convenient. The reverse doesn't hold true. HURD introduced a bunch of difficulties and limitations. Linux could mostly ignore the costs of a microkernel and get things done well enough much faster. Where microkernels had some upside like usermode filesystems, Linux could just hack it in and only pay the price if you wanted that.
- f1shy 2y ago> Performance is bad Is there any Benchmark?
- dale_glass 2y agoHere: https://www.phoronix.com/review/debian-hurd-2015/2 https://www.phoronix.com/review/debian-hurd-2015/2 Some are not bad, but some are awful. It's going to depend. A microkernel means more context switches, so in general it should be guaranteed to lose. By a lot if you get into the really pathological cases.
- Zambyte 2y agoThe Wikipedia Switch link you shared says that the Switch OS is a derivative of the 3DS OS[0], which is also a microkernel architecture according to its Wiki page. [0] https://en.wikipedia.org/wiki/Nintendo_3DS_system_software https://en.wikipedia.org/wiki/Nintendo_3DS_system_software