"Diverse" is certainly as word that applies to embedded systems. In fact, it's difficult to really define embedded systems because they can be a windshield wiper controller, a home theater remote control or an Internet backbone switch that handles gigabytes of data per second. VxWorks has been used in all of these types of systems and can do this because it offers flexible solutions for our customers. As systems become larger and more complex customers are usually seeking more options such as middleware for networking or graphics. As systems get smaller, however, customers are usually seeking less options and the ability to configure systems exactly the way they want.
We introduced VxWorks source builds in VxWorks 6.7 which gives you the capability to build VxWorks from the ground up and customize what is included. There is also an easy to use kernel configuration tool in Wind River Workbench that makes setting up and building a kernel straightforward. Expanding on this for VxWorks 6.8, we introduced the concept of profiles which are predefined kernel configurations and in particular we created a small memory footprint for ARM processors. Why ARM and small? Well, generally ARM processors get used in small memory constrained systems built by customers looking to build low power and low cost devices. These customers are also looking to minimize memory usage. In fact, the minimum kernel configuration can fit into less than 80KB which, by today's standards, is very small. Based on this tiny memory footprint, customers can add services as they need while maintaining the minimum memory profile.
Why worry about small memory footprint when embedded systems can have gigabytes of memory? Memory is still relatively expensive and using ess memory means less device cost to build and hopefully better profit margin when it goes to market!