Embedded and Real Time System Development: A Software Engineering Perspective


Book Description

Nowadays embedded and real-time systems contain complex software. The complexity of embedded systems is increasing, and the amount and variety of software in the embedded products are growing. This creates a big challenge for embedded and real-time software development processes and there is a need to develop separate metrics and benchmarks. “Embedded and Real Time System Development: A Software Engineering Perspective: Concepts, Methods and Principles” presents practical as well as conceptual knowledge of the latest tools, techniques and methodologies of embedded software engineering and real-time systems. Each chapter includes an in-depth investigation regarding the actual or potential role of software engineering tools in the context of the embedded system and real-time system. The book presents state-of-the art and future perspectives with industry experts, researchers, and academicians sharing ideas and experiences including surrounding frontier technologies, breakthroughs, innovative solutions and applications. The book is organized into four parts “Embedded Software Development Process”, “Design Patterns and Development Methodology”, “Modelling Framework” and “Performance Analysis, Power Management and Deployment” with altogether 12 chapters. The book is aiming at (i) undergraduate students and postgraduate students conducting research in the areas of embedded software engineering and real-time systems; (ii) researchers at universities and other institutions working in these fields; and (iii) practitioners in the R&D departments of embedded system. It can be used as an advanced reference for a course taught at the postgraduate level in embedded software engineering and real-time systems.




Real-Time Systems Development


Book Description

Real-Time Systems Development introduces computing students and professional programmers to the development of software for real-time applications. Based on the academic and commercial experience of the author, the book is an ideal companion to final year undergraduate options or MSc modules in the area of real-time systems design and implementation. Assuming a certain level of general systems design and programming experience, this text will extend students' knowledge and skills into an area of computing which has increasing relevance in a modern world of telecommunications and 'intelligent' equipment using embedded microcontrollers. This book takes a broad, practical approach in discussing real-time systems. It covers topics such as basic input and output; cyclic executives for bare hardware; finite state machines; task communication and synchronization; input/output interfaces; structured design for real-time systems; designing for multitasking; UML for real-time systems; object oriented approach to real-time systems; selecting languages for RTS development; Linux device drivers; and hardware/software co-design. Programming examples using GNU/Linux are included, along with a supporting website containing slides; solutions to problems; and software examples. This book will appeal to advanced undergraduate Computer Science students; MSc students; and, undergraduate software engineering and electronic engineering students. * Concise treatment delivers material in manageable sections* Includes handy glossary, references and practical exercises based on familiar scenarios* Supporting website contains slides, solutions to problems and software examples




Making Embedded Systems


Book Description

Interested in developing embedded systems? Since they donâ??t tolerate inefficiency, these systems require a disciplined approach to programming. This easy-to-read guide helps you cultivate a host of good development practices, based on classic software design patterns and new patterns unique to embedded programming. Learn how to build system architecture for processors, not operating systems, and discover specific techniques for dealing with hardware difficulties and manufacturing requirements. Written by an expert whoâ??s created embedded systems ranging from urban surveillance and DNA scanners to childrenâ??s toys, this book is ideal for intermediate and experienced programmers, no matter what platform you use. Optimize your system to reduce cost and increase performance Develop an architecture that makes your software robust in resource-constrained environments Explore sensors, motors, and other I/O devices Do more with less: reduce RAM consumption, code space, processor cycles, and power consumption Learn how to update embedded code directly in the processor Discover how to implement complex mathematics on small processors Understand what interviewers look for when you apply for an embedded systems job "Making Embedded Systems is the book for a C programmer who wants to enter the fun (and lucrative) world of embedded systems. Itâ??s very well writtenâ??entertaining, evenâ??and filled with clear illustrations." â??Jack Ganssle, author and embedded system expert.




Real-Time Systems Design and Analysis


Book Description

"IEEE Press is pleased to bring you this Second Edition of Phillip A. Laplante's best-selling and widely-acclaimed practical guide to building real-time systems. This book is essential for improved system designs, faster computation, better insights, and ultimate cost savings. Unlike any other book in the field, REAL-TIME SYSTEMS DESIGN AND ANALYSIS provides a holistic, systems-based approach that is devised to help engineers write problem-solving software. Laplante's no-nonsense guide to real-time system design features practical coverage of: Related technologies and their histories Time-saving tips * Hands-on instructions Pascal code Insights into decreasing ramp-up times and more!"




Real-Time Software Design for Embedded Systems


Book Description

Organized as an introduction followed by several self-contained chapters, this tutorial takes the reader from use cases to complete architectures for real-time embedded systems using SysML, UML, and MARTE and shows how to apply the COMET/RTE design method to real-world problems. --




Real Time UML Workshop for Embedded Systems


Book Description

This practical new book provides much-needed, practical, hands-on experience capturing analysis and design in UML. It holds the hands of engineers making the difficult leap from developing in C to the higher-level and more robust Unified Modeling Language, thereby supporting professional development for engineers looking to broaden their skill-sets in order to become more saleable in the job market. It provides a laboratory environment through a series of progressively more complex exercises that act as building blocks, illustrating the various aspects of UML and its application to real-time and embedded systems. With its focus on gaining proficiency, it goes a significant step beyond basic UML overviews, providing both comprehensive methodology and the best level of supporting exercises available on the market. Each exercise has a matching solution which is thoroughly explained step-by-step in the back of the book. The techniques used to solve these problems come from the author's decades of experience designing and constructing real-time systems. After the exercises have been successfully completed, the book will act as a desk reference for engineers, reminding them of how many of the problems they face in their designs can be solved. - Tutorial style text with keen focus on in-depth presentation and solution of real-world example problems - Highly popular, respected and experienced author




Embedded Software Development


Book Description

Embedded Software Development: The Open-Source Approach delivers a practical introduction to embedded software development, with a focus on open-source components. This programmer-centric book is written in a way that enables even novice practitioners to grasp the development process as a whole. Incorporating real code fragments and explicit, real-world open-source operating system references (in particular, FreeRTOS) throughout, the text: Defines the role and purpose of embedded systems, describing their internal structure and interfacing with software development tools Examines the inner workings of the GNU compiler collection (GCC)-based software development system or, in other words, toolchain Presents software execution models that can be adopted profitably to model and express concurrency Addresses the basic nomenclature, models, and concepts related to task-based scheduling algorithms Shows how an open-source protocol stack can be integrated in an embedded system and interfaced with other software components Analyzes the main components of the FreeRTOS Application Programming Interface (API), detailing the implementation of key operating system concepts Discusses advanced topics such as formal verification, model checking, runtime checks, memory corruption, security, and dependability Embedded Software Development: The Open-Source Approach capitalizes on the authors’ extensive research on real-time operating systems and communications used in embedded applications, often carried out in strict cooperation with industry. Thus, the book serves as a springboard for further research.




Software Engineering for Real-time Systems


Book Description

The comprehensive coverage and real-world perspective makes the book accessible and appealing to both beginners and experienced designers. Covers both the fundamentals of software design and modern design methodologies Provides comparisons of different development methods, tools and languages Blends theory and practical experience together Emphasises the use of diagrams and is highly illustrated




Real-Time Systems Design and Analysis


Book Description

The leading text in the field explains step by step how to write software that responds in real time From power plants to medicine to avionics, the world increasingly depends on computer systems that can compute and respond to various excitations in real time. The Fourth Edition of Real-Time Systems Design and Analysis gives software designers the knowledge and the tools needed to create real-time software using a holistic, systems-based approach. The text covers computer architecture and organization, operating systems, software engineering, programming languages, and compiler theory, all from the perspective of real-time systems design. The Fourth Edition of this renowned text brings it thoroughly up to date with the latest technological advances and applications. This fully updated edition includes coverage of the following concepts: Multidisciplinary design challenges Time-triggered architectures Architectural advancements Automatic code generation Peripheral interfacing Life-cycle processes The final chapter of the text offers an expert perspective on the future of real-time systems and their applications. The text is self-contained, enabling instructors and readers to focus on the material that is most important to their needs and interests. Suggestions for additional readings guide readers to more in-depth discussions on each individual topic. In addition, each chapter features exercises ranging from simple to challenging to help readers progressively build and fine-tune their ability to design their own real-time software programs. Now fully up to date with the latest technological advances and applications in the field, Real-Time Systems Design and Analysis remains the top choice for students and software engineers who want to design better and faster real-time systems at minimum cost.




Real-Time Embedded Systems


Book Description

Offering comprehensive coverage of the convergence of real-time embedded systems scheduling, resource access control, software design and development, and high-level system modeling, analysis and verification Following an introductory overview, Dr. Wang delves into the specifics of hardware components, including processors, memory, I/O devices and architectures, communication structures, peripherals, and characteristics of real-time operating systems. Later chapters are dedicated to real-time task scheduling algorithms and resource access control policies, as well as priority-inversion control and deadlock avoidance. Concurrent system programming and POSIX programming for real-time systems are covered, as are finite state machines and Time Petri nets. Of special interest to software engineers will be the chapter devoted to model checking, in which the author discusses temporal logic and the NuSMV model checking tool, as well as a chapter treating real-time software design with UML. The final portion of the book explores practical issues of software reliability, aging, rejuvenation, security, safety, and power management. In addition, the book: Explains real-time embedded software modeling and design with finite state machines, Petri nets, and UML, and real-time constraints verification with the model checking tool, NuSMV Features real-world examples in finite state machines, model checking, real-time system design with UML, and more Covers embedded computer programing, designing for reliability, and designing for safety Explains how to make engineering trade-offs of power use and performance Investigates practical issues concerning software reliability, aging, rejuvenation, security, and power management Real-Time Embedded Systems is a valuable resource for those responsible for real-time and embedded software design, development, and management. It is also an excellent textbook for graduate courses in computer engineering, computer science, information technology, and software engineering on embedded and real-time software systems, and for undergraduate computer and software engineering courses.