Linked by Thom Holwerda on Sat 4th Mar 2017 01:20 UTC
Games

Interesting little tidbit for the weekend: we now know what operating system the Nintendo Switch is running. Since it's basically an NVIDIA Shield, I kind of expected it to be running Android - heavily modded, of course - but it turns out it's running something else entirely: it's running FreeBSD.

Like Sony, Nintendo also opts for FreeBSD for its games console. This means of the four major gaming platforms, two run Windows, and two run FreeBSD. Fascinating.

Order by: Score:
Not confirmed yet I think
by elvstone on Sat 4th Mar 2017 09:15 UTC
elvstone
Member since:
2005-09-08

Them having a "FreeBSD Kernel" BSD copyright notice in the documentation could just mean the product includes part of the FreeBSD kernel, like headers for the networking subsystem. It doesn't mean it's <strike>based on</strike> running the FreeBSD kernel.

That would be mighty cool though!

I think we'll just have to wait until someone cracks it open until we know for sure how much FreeBSD is in there.

Edited 2017-03-04 09:17 UTC

Reply Score: 2

RE: Not confirmed yet I think
by Kochise on Sat 4th Mar 2017 10:32 UTC in reply to "Not confirmed yet I think"
Kochise Member since:
2006-03-03

Considering it was a major selling point for the PS3 to have Linux into it, having the superior FreeBSD in its heart, and being truly open -GPU wise-, would kick some ass out there.

Remember where have failed the Gizmodo or the GP2X ? Maybe there's a chance here, with more maturity and support from a big firm. Give Nintendo some kudos for evolving like their Pokemons.

Reply Score: 2

Doubtful
by tingo on Sat 4th Mar 2017 13:09 UTC
tingo
Member since:
2007-10-13

Yes, it might have parts of FreeBSD in it. Runs FreeBSD? Ok, show us a system prompt and a uname -a to confirm it.

Reply Score: 4

RE: Doubtful
by Drumhellar on Sat 4th Mar 2017 18:58 UTC in reply to "Doubtful"
Drumhellar Member since:
2005-07-12

Why is this doubtful? The PS4 runs FreeBSD. NVidia also already supports a full graphics stack on FreeBSD, too.

Not "parts of FreeBSD", not "uses FreeBSD headers."

It is FreeBSD underneath. It doesn't have to have the full userland to still be FreeBSD.

Its pared down, of course, and has a couple custom features not found in the base system, but that doesn't make it *NOT* FreeBSD. It's FreeBSD enough that Sony's contributions back found their way into the kernel.

Edited 2017-03-04 19:01 UTC

Reply Score: 4

RE[2]: Doubtful
by chithanh on Tue 7th Mar 2017 18:37 UTC in reply to "RE: Doubtful"
chithanh Member since:
2006-06-18

We don't know that the Switch runs FreeBSD.
We only know through public information that it uses code from the FreeBSD kernel.

Note that even Microsoft used FreeBSD kernel code in Windows NT before 3.5, and nobody said that Windows computers ran FreeBSD because of that.

http://archive.is/IXUi
(That story was posted on the now-defunct kuro5hin.org)

Reply Score: 2

RE[3]: Doubtful
by xslogic on Tue 7th Mar 2017 20:01 UTC in reply to "RE[2]: Doubtful"
xslogic Member since:
2011-03-09

The Copyrights appear to be dated 1995-1996 and Jean-loup Gailly and Mark Adler - so probably compression based.

Reply Score: 1

RE[3]: Doubtful
by Drumhellar on Wed 8th Mar 2017 07:09 UTC in reply to "RE[2]: Doubtful"
Drumhellar Member since:
2005-07-12

Still, OS's are farking difficult to write, especially a multithreaded kernel meant to run efficiently on a multicore processor.

However, FreeBSD runs fairly well on ARM. It has very capable scheduler, VFS subsystem, security, network stack, etc. With a somewhat customized graphics stack (NVidia already has existing FreeBSD drivers, as well as Linux ARM drivers), it lets Nintendo focus on the system UI and relevant gaming APIs without having to worry about the nitty gritty of kernel development.

This is exactly what Sony did. Nintendo would be foolish to do otherwise.

I wonder if Nintendo will contribute back their changes? If I had to prognosticate on what those contributions might be, I'd guess work on virtualization on ARM - there are a set of patches that currently exist that partially implement Bhyve on ARM, but it isn't quite there.

Sony contributed back to FreeBSD, too, bringing AVX support to the kernel when before there was none.

Reply Score: 2

RE[3]: Doubtful
by pfgbsd on Wed 8th Mar 2017 21:22 UTC in reply to "RE[2]: Doubtful"
pfgbsd Member since:
2011-03-12

From the people that have seen the credits, I understand the text is pretty long. We can fairly trust it runs the "Free BSD kernel", otherwise they wouldn't have bothered about writing it out.
Taking the FreeBSD kernel usually implies also taking the C library, so the SDK should further clarify any doubt.

How much has Nintendo modified or added we may never know, that is exactly the beauty of the BSD license.

Reply Score: 1

RE[4]: Doubtful
by xslogic on Thu 9th Mar 2017 23:50 UTC in reply to "RE[3]: Doubtful"
xslogic Member since:
2011-03-09

From the people that have seen the credits, I understand the text is pretty long. We can fairly trust it runs the "Free BSD kernel", otherwise they wouldn't have bothered about writing it out.


No. They have to write it out because they used the code and the licence stipulates that you reproduce the licence.

Only 2 actual names are on it, though, and both of them (Mark Adler and Jean-loup Gailly) are usually connected with compression. They worked on zlib together.

Reply Score: 1

RE: Doubtful
by Verenkeitin on Sat 4th Mar 2017 19:07 UTC in reply to "Doubtful"
Verenkeitin Member since:
2007-07-01

Yes, it might have parts of FreeBSD in it. Runs FreeBSD? Ok, show us a system prompt and a uname -a to confirm it.


Come on now. You know the difference between an OS and a user interface running on top of it. Lets just marvel the fact that FreeBSD has Apple, Sony and now Nintendo working on it.

Reply Score: 2

RE[2]: Doubtful
by stormcrow on Sat 4th Mar 2017 20:24 UTC in reply to "RE: Doubtful"
stormcrow Member since:
2015-03-10

Use doesn't equate to contributions (money or code). If it did OpenBSD would be one of the most widely supported and well funded free OSes out there.

The BSD license means they can fork whatever they want of FreeBSD and keep ALL of it under lock and key. I'm not making a moral judgment here, I'm pointing out the fallacy of assuming just because Nintendo is using part of the FreeBSD project means they will support upstream.

Reply Score: 4

RE[3]: Doubtful
by Drumhellar on Sat 4th Mar 2017 21:00 UTC in reply to "RE[2]: Doubtful"
Drumhellar Member since:
2005-07-12

Well, Sony has contributed a bit of code upstream. Apple has contributed a whole shitload of code under BSD-friendly licenses, a lot of which is being used in FreeBSD.

Lets see if Nintendo does, too.

And if not, oh well. It doesn't in any way diminish from the FreeBSD project.

Reply Score: 3

RE[4]: Doubtful
by kurkosdr on Sun 5th Mar 2017 11:28 UTC in reply to "RE[3]: Doubtful"
kurkosdr Member since:
2011-04-11


And if not, oh well. It doesn't in any way diminish from the FreeBSD project.


Sure, but Nintendo's modifications to FreeBSD are kept secret from the communitah! The Four Freedoms Of The Holy GNU have been violated, and it is all the fault of the FreeBSD guys for not embracing The Way Of The Holy GNU.

Edited 2017-03-05 11:39 UTC

Reply Score: 0

RE[5]: Doubtful
by mlankton on Sun 5th Mar 2017 13:57 UTC in reply to "RE[4]: Doubtful"
mlankton Member since:
2009-06-11

Freedom with restrictions is not free

Reply Score: 2

RE[6]: Doubtful
by CaptainN- on Tue 7th Mar 2017 18:09 UTC in reply to "RE[5]: Doubtful"
CaptainN- Member since:
2005-07-07

I know! That need to eat is a real bother to my freedom

Reply Score: 2

RE[5]: Doubtful
by Doc Pain on Sun 5th Mar 2017 19:43 UTC in reply to "RE[4]: Doubtful"
Doc Pain Member since:
2006-10-08

[...]Nintendo's modifications to FreeBSD are kept secret from the communitah! The Four Freedoms Of The Holy GNU have been violated, and it is all the fault of the FreeBSD guys for not embracing The Way Of The Holy GNU.


The FreeBSD license is often criticized as a "rape-me license" because it explcitely allows talking FreeBSD for free and turning it into something proprietary closed source software to make money with. This may not look nice (or even fair), but the developers made that decision. If you (as a developer) are not happy with that kind of terms, use GPL or create your own license to make contribution back a neccessary requirement for the use of your code in other projects.

Also note that the FreeBSD license is not the only one of that kind of licenses.

Reply Score: 4

v RE[6]: Doubtful
by kurkosdr on Sun 5th Mar 2017 20:03 UTC in reply to "RE[5]: Doubtful"
Legit question
by Bill Shooter of Bul on Sat 4th Mar 2017 20:54 UTC in reply to "RE: Doubtful"
Bill Shooter of Bul Member since:
2006-07-14

When was the last Apple commit back to Free BSD?

Reply Score: 2

RE: Legit question
by Drumhellar on Sat 4th Mar 2017 21:05 UTC in reply to "Legit question"
Drumhellar Member since:
2005-07-12

Their last commit to the base system? Probably quite a while. XNU's FreeBSD components have probably diverged quite a bit.

However, there are at least a couple FreeBSD developers on Apple's payroll, not to mention those developers Apple pays to work on clang/llvm.

GCD is part of the FreeBSD kernel, too.

Reply Score: 2

RE[2]: Legit question
by Doc Pain on Sun 5th Mar 2017 13:14 UTC in reply to "RE: Legit question"
Doc Pain Member since:
2006-10-08

However, there are at least a couple FreeBSD developers on Apple's payroll, not to mention those developers Apple pays to work on clang/llvm.

GCD is part of the FreeBSD kernel, too.


Also consider CUPS which is commonly used for printing on FreeBSD.

Reply Score: 3

RE[2]: Legit question
by rleigh on Sun 5th Mar 2017 13:15 UTC in reply to "RE: Legit question"
rleigh Member since:
2014-11-15

Without the source, hard to see how diverged it is. But from the dates and featureset of various tools e.g. readlink, it's clear that Apple haven't updated them from the FreeBSD sources for around a decade, which is frankly a bit shocking. Makes you wonder if they are merely lazy, don't care, or that they diverged so far they can't rebase onto the current state of the FreeBSD sources. As an end user, it's made using and supporting MacOS X increasingly difficult due to the dated and feature-deficient tools and libraries.

Reply Score: 1

RE[3]: Legit question
by Flatland_Spider on Sun 5th Mar 2017 14:43 UTC in reply to "RE[2]: Legit question"
Flatland_Spider Member since:
2006-09-01

Check the code here: https://www.apple.com/opensource/

They periodically resync the userland, and I'm not sure when the last time they did that.

I think it's more that they don't want to introduce breaking changes, and MacOS hasn't been the crown jewel for a while.

Reply Score: 2

RE: Doubtful
by FlyingJester on Wed 8th Mar 2017 00:49 UTC in reply to "Doubtful"
FlyingJester Member since:
2016-05-11

That's about the worst real test possible. Running an OS doesn't require that a shell works, or that uname exists. You can easily set up a useful FreeBSD system (particularly for embedded purposes) in which neither is true.

Reply Score: 2

Sony Blu-ray NetBSD
by project_2501 on Sat 4th Mar 2017 15:57 UTC
project_2501
Member since:
2006-03-20

Every Sony Blu-ray player that I've ever owned references NetBSD in the licenses section of the documents. Always assumed the smart TV nteface was based on netBSD. (slooow)

NetBSD not freebsd.

Pretty sure it was true for the DVD players too.

Oh and Java which I understand is sadly necessary for Blu-ray menus...m

Reply Score: 4

RE: Sony Blu-ray NetBSD
by kurkosdr on Sat 4th Mar 2017 16:26 UTC in reply to "Sony Blu-ray NetBSD"
kurkosdr Member since:
2011-04-11

Oh and Java which I understand is sadly necessary for Blu-ray menus...m


Sadly? BD-J interactivity is one of the best features of Blu-ray, as it allows extras that were unheard-of before. Entire games can be built with it. For DVDs, these were done with Windows software such as InterActual Player, known by the marketing name "ROM features", but those features were not available when playing with a regular DVD player.

The slowness is probably caused by the need to authenticate AACS and BD+ before doing anything with the content. BD+ is an entire program that must run and finish to authenticate. But you know, it was either that or studios not releasing content for the format.

Edited 2017-03-04 16:27 UTC

Reply Score: 4

RE[2]: Sony Blu-ray NetBSD
by project_2501 on Sat 4th Mar 2017 17:26 UTC in reply to "RE: Sony Blu-ray NetBSD"
project_2501 Member since:
2006-03-20

I suppose java is better than some even more proprietary code .. there is a slightly bigger chance of developing an open source player .. for macOS X for example (there isn't an official blurry player at all iirc)

It is this inconvenience that I start to support those who want to break the crypto .. I pay for blurays properly .. and I bought a proper blu-ray disk player which would work on windows .. but not macOS nor Linux...

grrrr

Reply Score: 2

RE[3]: Sony Blu-ray NetBSD
by kurkosdr on Sun 5th Mar 2017 11:36 UTC in reply to "RE[2]: Sony Blu-ray NetBSD"
kurkosdr Member since:
2011-04-11

It is this inconvenience that I start to support those who want to break the crypto .. I pay for blurays properly .. and I bought a proper blu-ray disk player which would work on windows .. but not macOS nor Linux...

grrrr


So, you bought hardware without making sure you can have software to use it for your particular OS. Class, how do we call this? (Answer: Bad planning)

https://xkcd.com/644/

Also, you can get rid of the copy protection with DVDFab Blu-ray Copy for Mac. The big problem is not the crypto, but the fact the FOSS community still doesn't have software that supports Blu-ray's interactive features properly.

Edited 2017-03-05 11:39 UTC

Reply Score: 3

RE[2]: Sony Blu-ray NetBSD
by Lobotomik on Tue 7th Mar 2017 08:48 UTC in reply to "RE: Sony Blu-ray NetBSD"
Lobotomik Member since:
2006-01-03

It sounds exciting, but I do buy many DVDs and BRDs and I have never seen an example of good use of this. Do you have a particularly brilliant example? I watch BRDs in a PS3 -- maybe it hides this features because it does not support them?

Reply Score: 2

Comment by kurkosdr
by kurkosdr on Sat 4th Mar 2017 16:32 UTC
kurkosdr
Member since:
2011-04-11

BTW, no Stallmanites in the comments informing us about how the BSDs failed to protect their code from falling into proprietary hands? Where is OSNews going to?

Edited 2017-03-04 16:33 UTC

Reply Score: 4

RE: Comment by kurkosdr
by project_2501 on Sat 4th Mar 2017 17:28 UTC in reply to "Comment by kurkosdr"
project_2501 Member since:
2006-03-20

Those evil mega corps taking our efforts and profiting from them without giving back ... grrrr

Reply Score: 3

RE[2]: Comment by kurkosdr
by Lonney on Sun 5th Mar 2017 01:01 UTC in reply to "RE: Comment by kurkosdr"
Lonney Member since:
2013-12-12

Assuming you contribute to FreeBSD, you should see it as a validation of your quality work.

With the BSD license you full well know that no one has to contribute anything back to it, if you have the expectation that everyone will, perhaps you should switch to contributing to Linux or something else with a license that sets that expectation :-)

Reply Score: 1

RE: Comment by kurkosdr
by Trenien on Sat 4th Mar 2017 19:49 UTC in reply to "Comment by kurkosdr"
Trenien Member since:
2007-10-11

I would be very surprised if the BSD license isn't one of the reasons of choosing freebsd over linux (sony really didn't want to comply with the GPL back then, and mostly had to be dragged kicking and screaming into complying).

Reply Score: 2

RE[2]: Comment by kurkosdr
by Drumhellar on Sat 4th Mar 2017 20:39 UTC in reply to "RE: Comment by kurkosdr"
Drumhellar Member since:
2005-07-12

License is certainly the primary concern.

The GPL makes things difficult, especially when trade secrets are involved, or when you're licensing other people's tech.

The BSD licenses removes these concerns, and allows you to to use tech in a way not feasible with the GPL.

Reply Score: 2

RE[3]: Comment by kurkosdr
by bnolsen on Sat 4th Mar 2017 22:22 UTC in reply to "RE[2]: Comment by kurkosdr"
bnolsen Member since:
2006-01-06

Sony could have always licensed the linux kernel and done what they liked with it as well...

Reply Score: 1

RE[4]: Comment by kurkosdr
by Alfman on Sat 4th Mar 2017 23:41 UTC in reply to "RE[3]: Comment by kurkosdr"
Alfman Member since:
2011-01-28

bnolsen,

Sony could have always licensed the linux kernel and done what they liked with it as well...


You are right that sometimes a proprietary company can avoid the open source requirements by licensing the code under an alternate proprietary license in exchange for a fee. However the code contributed to linux is strictly under GPLv2. While some projects require contributors to grant full rights to a not-for-profit organization existing to oversee the project, the only requirement for linux contributors is to comply with GPLv2. This means that nobody, not even Linus himself, is able to obtain/sell the linux kernel under a non-GPLv2 license because he doesn't own the kernel. This has been a roadblock even to GPLv3 adoption because linux doesn't allow for "GPLv2 or newer".

Theoretically, adding a new license would require reaching out to every contributor and getting them to agree or otherwise remove their code. But even then specific contributions at some point in time may be very difficult to isolate after many years of evolution. A developer could have reused GPL code (from linux or elsewhere) and in any other context nobody would care, but in this specific context this developer doesn't have the right to re-license the code even though he is recorded as the contributor under source control. so it seems unlikely to me that an alternate license would be in the cards for linux.

Reply Score: 3

Comment by Drumhellar
by Drumhellar on Sat 4th Mar 2017 19:00 UTC
Drumhellar
Member since:
2005-07-12

It will be interesting to see what, if any, contributions back Nintendo makes, the way Sony's custom PS4 code found its way back into the FreeBSD system.

Reply Score: 2

Makes sense
by Darkmage on Sat 4th Mar 2017 20:53 UTC
Darkmage
Member since:
2006-10-20

FreeBSD just makes sense to use for any commercial product where you want lockdown and restricted sourcecode access. It's actually more surprising to me that less devices are using FreeBSD than Linux. If I was going to make a competitor OS to Apple or Microsoft FreeBSD would be my first choice as the base. You get a billion or so dollars of development work done for you with almost zero outlay. You then just extend it to match whatever features/hardware you need it to have.

Reply Score: 4

RE: Makes sense
by yoshi314@gmail.com on Sun 5th Mar 2017 09:21 UTC in reply to "Makes sense"
yoshi314@gmail.com Member since:
2009-12-14

the thing is that when it comes to linux, gpl helps with hardware support.

there is a lot of hardware reuse among various devices and sharing the driver code definitely helps here - it's easier to get your stuff running, and you can always modify the driver for your hardware if it's sliggtly different.

if there is no such incentive with bsd licence ,things may be different among vendors - eaxh may end up writing their own driver, independently.

it's whole another thing that some of them do not share their gpl code anyway.

Reply Score: 4

RE: Makes sense
by rleigh on Sun 5th Mar 2017 13:20 UTC in reply to "Makes sense"
rleigh Member since:
2014-11-15

I imagine much comes down to mindshare and available institutional expertise, rather than licensing or technical merit. Everyone more or less knows of and/or uses Linux, but FreeBSD is more niche. Maybe that will slowly change [I used to use Linux almost exclusively for two decades; now there's much more FreeBSD around.]

When tasked with updating an embedded product from DOS in a previous job, we went with Linux. With the agreement of the management. That was purely because it worked and we understood it. FreeBSD wasn't even considered. I suspect this happens in lots of situations where FreeBSD would be a perfectly valid alternative choice.

Edited 2017-03-05 13:21 UTC

Reply Score: 1

RE[2]: Makes sense
by Flatland_Spider on Sun 5th Mar 2017 14:55 UTC in reply to "RE: Makes sense"
Flatland_Spider Member since:
2006-09-01

Yeah, few companies are adventurous, or technical, enough to wade into the BSD waters. If decisions were based on technical merit, Linux would have zero presence in the networking appliance world.

Right now, everyone makes money using Linux, so everyone uses Linux. There are some exceptions, and they've significantly raised the profile of FreeBSD. Netflix for instance.

Reply Score: 2

RE[2]: Makes sense
by Alfman on Sun 5th Mar 2017 16:11 UTC in reply to "RE: Makes sense"
Alfman Member since:
2011-01-28

rleigh,

I imagine much comes down to mindshare and available institutional expertise, rather than licensing or technical merit. Everyone more or less knows of and/or uses Linux, but FreeBSD is more niche. Maybe that will slowly change [I used to use Linux almost exclusively for two decades; now there's much more FreeBSD around.]

When tasked with updating an embedded product from DOS in a previous job, we went with Linux. With the agreement of the management. That was purely because it worked and we understood it. FreeBSD wasn't even considered. I suspect this happens in lots of situations where FreeBSD would be a perfectly valid alternative choice.


Yea I've seen the same thing where Linux is considered but FreeBSD is not. Linux is favored for it's better support and popularity. However in my experience those are strictly userspace projects where GPL requirements aren't imposed on the company's code. Most corporate linux users simply don't do kernel level work, but if it weren't for the fact that the linux GPL license doesn't apply to independent userspace projects, there would probably be more corporate push-back against it because it conflicts with their proprietary business model.

If we shift to userspace libraries, I have seen companies actively avoiding GPL code to avoid the licensing requirements.

Edited 2017-03-05 16:12 UTC

Reply Score: 2

RE: Makes sense
by mgiammarco on Sun 5th Mar 2017 17:25 UTC in reply to "Makes sense"
mgiammarco Member since:
2006-04-25

Even Linn hi-end hifi maker uses FreeBSD. As you say it is only a license advantage. They can take a working product for free, customize it and do not fear to give back anything to anyone.

Reply Score: 2

RE: Makes sense
by laffer1 on Sun 5th Mar 2017 20:31 UTC in reply to "Makes sense"
laffer1 Member since:
2007-11-09

There is the big catch of graphics support. With a game console, you're going to have to write a whole lot of custom code and libraries for graphics anyway. However, if you're building a stock OS, you're looking at a decade behind tech with video card support on FreeBSD. Sure, NVIDIA has a binary blob available but AMD support is bad and nothing past haswell is supported on the intel side.

You don't pick freebsd for a technical advantage if you're building an OS for desktops. I know this from experience. There are many advantages to BSD, but GPU support is not one of them.

Reply Score: 2

RE[2]: Makes sense
by kurkosdr on Mon 6th Mar 2017 15:47 UTC in reply to "RE: Makes sense"
kurkosdr Member since:
2011-04-11

There is the big catch of graphics support. With a game console, you're going to have to write a whole lot of custom code and libraries for graphics anyway. However, if you're building a stock OS, you're looking at a decade behind tech with video card support on FreeBSD. Sure, NVIDIA has a binary blob available but AMD support is bad and nothing past haswell is supported on the intel side.

You don't pick freebsd for a technical advantage if you're building an OS for desktops. I know this from experience. There are many advantages to BSD, but GPU support is not one of them.


Let's be honest, if you are building an OS intended for non-nerds, you 'd be better off scrapping the trainkwreck that is X.org altogether and start anew, or if you can't do that, just modify Android.

X.org is like the kiss of death for anything involving the client-side, no successful OS on the client-side has it. Many client-side OSes who don't have it (Android, TiVo, Enigma, Boxee OS X) are successful.

Edited 2017-03-06 15:48 UTC

Reply Score: 2

RE[3]: Makes sense
by Darkmage on Mon 6th Mar 2017 20:06 UTC in reply to "RE[2]: Makes sense"
Darkmage Member since:
2006-10-20

Tizen uses X11 on all Samsung TVs currently being sold. It will eventually be replaced with Wayland but it appears to be working right now.

Reply Score: 2