Embedded Systems Study Rebutted
Gabba writes "LinuxDevices.com has a rebuttal to the Microsoft-funded report purporting to show Windows nearly 4X more efficient than Linux for developing embedded systems. The rebuttal shows the study to be full of flaws in both design and execution."
In today's job market, I keep my resume always up to date. If my management were so dumb as to buy into an article like this, i'd get my ass on the market, and cacle evilly as they reaped the 'benefits' of their foolishness.
(if you fear doing that, you lack skills - get some, mostly people skills!)
However, very few executives are this stupid anymore. The last 3 years or so have taken a big bite out of the idiot IT manager population. I'm sure there are quite a few still around, but the more blatant ones have bitten the dust (or their whole companies have).
HBI's Law: Frequency of calling others Nazis is directly correlated with the likelihood of the accuser being Communist.
First, let me be honest. I just skimmed the LinuxDevices article and didn't read the Microsoft article.
One thing I've noticed among PHBs is an ever-broadening definition of "embedded systems". I've seen more than one project go down the road of using a cPCI system running Windows NT 3.51 (yes these are current systems running this old version) on a harddrive. These systems are calling themselves "embedded".
This has been especially in systems that had serious size, weight, and power needs. Had I designed the system, I guess I would've used something like QNX or Linux on a much smaller processor, compact flash card, etc.
I guess my point is that these days it seems like general-purpose computers are being called "embedded" when I see embedded as much, much smaller (e.g. no moving parts, a microcontroller, etc...).
I dunno, I'm rambling...
On a consumer level, there are no real benefits to using Windows on embedded controllers, or even developing for evaluation boards.
Although I deviate from Linux in this example, it is still relevant to all open source embedded solutions. A few questions: is there an implementation of Remote Terminal Services for embedded versions of Windows, for easy manipulation of the embedded device in question? If so, what sort of licensing costs are implied?
As demonstrated numerous times before, open standards such as VNC are superior in the aspects of platform-ubiquity, openness, freeness, and simplicity. A shining example of what would be a costly, if implemented, solution, under Windows would be the Ethernet board running Contiki.
Oh yeah, and how many simultaneous threads, per-process-threads, and processes, do embedded Windows products support?
One must also compare the existing products that can be compiled between embedded Linux and Windows. I'm willing to bet software written with POSIX in mind beats Windows.
Excuse me if these speculations seem a bit armchair.
-
And the Angel said unto me, "These are the cries of the carrots! The cries of the carrots!"
At our company we use GNU/hurd on our embedded operating system. Everybody laughs about how gnu/hurd sucks but its perfect for embedded stuff. We produce Small kde-based web terminals for cyber cafe. On a Yontrix 386 compatible processor with 2 Mb of ram, it boots off a 1.44M flash rom. The KDE is a stripped down version of kde 1.4 with just Konqueror, kedit, and kicker installed. No Xfree86, a EGA frame buffer is used. If you thought KDE was bloated, just see our web termials . Since hurd is completly free and easy to code for, it took us only two hours of programming time to make this system compared to 3 weeks for a linux soloution..
Okay, a lot of pro-Linux studies have their own problems (frankly, I don't put much stock in "studies" any more, especially vendor-funded ones).
However, the numbers this one used are *ridiculous*. Total Cost of Development?
Okay, let's see. Of the parties surveyed, cancelled Linux projects cost more than CE projects. This Jerry guy (he's got a PhD, so he must just be dishonest, not stupid) then uses this as a basis to claim that Linux is more expensive than CE. He's got to be kidding me.
By the same metric, all C++ software should be replaced by bash equivalents. Why? Because the average cost of a bash-based project is much, much smaller than the average cost of a C++ project. Of course, there's the little additional detail that the sort of projects one uses bash on are much, much smaller and simpler. That is, of course, the factor that makes the huge difference. However, you can conveniently ignore that tidbit.
Somebody tried to do the same study with Windows and some Sun servers back in the day to show that Windows made a far cheaper server. Well...yes, but most of the servers being used to average out Windows cost in the study were small, departmental servers that nobody was spending much on. The Sun servers were the far more powerful and capable systems for things like eBay's back end that had technicians swarming all over 'em. Sure enough, the Windows boxes had a lower average maintenance cost.
Average total cost is *totally useless* without some additional constraints so that you're measuring average cost of *similar projects*. If you took all PVRs with roughly equivalent feature sets and examined cost based on embedded OS, *then* you might have a useful study. The current one is totally useless other than for FUD use.
May we never see th
The issue is the cost of developing for one platform or the another. Essentially that comes down to developer time. Like the people at LinuxDevices.com, I'm skeptical of Microsoft's claims of wildly more efficient development (and as Greyfox notes, the lack of licensing fees can make up for a lot of development cost anyway) but your boilerplate Linux zealotry is entirely irrelevant.