Why so little in the way of BSDs on ARM? - Page 1
Forum section: electronics / general

author: cdev
author_rank: Super Contributor
timestamp: January 25, 2018, 10:54:15 pm
content: 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?

author: ataradov
author_rank: Super Contributor
timestamp: January 25, 2018, 11:31:00 pm
content: 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.

author: timb
author_rank: Super Contributor
timestamp: January 26, 2018, 03:13:12 am
content: Quote from: ataradov on January 25, 2018, 11:31:00 pmYeah, that’s not even remotely the truth.Corporations fund the development of *some* ports, but not all.

author: ataradov
author_rank: Super Contributor
timestamp: January 26, 2018, 03:22:56 am
content: 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.

author: SiliconWizard
author_rank: Super Contributor
timestamp: January 26, 2018, 03:55:57 pm
content: 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.

author: NiHaoMike
author_rank: Super Contributor
timestamp: January 27, 2018, 06:20:20 pm
content: 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.

author: timb
author_rank: Super Contributor
timestamp: January 28, 2018, 05:14:26 am
content: Quote from: NiHaoMike on January 27, 2018, 06:20:20 pmYes, 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...

author: cdev
author_rank: Super Contributor
timestamp: January 29, 2018, 08:52:32 pm
content: It (*BSD) may still be more resistant to certain kinds of ipv6 hijinks.Quote from: NiHaoMike on January 27, 2018, 06:20:20 pm

author: borjam
author_rank: Unknown
timestamp: January 29, 2018, 11:29:54 pm
content: Quote from: NiHaoMike on January 27, 2018, 06:20:20 pmMostly 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 ExcelAs 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.

author: NorthGuy
author_rank: Super Contributor
timestamp: February 09, 2018, 08:26:07 pm
content: Apple products (OS X, iOS) are based on BSD. So, it is very popular, just not in the way you want.

author: borjam
author_rank: Unknown
timestamp: February 09, 2018, 08:40:36 pm
content: Quote from: NorthGuy on February 09, 2018, 08:26:07 pmOf course, that's publicly knownBut 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.

author: cdev
author_rank: Super Contributor
timestamp: February 10, 2018, 02:49:55 am
content: 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.

author: stmdude
author_rank: Frequent Contributor
timestamp: February 10, 2018, 08:09:02 am
content: 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%20Pihttps://www.openbsd.org/arm64.htmlhttps://wiki.netbsd.org/ports/evbarm/raspberry_pi/They all support RPi

author: Karel
author_rank: Super Contributor
timestamp: February 10, 2018, 09:12:52 am
content: Quote from: borjam on January 29, 2018, 11:29:54 pmIt'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 guaranteesthat 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.

author: glarsson
author_rank: Frequent Contributor
timestamp: February 10, 2018, 11:03:29 am
content: Quote from: Karel on February 10, 2018, 09:12:52 amFor 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.

author: cdev
author_rank: Super Contributor
timestamp: February 10, 2018, 01:56:46 pm
content: NetBSD runs on virtuallyeverythingwith 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.

author: Karel
author_rank: Super Contributor
timestamp: February 10, 2018, 02:05:12 pm
content: Quote from: glarsson on February 10, 2018, 11:03:29 amWrong, 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/orthe 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 longas 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.

author: Siwastaja
author_rank: Super Contributor
timestamp: February 11, 2018, 09:32:56 am
content: Quote from: Karel on February 10, 2018, 02:05:12 pmThere 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 ofdistribution(naturally - that's what copyright is all about). So if the company is going todistributetheir 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 customersas well, not only the binaries.

author: Karel
author_rank: Super Contributor
timestamp: February 11, 2018, 10:45:18 am
content: Quote from: Siwastaja on February 11, 2018, 09:32:56 amRead my post again. Isn't that what I wrote?Quote

author: SiliconWizard
author_rank: Super Contributor
timestamp: February 12, 2018, 04:40:06 pm
content: Quote from: Karel on February 10, 2018, 02:05:12 pmI 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.

author: Karel
author_rank: Super Contributor
timestamp: February 12, 2018, 04:56:10 pm
content: Quote from: SiliconWizard on February 12, 2018, 04:40:06 pmAnd 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 companiesmake money with it and without the obligation to give modifications back...

author: SiliconWizard
author_rank: Super Contributor
timestamp: February 12, 2018, 06:04:41 pm
content: Quote from: Karel on February 12, 2018, 04:56:10 pmI 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.Quote from: Karel on February 12, 2018, 04:56:10 pmThat'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.Quote from: Karel on February 12, 2018, 04:56:10 pmThe 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.

author: Karel
author_rank: Super Contributor
timestamp: February 12, 2018, 06:37:24 pm
content: Quote from: SiliconWizard on February 12, 2018, 06:04:41 pmIf 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.Quote from: SiliconWizard on February 12, 2018, 06:04:41 pmUsually, those people don't like it if private companies take their fruit for granted. Hence the "copyleft" license like GPL.Quote from: SiliconWizard on February 12, 2018, 06:04:41 pmAgain, 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 encouragingprivate 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.

author: Karel
author_rank: Super Contributor
timestamp: February 12, 2018, 06:42:46 pm
content: A nice example of the opposite of giving back: Microchip who took the GCC compiler and hacked it so thatyou 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?

author: glarsson
author_rank: Frequent Contributor
timestamp: February 12, 2018, 06:50:23 pm
content: Quote from: Karel on February 10, 2018, 02:05:12 pmNot fair.1. Use a piece of code that saves us some hours of work.2. Pay by releasing defense secrets.3.Profit. Jail time.

author: stmdude
author_rank: Frequent Contributor
timestamp: February 12, 2018, 06:51:37 pm
content: Quote from: Karel on February 12, 2018, 04:56:10 pmI'm one of those people. The reason for me writing software is that I love doing it. I develop weird and wonderful pieces of code, some of it is even useful.I'd love it if more people find it useful and makes their lives easier in some way. To me, it doesn't matter if they use it at home for their own pet projects, or if they include it in the latest wiz-bang 2000 commercial product. I still had fun when I wrote it.So, the only way to allow people to use it whenever, wherever is to use a non-copyleft license (such as BSD, MIT, etc), as a lot of companies are either scared of even accidentally violating the GPL, or are unwilling to set up the infrastructure/routines to comply with the copyleft. (Yes, I know it's not a big deal, but they think differently)I know for a fact that my BSD-licensed code have shipped in 10s of millions of devices due to just one company using it. There might be more that I don't know of, but that's okay.It's not really something fancy, but it does what it needs really well, and it has been very well tested. If I hadn't BSD-licensed that code, the company probably would have rolled their own solution to it.So, I see it as two options.1. I use a license that's compatible with proprietary software, and save someone a couple of weeks workor2. I use a copyleft license, and nobody uses it, and I "waste" two weeks of some engineers time, writing something I have already written, but probably not as well tested.I'm not trying to sway anyone towards a non-copyleft license here. I'm just saying why _I'm_ doing things a certain way.To me, software only has value when its being used. With a non-copyleft license, more people can use it.As for money? None of my project will solve world hunger, create peace on earth or do anything people would (or should) pay money for. I make money for food and shelter by developing proprietary products. My payback for giving away my software is that I get to use other peoples software that they give away.

author: NiHaoMike
author_rank: Super Contributor
timestamp: February 14, 2018, 04:20:45 am
content: What about LGPL as a middle ground?

author: Marco
author_rank: Super Contributor
timestamp: February 14, 2018, 05:17:30 am
content: Quote from: cdev on January 25, 2018, 10:54:15 pmMost of the Linux kernels which run on these SBCs are offshoots from Android development with binary blobs and byzantine build procedures specific to a given kernel version.

author: cdev
author_rank: Super Contributor
timestamp: February 14, 2018, 07:04:10 am
content: Now that Ive looked into it Ive found you can run FreeBSD, OpenBSD and NetBSD on the RPI and other arm64 boards.You just have to dig a bit to find them.

author: Karel
author_rank: Super Contributor
timestamp: February 14, 2018, 07:25:54 am
content: Quote from: NiHaoMike on February 14, 2018, 04:20:45 amA lot of libraries are already using the Lesser GPL.GNU Project leader Richard Stallman wrote the essayWhy you shouldn't use the Lesser GPL for your next libraryexplaining that the LGPL had not been deprecated, but that one should not necessarily use the LGPL for all libraries:Quote from: Richard StallmanI think he is right.

author: cdev
author_rank: Super Contributor
timestamp: April 29, 2018, 03:26:18 am
content: He's a very smart guy.

author: Karel
author_rank: Super Contributor
timestamp: April 29, 2018, 08:12:35 am
content: Also, there are libraries which come with a GPL license and a commercial license.You pay only when you want to use it in closed source software. Looks like the best solution to me.Some examples:https://www.qt.io/https://kfrlib.com/