{"product_id":"practical-uml-statecharts-in-cc-eventdriven-programming-for-embedded-systems-9780750687065","title":"Practical UML Statecharts in C\/C: Event-Driven Programming for Embedded Systems","description":"\u003cp\u003ePractical UML Statecharts in C\/C Second Edition bridges the gap between high-level abstract concepts of the Unified Modeling Language (UML) and the actual programming aspects of modern hierarchical state machines (UML statecharts). The book describes a lightweight  open source  event-driven infrastructure  called QP that enables direct manual coding UML statecharts and concurrent event-driven applications in C or C without big tools. This book is presented in two parts. In Part I  you get a practical description of the relevant state machine concepts starting from traditional finite state automata to modern UML state machines followed by state machine coding techniques and state-machine design patterns  all illustrated with executable examples. In Part II  you find a detailed design study of a generic real-time framework indispensable for combining concurrent  event-driven state machines into robust applications. Part II begins with a clear explanation of the key event-driven programming concepts such as inversion of control (Hollywood Principle)  blocking versus non-blocking code  run-to-completion (RTC) execution semantics  the importance of event queues  dealing with time  and the role of state machines to maintain the context from one event to the next. This background is designed to help software developers in making the transition from the traditional sequential to the modern event-driven programming  which can be one of the trickiest paradigm shifts. The lightweight QP event-driven infrastructure goes several steps beyond the traditional real-time operating system (RTOS). In the simplest configuration  QP runs on bare-metal microprocessor  microcontroller  or DSP completely replacing the RTOS. QP can also work with almost any OS\/RTOS to take advantage of the existing device drivers  communication stacks  and other middleware. The accompanying website to this book contains complete open source code for QP  ports to popular processors and operating systems  including 80x86  ARM Cortex-M3  MSP430  and Linux  as well as all examples described in the book.\u003c\/p\u003e","brand":"My Store","offers":[{"title":"Default Title","offer_id":45651956760629,"sku":"ByrdShop_0750687061","price":39.2,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0627\/8139\/0901\/files\/9780750687065.jpg?v=1781847478","url":"https:\/\/atxbooks.com\/products\/practical-uml-statecharts-in-cc-eventdriven-programming-for-embedded-systems-9780750687065","provider":"ATX Books","version":"1.0","type":"link"}