Author Topic: Why so little in the way of BSDs on ARM?  (Read 5218 times)

0 Members and 1 Guest are viewing this topic.

Offline cdev

  • Super Contributor
  • ***
  • Posts: 4211
  • Country: 00
  • We're glad you made it, welcome to the future!
Why so little in the way of BSDs on ARM?
« on: January 26, 2018, 09:54:15 am »
Is there any reason why there are tons of Linux distros for ARM based SBCs like Raspberry Pi but little in the way of BSD support for them?
"What the large print giveth, the small print taketh away."
 

Online ataradov

  • Super Contributor
  • ***
  • Posts: 4911
  • Country: us
    • Personal site
Re: Why so little in the way of BSDs on ARM?
« Reply #1 on: January 26, 2018, 10:31:00 am »
Ports are developed by corporations. Corporations will not spend time and money supporting multiple things, they can barely deal with one. And realistically, if you have only one to pick, your pick is going to be Linux.
Alex
 

Offline timb

  • Super Contributor
  • ***
  • Posts: 2528
  • Country: us
  • Pretentiously Posting Polysyllabic Prose
    • timb.us
Re: Why so little in the way of BSDs on ARM?
« Reply #2 on: January 26, 2018, 02:13:12 pm »
Ports are developed by corporations. Corporations will not spend time and money supporting multiple things, they can barely deal with one. And realistically, if you have only one to pick, your pick is going to be Linux.

Yeah, that’s not even remotely the truth.

Corporations fund the development of *some* ports, but not all.
Any sufficiently advanced technology is indistinguishable from magic; e.g., Cheez Whiz, Hot Dogs and RF.
 

Online ataradov

  • Super Contributor
  • ***
  • Posts: 4911
  • Country: us
    • Personal site
Re: Why so little in the way of BSDs on ARM?
« Reply #3 on: January 26, 2018, 02:22:56 pm »
Each CPU manufacturer invests money in supporting their own platform. This results in overall support for a number of platforms.

But why would they invest money in doing the same for BSD? There are no actual customers for that, and supporting a platform costs significant amount of money.

You will probably get some additional community/third-party support for CPUs installed on popular boards/devices, but the rest will get one of that.

And if community does not pick up the development of BSD, that just means that community does not need it either.
Alex
 

Offline evb149

  • Super Contributor
  • ***
  • Posts: 1663
  • Country: us
Re: Why so little in the way of BSDs on ARM?
« Reply #4 on: January 26, 2018, 02:31:18 pm »
Eh there aren't that many prominent BSDs.
NetBSD, for instance, was once (and maybe still is) quite well known for having many diverse officially supported platforms including both different CPU architectures as well as platforms within an architecture.

FreeBSD was considered reasonably portable but not so much, and as I recall OpenBSD relatively similar.

I'm not sure how many once supported platforms these may have dropped over the past couple of decades (PPC, SPARC, MIPS, whatever) but I'd be somewhat surprised if at least NetBSD didn't have a good showing.

BSDs are great for servers and embedded systems.  For desktop use the same kinds of "closed source windows driver only hardware with no programming documentation" hindrances that affected LINUX came into play but worse since they were even less likely to be supported by manufacturers or independent desktop developers.
For a while actually getting wired ethernet NIC, wireless LAN adapter (USB or PCI), GPU, USB printer, USB scanner or similar drivers for both LINUX and BSD was "mostly impossible" with only a few known to work standard models that people used.   Things have improved somewhat but still basically notably suck significantly on both OSs for UCB printers, GPUs, and too many USB devices.

And despite being "maker" oriented things like the RaspberryPi et. al. aren't that "open".  Just try finding schematics / hardware design files for some of their stuff.  For years the Pi's GPU and video processing engine had only a binary blob driver -- no open source so if you wanted to use a significantly different OS or even LINUX kernel you were out of luck.  SOC CPU data sheets and tech manuals weren't public.  I'm not even sure if they've "finished" opening some of that up.  Last I recall it might not have really been opened in some ways though at least I think they gave out some API documents and some level of source for the video/GPU engine but maybe not everything. 

Several other "maker" SBCs are even worse with some being called out for blatantly violating the GPL and shipping binary LINUX with no source even for the kernel etc. they use.

It seems like most of the BSDs never had quite the "packages and ports" ecosystems that LINUX does.  So they may have had a couple thousand of your favorite packages but for the most part it wasn't unusual to have to rebuild the packages / ports yourself and often the kernel / system SW too as opposed to LINUX commonly available big binary package sets with frequent updates within and between major distribution releases etc.

ARM SOCs tend to have closed documentation / closed source GPUs.  Mali comes to mind among others.
So it'd be hard for most modern desktops (GNOME 3, KDE, QT based SW) to even run well or at all without a GPU with programmable shaders and good OpenGL support to work.  And BSDs lag behind LINUX on that for sure.  Maybe the Intel GPUs or a couple unusual ARM ones might be exceptions.



 

Offline SiliconWizard

  • Super Contributor
  • ***
  • Posts: 1181
  • Country: fr
Re: Why so little in the way of BSDs on ARM?
« Reply #5 on: January 27, 2018, 02:55:57 am »
What kind of benefit would you expect from having a BSD derivative as an OS on a small SBC compared to Linux?

As for me, one thing that I would find much more interesting to have (and actually why there isn't any is mind-boggling to me) is a real-time kernel. I have yet to find any official Linux distro for any known SBC that comes with linux-rt as a kernel. You can always compile them yourself but with no guarantee whatsoever (and that may be a lot of work on some targets).

Even if scheduling has made a lot of progress in recent vanilla Linux kernels, I can tell you that nothing compares to the linux-rt kernel for real-time needs.
 

Offline NiHaoMike

  • Super Contributor
  • ***
  • Posts: 4608
  • Country: us
  • "Don't turn it on - Take it apart!"
    • Facebook Page
Re: Why so little in the way of BSDs on ARM?
« Reply #6 on: January 28, 2018, 05:20:20 am »
I remember at one point FreeBSD was said to have an even better networking stack than Linux. Is that still true? I think there has to be a reason most ARM based routers run Linux rather than BSD.
Cryptocurrency has taught me to love math and at the same time be baffled by it.

Cryptocurrency lesson 0: Altcoins and Bitcoin are not the same thing.
 

Offline timb

  • Super Contributor
  • ***
  • Posts: 2528
  • Country: us
  • Pretentiously Posting Polysyllabic Prose
    • timb.us
Re: Why so little in the way of BSDs on ARM?
« Reply #7 on: January 28, 2018, 04:14:26 pm »
I remember at one point FreeBSD was said to have an even better networking stack than Linux. Is that still true? I think there has to be a reason most ARM based routers run Linux rather than BSD.

Yes, I believe it’s still true. It’s also the most popular TCP/IP stack in the world, as Windows and macOS (plus iOS, etc.) also use  variants of it.

The reason most small routers run Linux over BSD is because ports already existed for the kernel and core components, making it quicker, cheaper and easier to bring up the software.

Also, most small routers traditionally aren’t ARM based! MIPS has been a very popular platform for routers up until recently; only in the last few years have ARM based routers started making serious headway.

A few years ago there was a working (official) port of FreeBSD for the Raspberry Pi. It worked (though required a lot of compiling to bring up). I wonder how that’s going...
Any sufficiently advanced technology is indistinguishable from magic; e.g., Cheez Whiz, Hot Dogs and RF.
 

Offline cdev

  • Super Contributor
  • ***
  • Posts: 4211
  • Country: 00
  • We're glad you made it, welcome to the future!
Re: Why so little in the way of BSDs on ARM?
« Reply #8 on: January 30, 2018, 07:52:32 am »
It (*BSD) may still be more resistant to certain kinds of ipv6 hijinks.

I remember at one point FreeBSD was said to have an even better networking stack than Linux. Is that still true? I think there has to be a reason most ARM based routers run Linux rather than BSD.
"What the large print giveth, the small print taketh away."
 

Offline borjam

  • Supporter
  • ****
  • Posts: 638
  • Country: es
  • EA2EKH
Re: Why so little in the way of BSDs on ARM?
« Reply #9 on: January 30, 2018, 10:29:54 am »
I remember at one point FreeBSD was said to have an even better networking stack than Linux. Is that still true? I think there has to be a reason most ARM based routers run Linux rather than BSD.
Mostly just familiarity. Linux is popular, BSD isn't. Which is funny, because the license of Linux is quite restrictive and most routers/appliances running Linux are violating the license like crazy.

Juniper routers (a significant percentage of the routers running Internet backbones) happen to run FreeBSD.

As for lack of popularity, lately I have observed quite a stupid phenomenon. Many "Linux people" running open source products are openly shunning *BSD when not actually sabotaging it. More and more often you see software resorting to "Linux only" mechanisms that often don't offer a real benefiit but severely hurt portability. In some cases, pointing out minor bugs that affect portability can be answered with a "heh, those BSD idiots fucking compilation", yada yada.

Which is really unfortunate. Monocultives are a bad idea. If this trend goes on, soon lots of Linux based software will be as portable as MS Word or Excel  :-DD

As far as I know, the Raspberry Pi is not open at all. It can be convenient and cheap. granted. But some of the documentation is proprietary and drivers are only provided in binary form.
 

Offline NorthGuy

  • Super Contributor
  • ***
  • Posts: 1171
  • Country: ca
Re: Why so little in the way of BSDs on ARM?
« Reply #10 on: February 10, 2018, 07:26:07 am »
Apple products (OS X, iOS) are based on BSD. So, it is very popular, just not in the way you want.
 

Offline borjam

  • Supporter
  • ****
  • Posts: 638
  • Country: es
  • EA2EKH
Re: Why so little in the way of BSDs on ARM?
« Reply #11 on: February 10, 2018, 07:40:36 am »
Apple products (OS X, iOS) are based on BSD. So, it is very popular, just not in the way you want.
Of course, that's publicly known :) But I meant the open source BSD versions.

It would be good actually, diversity is great and it's always a bad idea to rely on a single operating system.
 

Offline cdev

  • Super Contributor
  • ***
  • Posts: 4211
  • Country: 00
  • We're glad you made it, welcome to the future!
Re: Why so little in the way of BSDs on ARM?
« Reply #12 on: February 10, 2018, 01:49:55 pm »
I ran NetBSD for years on a microserver I have. It was insanely stable. It "just worked". I like BSD's ports system. Basically you build everything from source, but its very easy.
"What the large print giveth, the small print taketh away."
 

Offline stmdude

  • Frequent Contributor
  • **
  • Posts: 472
  • Country: se
Re: Why so little in the way of BSDs on ARM?
« Reply #13 on: February 10, 2018, 07:09:02 pm »
If you're talking about the Raspberry Pi, I don't really know what other BSDs you'd like?

https://wiki.freebsd.org/FreeBSD/arm/Raspberry%20Pi
https://www.openbsd.org/arm64.html
https://wiki.netbsd.org/ports/evbarm/raspberry_pi/

They all support RPi
 

Offline Karel

  • Super Contributor
  • ***
  • Posts: 1264
  • Country: 00
Re: Why so little in the way of BSDs on ARM?
« Reply #14 on: February 10, 2018, 08:12:52 pm »
..., because the license of Linux is quite restrictive ...

It's not. What you probably mean is that companies can not "take and don't give back".

From the viewpoint of the end user, the GPL license is the best choice because it guarantees
that free code stays free (free as in speech, not as in beer).

Personally, I don't understand programmers who want to spend their time for free (as in without any payment)
to software that can taken and modified by companies to make money without giving the modifications back.
The difference between theory and practice is less in theory than
the difference between theory and practice in practice.
Expensive tools cannot compensate for lack of experience.
 

Offline glarsson

  • Frequent Contributor
  • **
  • Posts: 704
  • Country: se
Re: Why so little in the way of BSDs on ARM?
« Reply #15 on: February 10, 2018, 10:03:29 pm »
It's not. What you probably mean is that companies can not "take and don't give back".
For us (defense) it is.
Restrictive GPL license -> can't use it -> no opportunity to improve it -> no give back.
Nice BSD (or similar) license -> can use it -> will improve it -> will give back.
 

Offline cdev

  • Super Contributor
  • ***
  • Posts: 4211
  • Country: 00
  • We're glad you made it, welcome to the future!
Re: Why so little in the way of BSDs on ARM?
« Reply #16 on: February 11, 2018, 12:56:46 am »
NetBSD runs on virtually everything with a 32 bit CPU and a couple megs of RAM!

Also, these is now a new option for RPI. Apparently one can run OpenBSD on a Raspberry Pi now without THAT much difficulty, although it doesn't have much in the way of bells and whistles.

This is after several years of its main person (Theo DeRaddt) saying it wasn't going to happen, he changed his mind.

And apparently it runs pretty well.

(According to the security community, OpenBSD is the BSD with the smallest number of bugs. But it also has far fewer applications.)

Its the one BSD I have never used.

« Last Edit: February 11, 2018, 01:44:09 am by cdev »
"What the large print giveth, the small print taketh away."
 

Offline Karel

  • Super Contributor
  • ***
  • Posts: 1264
  • Country: 00
Re: Why so little in the way of BSDs on ARM?
« Reply #17 on: February 11, 2018, 01:05:12 am »
It's not. What you probably mean is that companies can not "take and don't give back".
For us (defense) it is.
Restrictive GPL license -> can't use it -> no opportunity to improve it -> no give back.
Nice BSD (or similar) license -> can use it -> will improve it -> will give back.

Wrong, you can use GPL'ed software as long as you give back. "Qui pro quo":

You get to use GPL'ed software on the condition that the community get your modifications and/or
the software that links to it. Sounds fair to me.

In case you don't modify, and don't link with, GPL'ed software, there's nothing you have to give back.
In that case you can use it for free without giving anything back. Sounds like a bargain.

edit:

Some remarks:

You can modify and use GPL'ed software without giving back as long as you don't distribute it e.g. as long
as you keep it internal in your organization.

Second, if you do modify GPL'ed software, you only need to give back to the person or organization you distributed to.
« Last Edit: February 11, 2018, 01:19:42 am by Karel »
The difference between theory and practice is less in theory than
the difference between theory and practice in practice.
Expensive tools cannot compensate for lack of experience.
 
The following users thanked this post: jancumps

Offline Siwastaja

  • Super Contributor
  • ***
  • Posts: 1426
  • Country: fi
Re: Why so little in the way of BSDs on ARM?
« Reply #18 on: February 11, 2018, 08:32:56 pm »
Wrong, you can use GPL'ed software as long as you give back. "Qui pro quo":

There even isn't any absolute "must give back" clause in GPL - this is a common misconception. Internally to the company, nothing prevents you from modifying GPL licensed software for any purpose.

Licensing only applies to the act of distribution (naturally - that's what copyright is all about). So if the company is going to distribute their binaries (built from the modified code) to, for example, their customers (as a product they sell, or even for free), they need to supply the sources (and relevant build environment) to those customers as well, not only the binaries.
 

Offline Karel

  • Super Contributor
  • ***
  • Posts: 1264
  • Country: 00
Re: Why so little in the way of BSDs on ARM?
« Reply #19 on: February 11, 2018, 09:45:18 pm »
Wrong, you can use GPL'ed software as long as you give back. "Qui pro quo":

There even isn't any absolute "must give back" clause in GPL - this is a common misconception. Internally to the company, nothing prevents you from modifying GPL licensed software for any purpose.

Read my post again. Isn't that what I wrote?

Quote
Some remarks:

You can modify and use GPL'ed software without giving back as long as you don't distribute it e.g. as long
as you keep it internal in your organization.

Second, if you do modify GPL'ed software, you only need to give back to the person or organization you distributed to.

The difference between theory and practice is less in theory than
the difference between theory and practice in practice.
Expensive tools cannot compensate for lack of experience.
 
The following users thanked this post: 3db

Offline SiliconWizard

  • Super Contributor
  • ***
  • Posts: 1181
  • Country: fr
Re: Why so little in the way of BSDs on ARM?
« Reply #20 on: February 13, 2018, 03:40:06 am »
You get to use GPL'ed software on the condition that the community get your modifications and/or
the software that links to it. Sounds fair to me.

I think I get the point of open source software, which has a lot of great aspects, but I'm not sure about fairness.
One of the issues I see with it is that there is no concept (that I know of, but I'm certainly no specialist of GPL) of proportion, which I personally think can't be separated from the concept of fairness.

One example (very frequent in private companies) is the following: let's assume you just want to use one GPL library in your product, mainly because it's robust, proved and reasonably supports some standards. The fact that you would have to give away your whole software source code, which is probably a lot more than just a library, is often not fair. It's not in proportion of what you took. There may be some tricks to circumvent that (such as isolating your software in pieces and make sure there is only one small module that uses the GPL library), but I don't know if it's a valid approach according to GPL at all.

In a world where there is absolutely no economic competition of any sort (which is not our world obviously), that may not be an issue at all. But this is not the world we currently live in.

This pushes most private companies to either not embed GPL-licensed software, violate the GPL license, or write all of their software modules in-house (or buy commercial licenses).
For GPL software backed by some institutions, there are sometimes commercial variants of GPL software that you can use freely in a commercial setting if you pay for it. That's a partial answer to the above issue but twists the spirit of GPL in a weird way.

Again, I get the point of open source which is supposed to encourage free sharing. But there are cases in which fairness is hard to justify.
 

Offline Karel

  • Super Contributor
  • ***
  • Posts: 1264
  • Country: 00
Re: Why so little in the way of BSDs on ARM?
« Reply #21 on: February 13, 2018, 03:56:10 am »
You get to use GPL'ed software on the condition that the community get your modifications and/or
the software that links to it. Sounds fair to me.

I think I get the point of open source software, which has a lot of great aspects, but I'm not sure about fairness.
One of the issues I see with it is that there is no concept (that I know of, but I'm certainly no specialist of GPL) of proportion, which I personally think can't be separated from the concept of fairness.

One example (very frequent in private companies) is the following: let's assume you just want to use one GPL library in your product, mainly because it's robust, proved and reasonably supports some standards. The fact that you would have to give away your whole software source code, which is probably a lot more than just a library, is often not fair. It's not in proportion of what you took. There may be some tricks to circumvent that (such as isolating your software in pieces and make sure there is only one small module that uses the GPL library), but I don't know if it's a valid approach according to GPL at all.

And what about the private companies that use Linux and or Libreoffice and lots of other software for free without giving back anything?
For every example you give, I can give you another example that shows unfairness from the opposite site.

If you believe it's not in proportion, then don't use GPL'ed software, nobody forces you to use it.

I just don't understand people who want to write software for free under a BSD style license without getting any payment and let other companies
make money with it and without the obligation to give modifications back... :-//
The difference between theory and practice is less in theory than
the difference between theory and practice in practice.
Expensive tools cannot compensate for lack of experience.
 

Offline SiliconWizard

  • Super Contributor
  • ***
  • Posts: 1181
  • Country: fr
Re: Why so little in the way of BSDs on ARM?
« Reply #22 on: February 13, 2018, 05:04:41 am »
And what about the private companies that use Linux and or Libreoffice and lots of other software for free without giving back anything?
For every example you give, I can give you another example that shows unfairness from the opposite site.

I understand your point. I'm not blindly taking one side.
But the fact that there is unfairness from both sides doesn't make the whole thing fair by compensation. ;)
It may even just second the view that the whole concept is not inherently fair.

If you believe it's not in proportion, then don't use GPL'ed software, nobody forces you to use it.

That's right! I just thought this would make an interesting discussion about the GPL.
And even though I understand your point, I still think there is general interest for a company to use open-source software in some cases (such as robustness of software, security, ...) beyond the fact that it would share its software back. It can benefit customers and public interest in general in many ways. Sharing the core of a company's intellectual property, which is often the core of its value,  on the other hand, is a complex issue.

I just don't understand people who want to write software for free under a BSD style license without getting any payment and let other companies
make money with it and without the obligation to give modifications back... :-//

The vast majority of people writing open-source software don't get any payment in return. Only a small fraction of them get retributed, directly or indirectly.
There are other incentives for doing this, such as willing to share your work and knowing other people will use it. It can be very rewarding. Also, some people will do it to get some credit, get known and in the end have more job opportunities.

Forcing people to share (with a restrictive license) is not necessarily the best way of encouraging sharing. Of course this is another debate and probably a potentially heated one.
 

Offline Karel

  • Super Contributor
  • ***
  • Posts: 1264
  • Country: 00
Re: Why so little in the way of BSDs on ARM?
« Reply #23 on: February 13, 2018, 05:37:24 am »
The vast majority of people writing open-source software don't get any payment in return. Only a small fraction of them get retributed, directly or indirectly.

If we exclude hobbyist software, then most open-source programmers get paid for it, direct or indirect.
Either by money or by the fact that they can use other peoples software and libraries.

There are other incentives for doing this, such as willing to share your work and knowing other people will use it. It can be very rewarding. Also, some people will do it to get some credit, get known and in the end have more job opportunities.

Usually, those people don't like it if private companies take their fruit for granted. Hence the "copyleft" license like GPL.

Forcing people to share (with a restrictive license) is not necessarily the best way of encouraging sharing.

Again, nobody forces anybody to use GPL'ed software.

I guess that programmers who selected the GPL as the license for their software aren't interested in encouraging
private companies to use their software without obligation and then hope that they give something back.
Personally, I agree with them.

Also, I couldn't care less when companies are whining that they can't use GPL'ed software and/or that it isn't fair.
The difference between theory and practice is less in theory than
the difference between theory and practice in practice.
Expensive tools cannot compensate for lack of experience.
 

Offline Karel

  • Super Contributor
  • ***
  • Posts: 1264
  • Country: 00
Re: Why so little in the way of BSDs on ARM?
« Reply #24 on: February 13, 2018, 05:42:46 am »
A nice example of the opposite of giving back: Microchip who took the GCC compiler and hacked it so that
you can't use higher optimization settings anymore without buying a license...
At least, that's how they sell it. Ofcourse they have to comply with the GPL and thanks to that, you can "unhack" the compiler.

Do you want me to picture for you what would have happened if the GCC compiler was released under a BSD license?
The difference between theory and practice is less in theory than
the difference between theory and practice in practice.
Expensive tools cannot compensate for lack of experience.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf