Real-time Embedded Linux and POSIX RTOSs For Microcontrollers (MCUs)

Wednesday, January 24, 2007

Pseudo Open Source

In years past we had proprietary solutions and people protected their IP. Today, many solutions are open source based on some type of "copyleft" license while other models range from Freemium to partially protected software.

I think that GPL is the ultimate bait and switch strategy. Support costs money and has to come from somewhere - the community support models are not suitable for production systems unless the software is extremely stable or the systems aren't critical. People end up purchasing support which is the real cost of the software but are unable to protect any modifications that are done as an add on.

Why does the GPL insist on having all associated code in GPL? What are they afraid of in proprietary technology?

The freemium model is much better supported by other license agreements.

Sun's agreement seems like the best of many worlds offering great freemium model support, ecosystem support and protection for those who require it.

Tuesday, January 23, 2007

Peak Stream - A New New Array Processor

The Peak team has great marketing. I really liked it and their new launch will be a great success I'm sure.

Myself, I prefer more standard calls that our industry has been working on for some time but it isn't a material difference. I do think that their tools are more limited than those of 20 years ago and their basic architecture is 30 years old or more for the most part. Why shouldn't we call it a new new thing - everyone else rehashes old technology into new all the time?

Myself, I would think that a combined programming model would be much stronger. After all, they have one multiprocessor application - why not make it all multi-threaded too and have the benefits of being able to program and debug on the underlying processors if requried? Why guess when it doesn't work - go and look (debugging rule number 6)? The dynamic allocation strategies and dynamic compiling (the new part) make this a bit tricky, but it should be possible.

I think that this will work well for many applications but we all really need some new thinking in the programming area. For real-time systems it seems much too limited in this form.