Explore the following list of reference materials to learn more about embedded systems:

Linux application development

Embedded Linux Projects Using Yocto Project Cookbook (includes an entire chapter dedicated to application development as well as debugging, tracing, and profiling)