Sunday, July 7, 2013

They could not afford Linux?

I was recently walking down Beverley Boulevard in Beverley Hills, where I walked past a store that my bank account is unworthy of entering. In the store's window there was a very large multicolor LED sign. What the sign was selling was the Windows[TM] crash dialog, asking for a button to be pressed. I'm sure this is not what the store wanted to be selling. My first thought on seeing this was "This place can't afford a sign that uses Linux?".

It is unlikely that the buyers of that sign had any idea of what made it work, until it crashed. Makes me wonder if we should start labeling our products like "Linux Inside"? A quick web search even found a GNU/Linux distribution intended for digital signs.

While Linux has no fee that does not necessarily mean it has no costs with designing it into a product. A designer that has only ever used Windows may end up spending less money designing in Windows[TM] due to the learning curve that it takes to embedded Linux in a product.

Something that I find a bit annoying is that the majority of the world thinks the choice is either Linux or Windows[TM] when there are other options available. Commercially there is QNX, vxWorks. uCOS-II and uCOS-III from Micrium, and other commercial vendors. I'm partial to uCOS-II myself, as you find my name in the first edition of the book for helping getting it debugged and documented.

In the Free and open-source software (FOSS) area there is NetBSD that works, and can be made to work, on many kinds of odd hardware. I'd prefer it over Linux due to its non-viral license. There is also Minux-III, the original Minux being the direct parent of Linux. Inferno is also interesting if you need a large scale networked system for something like a medical office application.

What uncommon systems do you recommend? Do you even think such systems are always required for embedded devices? Sometimes a simple 'big loop' might be enough, or be preferable as it is easier to verify.