原创 Linux is the winner, or is it?

2012-5-15 17:19 1643 12 13 分类: 消费电子

At the recent RTECC conference, Jim Ready, founder of Montavista (which has been part of fast-growing but profit-challenged Cavium since 2009) said that there really isn't much need for RTOSes anymore, as Linux can be used instead.


Ironically, Jim created VRTX, one of the very first commercial real-time operating systems back in 1980. Not a week goes by that I don't hear a similar statement from some pundit, or get email from an engineer wondering if sticking with an RTOS is a bad idea in view of Linux's many virtues.


Apart from the whole hard- or soft-real-time debate, there are a lot of reasons why Linux will always be a non-starter for huge classes of embedded systems. One of those reasons is that it just does not work in the limited address spaces of microcontrollers, and MCUs are not going away. In fact, they are proliferating as never before.


A quick look at Atmel's site reveals 258 variants of their immensely popular AVR line. That's in addition to the 51 kinds of 8051s they sell. Microchip has over 650 microcontrollers, a number that seems to balloon constantly. Freescale packs about 175 eight and 16 bit MCUs into their line card. Plenty of other vendors supply proprietary-architecture controllers.


Then there's ARM.


NXP offers about 140 different microcontrollers using Cortex-M series cores. NXP has about 200. TI pushes around 400. Dozens of other vendors offer ARM-based microcontrollers. No doubt there are over 1000 MCUs that use the Cortex-M-series processor.


Why focus on the M series? Linux will never run on these parts. The vast majority of them are used in applications that run from on-board memory, which never exceeds a few hundred KB.


To a non-embedded person acquainted with Intel's never-ending pursuit of performance the Cortex-M family would seem an anachronism, a step back into the era of scarce CPU cycles. But that person would be astounded to learn of the computer in his toothbrush or the millions of transistors used in a programmable thermostat to replace a simple mercury switch. An essential truism of computing is that the race to the top in performance is always matched by a race to the bottom: the bottom in price, power and in size.


But the real-time debate is important as well. At the most recent ESC the nice folks at Petalogix demonstrated Linux running on one core in a Xilinix FPGA and FreeRTOS in another. I was struck by the following performance graph produced by one of their tools:

 

gansslertosvslinux.jpg


(Chart courtesy of Petalogix)


Interrupt latency is, in some systems, hugely important. (If you are thinking about Linux-ing an FPGA, do check out their tools at www.petalogix.com).


The truth is that in the world of embedded systems applications range from electric toothbrushes and greeting cards to massive weapon systems. Linux is well-suited for some of these; a traditional RTOS is the right choice for others. We engineers benefit from having both in our toolbox.


 

文章评论1条评论)

登录后参与讨论

用户3751049 2013-9-29 02:41

It's not so easy to get a design ready in time. If you read the UBM 2013 Embedded Market Survey and get an insight on how really bad it is. But, the optimist will see a huge potential in future improvement here!

Very few projects are ready ahead of schedule, only 5% but 3% are also canceled. On schedule are 38%, close to 1/3 so the rest is delayed at various degrees.

It's interesting to note that among the numbers of projects, over 50% is upgrades or enhancements to existing designs. Despite that, one could think, a better precision in time prediction would have been possible, but no. If you buy a new house you can be sure it's delevered in time or with only little delay.

In the electronics industry it's hard to predict the build time even if the piece to be delivered is small as a matchbox.

Roger Sundman

用户1406868 2012-9-15 17:04

Thanx eMediaMusic, I am looking into your suestggion and apparently it is possible. But it will be a learning curve, I find writing music easy, but learning and understanding the complexities of programmes is a whole different thing.
相关推荐阅读
用户3671694 2016-04-18 17:49
What would you change about C?
If you’re an old-timer you’ve most likely written code in a large number of languages that have ma...
用户3671694 2016-04-18 17:33
A look at a new embedded heap manager
Many of us don’t give much thought about the math our compilers do. Toss off a call to a sine func...
用户3671694 2016-04-15 17:12
Why names are critical
The Linux printk function has various logging levels, which include KERN_EMERG, KERN_ERR and other...
用户3671694 2016-03-14 19:02
What do you think of ultra-low power watchdogs?
I have written extensively about designing ultra-low power systems that operate from coin cells. U...
用户3671694 2016-02-26 21:58
Comment headers: The best and the worst
I read a great deal of code. The vast majority is in C with some C++ and a bit of assembly sprinkl...
用户3671694 2016-02-12 17:58
What's your take on knobs?
In a recent Embedded Muse Richard Wall reviews the latest version of Digilent’s Analog Discovery U...
我要评论
1
12
关闭 站长推荐上一条 /2 下一条