As with every software project, there are a number of common issues and pitfalls. With embedded development, the hardware aspect is added to this, creating a unique set of issues. From resource management issues to interrupt troubles and weird behavior induced by hardware issues, this appendix shows you how to prevent and handle many of these issues. In addition, it shows you a variety of optimization approaches and what to be wary of. In this appendix, we'll cover the following topics:
- Safe ways to optimize your embedded code
- How to avoid and fix a variety of common software- and hardware-related issues
- Recognizing the imperfect world of hardware and how to integrate this into your design