Further reading

If you would like to learn more about the topics discussed in this chapter, these are the resources I'd recommend.

Making Embedded Systems, by E. White, O'Reilly (2012), is an introduction to the field of resource-constrained devices and their programming. It only covers C programming language and techniques.

Embedded Linux Development using Yocto Projects, 2nd Edition, by O. Salvador and D. Angolini, Packt Publishing (2017), provides a thorough explanation of the Yocto build system for embedded Linux, and applies it to the BeagleBone, Raspberry Pi, and Wandboard boards.

The blog post A Speed-Up for Charting on Embedded by Ch. Merz (2018) is available at https://www.kdab.com/a-speed-up-for-charting-on-embedded/ and describes the implementation of a polyline simplification technique that uses a flattened min-max tree to yield significant performance gains.

High Performance Browser Networking, by I Grigorik, O'Reilly (2013), discusses mobile network architecture and protocols in much detail and also gives some advice on the performance of networking on mobile devices.

If you'd like to dive deeper into networking and other mobile optimizations, have a look at Android's developer documentation, especially the networking section at https://developer.android.com/training/efficient-downloads/ and the power management section at https://developer.android.com/topic/performance/power/.