Embedded System Design: Embedded Systems Foundations of Cyber-Physical Systems