By submitting your email address, you agree to receive emails regarding relevant topic offers from TechTarget and its partners. You can withdraw your consent at any time. Contact TechTarget at 275 Grove Street, Newton, MA.
Make sure you get accurate information. Proprietary solution vendors and free/open source zealots are not your best sources. The total cost of ownership (TCO) argument is a prime example -- anyone who tells you that either proprietary software or Linux has better TCO is massively overgeneralizing and/or doesn't understand how to compute TCO. Find someone who understands both free/open source and business issues to advise you.
Make sure to do proper risk management. For both proprietary and OSS solutions, try to estimate accurately the likelihood and severity of the full range of risks. Don't forget the proprietary risks that are easy to neglect, especially lock-in and security issues.
You almost never have to plan a stepwise change. Find a plan that moves incrementally toward a Linux solution. Many free/open source apps run on Windows and Mac. Linux boxes interoperate quite well with Windows boxes and Macs on LANs and WANs. Dual-booting, virtualization, and emulation allow a mix of Linux and Windows apps on a box. Use these elements to form a low-risk plan. For the average enterprise embedded user who most likely needs a PDA or cell phone that interoperates with his company's technology, would you recommend using a Linux device? Why or why not?
I currently use a mix of portable devices that includes a Linux PDA and laptop, but I also carry a Handspring Visor and a smart cell phone around. The important thing is to work backward from requirements: first figure out what you want your handheld device(s) to do, then craft an appropriate solution.
One of the real strengths of Linux is the ability to quickly and easily craft sophisticated custom applications for handheld devices. For simpler things, I've written custom code using a GPL-licensed development environment for Palm OS. Currently, many corporate apps require or at least strongly suggest proprietary solutions. I don't think there's one right answer, or even one right device, currently.
If there were no perceived benefits to proprietary embedded environments, no one would purchase them. The tradeoffs appear to be changing, though. Wind River's recent major shift to Linux-based solutions is one indicator of the increasing importance of Linux solutions in the embedded market. It also serves as a reminder that Linux and other GPL software is not mutually exclusive with strong profit-making potential. Wind River expects to make a lot of money while making a lot of source code freely available. This is a situation that should be good for everyone. What are the most important lessons your work on the rocket has taught you about Linux?
A lot of the old limitations of Unix and other large OSes in the embedded space -- real and perceived -- are now gone. Real-time solutions for Linux are now available, and modern processor speeds and interrupt latencies make them much less necessary. Modern device sizes and Linux modularity work together to ensure that Linux will fit almost everywhere. Fast $5 low-power 32-bit CPUs with MMU [memory management unit] support mean no compromises in fielding the OS.
The uniform programming and debugging environment Linux provides across workstations and embedded devices is empowering. Developers with little embedded experience can come up to speed quickly. Integration of networked systems is straightforward. For a group like the Portland State Aerospace Society, with many newbie and hardware-oriented developers, the impact on productivity seems to be quite large.