A comprehensive guide to reaping the benefits of architectural modeling in embedded design
- Identify and overcome challenges in embedded environments
- Understand the steps required to increase the security of IoT solutions
- Build safety-critical and memory-safe parallel and distributed embedded systems
Embedded systems are self-contained units that have a dedicated purpose within a device. We come across a variety of applications of embedded systems in navigation tools, telecom applications, and networking equipment, to name just a few.
Embedded Systems Architecture begins with a bird's eye view of embedded development and how it differs from the other systems that you may be familiar with. You'll first be guided to setting up a development environment and then move on to the core system architectural concepts, exploring pragmatic designs, boot-up mechanisms, and memory management. Next, you'll look at the programming interface and device drivers to establish communication via TCP/IP and take measures to increase the security of IoT solutions. Lastly, you'll be introduced to parallel multithreaded applications through the development of a scheduler.
By the end of the book, you will have explored various aspects of embedded architecture such as memory management, focusing on a memory-safe approach, multithreading, and the RTOS approach.
What you will learn
- Participate in the design and definition phase of an embedded product
- Learn about architectural design patterns and engineering tradeoffs
- Build an embedded development lab and optimize the workflow
- Write memory-safe code
- Understand the architecture behind the most communication interfaces
- Understand the design and development patterns for connected and distributed devices in the IoT
- Master multitask parallel execution patterns and real-time operating systems
Who This Book Is For
If you're a software developer or designer wanting to learn about embedded programming, this is the book for you. You'll also find this book useful if you're a less experienced embedded programmer willing to expand your knowledge.
Table of Contents
- Embedded systems: A pragmatic approach
- Work environment and work flow optimization
- Architectural patterns
- The boot-up procedure
- Memory management
- General purpose peripherals
- Local bus interfaces communication
- Power Management and energy saving
- Distributed systems and IoT architecture
- Parallel tasks and scheduling
- Real Time Operating Systems