>>But how many embedded systems really need the horsepower that VxWorks provides? I've seen survey's in the past that suggest that plain old MS-DOS is still the most popular embedded OS in the world. . If Windows CE is even more embedded friendly than MS-DOS, and spreads to all the various embedded CPU's, won't it by default pick up a very large market share?.VxWorks is like a super-charged V8 engine.but, many embedded systems designers . will prefer the cheaper, easier to use 4 cylinder engine.
Neat analogy, but you have it backwards - as I noticed Mitchell Jones indicated. You probably judged VxWorks the V8 engine because it has the added sophistication of hard real-time, and a plethora of tools that are industrial strength (read difficult to install and use), and can scale up to V8 performance. But this isn't what makes an embedded system large and bulky, making it vulnerable to a more efficient, cheaper OS. Unlike traditional software development, embedded software is inefficient or bulky IF AND ONLY IF the software running on the target is bulky and inefficient. The fact that the developer must deal with complexities is of little import if they result in a more refined target. Here is an interesting quote from the latest copy of the OEM Magazine:
"So you tell your management that you need a faster (and more expensive) microcontroller and they quickly remind you that adding a dime to the cost of the microcontroller would result in an increased project cost of $100,000 per year" - pp 42.
Embedded systems is propelling mankind toward the final phase of computer utilization, in which billions of hidden computers perform ubiquitous tasks for humans. In this final phase, computers will be consumer products, built and sold by electronic consumer conglomerates. In the consumer world, time-to-market, quality and production costs are the dominate concerns. Within practical limits, development costs can be ignored.
Let's compare to Windows CE to VxWorks and its sophisticated tool-set (including 3rd party offerings)
1. Time-to-market. Large consumer products organizations organize their development groups, as well as their production lines and delivery systems. Experienced, organized development teams today can develop faster using VxWorks than any other RTOS because of the wide availability of relevant libraries, WIND and 3rd party tools and software. In time, thousands of ISV could provide many tools and libraries to apply to Windows CE development also - so let's count this as a current win for WIND, but a potential tie in the future. 2. Quality. No comparison, since the RTOS and deep-probing tools available with VxWorks, coupled with industrial-strength libraries of re-usable, or callable, code, makes VxWorks the clear winner. You may think of real-time as over-kill, but many intelligent consumer products demand guaranteed synchronization, and with these systems timing cannot be safely ignored, nor purchased at the cost of wasted power. This includes probably every use of embedded computers in automobile electronics; almost every use of embedded computers in modern datacom and telecomm applications. We also know that timing is part of the standard for I2O, which will be pervasive in office automation. Timing is no doubt a specified requirement of virtually every use of embedded systems in the military. Timing is critical in most multi-media applications. Even in hand-held devices (notice I did not say PC), such as wireless telephones and head-ends, we know that Qualcomm and Orbital Sciences are working with WIND and probably require absolute control over timing. And real-time is not the only quality issue. Industrial strength is at least as important, and this is the hallmark of vendors that concentrate on delivering hardware/software to the embedded systems community. MSFT has never let concerns about industrial strength interfere with other, more profitable objectives. (Perhaps this is unfair. MSFT does a yeoman's job producing feature-rich systems adequate for end-user computing - the PC paradigm. This approach has provided a successful business model applicable to this paradigm.) 3. Production costs. Again, VxWorks wins hands down, for two reasons. VxWorks is designed to be minimalist and is ported, and will be ported, to virtually every hardware architecture, enabling design engineers to meet requirements with minimal hardware costs. Finally, bet you haven't thought about this: If you were going to embed an OS in a consumer product, expecting to sell 1,000,000 per year, would you rather negotiate with MSFT or WIND over run-time license fees? Remember, every ten cents you save in the unit fee will translate to $100,000 per year toward your profitability.
By the way, you are probably right that MS-DOS and Windows 95/NT are very popular OS's for embedded systems. You are probably also correct maintaining that Windows CE will be used in many embedded systems. For example, Windows CE can be emulated in Windows NT, so that Windows CE applications can be built by ordinary programmers with almost no additional expense. But generally, those systems will be designed and developed in the shadows of the large consumer electronics companies that will evolve to develop the thousands and thousands of intelligent consumer products. Unless Windows CE-developed products sport a Windows-type user-interface, they will rarely, if ever, be produced in high volume (Want confirmation about what MSFT thinks is a typical Windows CE application? Look up their GENERIC.CPP example in the Windows CE SDK you referenced. It looks like a windows, event-driven, user-interface program to me. I think MSFT wants to breed a new generation of application programmers to generate shrink-wrapped Windows CE software to spread their PC monopoly to the hand-held PC. This has nothing to do with embedded systems, but it has a lot to do with PDA's.)
Allen |