Embedded Software Development for Safety-Critical Systems

Author: Chris Hobbs

Publisher: CRC Press

ISBN: 1351688936

Category: Computers

Page: 344

View: 6283

Safety-critical devices, whether medical, automotive, or industrial, are increasingly dependent on the correct operation of sophisticated software. Many standards have appeared in the last decade on how such systems should be designed and built. Developers, who previously only had to know how to program devices for their industry, must now understand remarkably esoteric development practices and be prepared to justify their work to external auditors. Embedded Software Development for Safety-Critical Systems discusses the development of safety-critical systems under the following standards: IEC 61508; ISO 26262; EN 50128; and IEC 62304. It details the advantages and disadvantages of many architectural and design practices recommended in the standards, ranging from replication and diversification, through anomaly detection to the so-called "safety bag" systems. Reviewing the use of open-source components in safety-critical systems, this book has evolved from a course text used by QNX Software Systems for a training module on building embedded software for safety-critical devices, including medical devices, railway systems, industrial systems, and driver assistance devices in cars. Although the book describes open-source tools for the most part, it also provides enough information for you to seek out commercial vendors if that’s the route you decide to pursue. All of the techniques described in this book may be further explored through hundreds of learned articles. In order to provide you with a way in, the author supplies references he has found helpful as a working software developer. Most of these references are available to download for free.
Release

Mission-Critical and Safety-Critical Systems Handbook

Design and Development for Embedded Applications

Author: Kim Fowler

Publisher: Newnes

ISBN: 9780080942551

Category: Technology & Engineering

Page: 592

View: 5680

This handbook provides a consolidated, comprehensive information resource for engineers working with mission and safety critical systems. Principles, regulations, and processes common to all critical design projects are introduced in the opening chapters. Expert contributors then offer development models, process templates, and documentation guidelines from their own core critical applications fields: medical, aerospace, and military. Readers will gain in-depth knowledge of how to avoid common pitfalls and meet even the strictest certification standards. Particular emphasis is placed on best practices, design tradeoffs, and testing procedures. *Comprehensive coverage of all key concerns for designers of critical systems including standards compliance, verification and validation, and design tradeoffs *Real-world case studies contained within these pages provide insight from experience
Release

Developing Safety-Critical Software

A Practical Guide for Aviation Software and DO-178C Compliance

Author: Leanna Rierson

Publisher: CRC Press

ISBN: 1351834053

Category: Computers

Page: 610

View: 8252

The amount of software used in safety-critical systems is increasing at a rapid rate. At the same time, software technology is changing, projects are pressed to develop software faster and more cheaply, and the software is being used in more critical ways. Developing Safety-Critical Software: A Practical Guide for Aviation Software and DO-178C Compliance equips you with the information you need to effectively and efficiently develop safety-critical, life-critical, and mission-critical software for aviation. The principles also apply to software for automotive, medical, nuclear, and other safety-critical domains. An international authority on safety-critical software, the author helped write DO-178C and the U.S. Federal Aviation Administration’s policy and guidance on safety-critical software. In this book, she draws on more than 20 years of experience as a certification authority, an avionics manufacturer, an aircraft integrator, and a software developer to present best practices, real-world examples, and concrete recommendations. The book includes: An overview of how software fits into the systems and safety processes Detailed examination of DO-178C and how to effectively apply the guidance Insight into the DO-178C-related documents on tool qualification (DO-330), model-based development (DO-331), object-oriented technology (DO-332), and formal methods (DO-333) Practical tips for the successful development of safety-critical software and certification Insightful coverage of some of the more challenging topics in safety-critical software development and verification, including real-time operating systems, partitioning, configuration data, software reuse, previously developed software, reverse engineering, and outsourcing and offshoring An invaluable reference for systems and software managers, developers, and quality assurance personnel, this book provides a wealth of information to help you develop, manage, and approve safety-critical software more confidently.
Release

Software Engineering for Embedded Systems

Methods, Practical Techniques, and Applications

Author: Robert Oshana

Publisher: Newnes

ISBN: 0124159419

Category: Computers

Page: 1200

View: 3300

This Expert Guide gives you the techniques and technologies in software engineering to optimally design and implement your embedded system. Written by experts with a solutions focus, this encyclopedic reference gives you an indispensable aid to tackling the day-to-day problems when using software engineering methods to develop your embedded systems. With this book you will learn: The principles of good architecture for an embedded system Design practices to help make your embedded project successful Details on principles that are often a part of embedded systems, including digital signal processing, safety-critical principles, and development processes Techniques for setting up a performance engineering strategy for your embedded system software How to develop user interfaces for embedded systems Strategies for testing and deploying your embedded system, and ensuring quality development processes Practical techniques for optimizing embedded software for performance, memory, and power Advanced guidelines for developing multicore software for embedded systems How to develop embedded software for networking, storage, and automotive segments How to manage the embedded development process Includes contributions from: Frank Schirrmeister, Shelly Gretlein, Bruce Douglass, Erich Styger, Gary Stringham, Jean Labrosse, Jim Trudeau, Mike Brogioli, Mark Pitchford, Catalin Dan Udma, Markus Levy, Pete Wilson, Whit Waldo, Inga Harris, Xinxin Yang, Srinivasa Addepalli, Andrew McKay, Mark Kraeling and Robert Oshana. Road map of key problems/issues and references to their solution in the text Review of core methods in the context of how to apply them Examples demonstrating timeless implementation details Short and to- the- point case studies show how key ideas can be implemented, the rationale for choices made, and design guidelines and trade-offs
Release

Embedded Systems Architecture for Agile Development

A Layers-Based Model

Author: Mohsen Mirtalebi

Publisher: Apress

ISBN: 1484230515

Category: Computers

Page: 213

View: 1355

Utilize a new layers-based development model for embedded systems using Agile techniques for software architecture and management. Firmware is comprised of both hardware and software, but the applicability of Agile in embedded systems development is new. This book provides a step-by-step process showing how this is possible. The book details how the moving parts in embedded systems development affect one another and shows how to properly use both engineering tools and new tools and methods to reduce waste, rework, and product time-to-market. Software is seen not as a commodity but a conduit to facilitate valuable product knowledge flow across the company into the hands of the customer. Embedded Systems Architecture for Agile Development starts off by reviewing the Layers model used in other engineering disciplines, as well as its advantages and applicability to embedded systems development. It outlines development models from project-based methodologies (e.g., collaborative product development) to the newer modern development visions (e.g., Agile) in software and various tools and methods that can help with a Layers model implementation. The book covers requirement modeling for embedded systems (Hatley-Pirbhai Method) and how adapting the HP Method with the help of the tools discussed in this book can be seen as a practical example for a complete embedded system. What You’ll Learn Identify the major software parts involved in building a typical modern firmware Assign a layer to each software part so each layer can be separate from another and there won’t be interdependencies between them Systematically and logically create these layers based on the customer requirements Use Model-Based Design (MBD) to create an active system architecture that is more accepting of changes Who This Book Is For Firmware engineers; systems architects; hardware and software managers, developers, designers, and architects; program managers; project managers; Agile practitioners; and manufacturing engineers and managers. The secondary audience includes research engineers and managers, and engineering and manufacturing managers.
Release

Safety-critical Computer Systems

Author: Neil Storey

Publisher: Addison Wesley Publishing Company

ISBN: N.A

Category: Computers

Page: 453

View: 1179

For both engineering and computer science students and for practising engineers within computer related industries, this book provides a thorough introduction to the field of Safety Critical Computer Systems. Readers are assumed to have a baic understanding of computer operation, digital electronics and programming.
Release

CESAR - Cost-efficient Methods and Processes for Safety-relevant Embedded Systems

Author: Ajitha Rajan,Thomas Wahl

Publisher: Springer Science & Business Media

ISBN: 3709113873

Category: Technology & Engineering

Page: 391

View: 5340

The book summarizes the findings and contributions of the European ARTEMIS project, CESAR, for improving and enabling interoperability of methods, tools, and processes to meet the demands in embedded systems development across four domains - avionics, automotive, automation, and rail. The contributions give insight to an improved engineering and safety process life-cycle for the development of safety critical systems. They present new concept of engineering tools integration platform to improve the development of safety critical embedded systems and illustrate capacity of this framework for end-user instantiation to specific domain needs and processes. They also advance state-of-the-art in component-based development as well as component and system validation and verification, with tool support. And finally they describe industry relevant evaluated processes and methods especially designed for the embedded systems sector as well as easy adoptable common interoperability principles for software tool integration.
Release

Formal Methods for Safety and Security

Case Studies for Aerospace Applications

Author: Manju Nanda,Yogananda Jeppu

Publisher: Springer

ISBN: 9811041210

Category: Technology & Engineering

Page: 132

View: 6036

This volume is the outcome of deliberations on formal methods in aerospace. The book specially delves into the use of formal methods for verification, validation, and optimization of software in safety critical and time critical applications, such as those in aerospace engineering. The chapters in this book are authored by leading corporate and government R&D scientists. The contents of this book will be useful to researchers and professionals alike.
Release

Real-Time Software Design for Embedded Systems

Author: Hassan Gomaa

Publisher: Cambridge University Press

ISBN: 1107041090

Category: Computers

Page: 592

View: 6678

This tutorial reference 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. The author covers key topics such as architectural patterns for distributed and hierarchical real-time control and other real-time software architectures, performance analysis of real-time designs using real-time scheduling, and timing analysis on single and multiple processor systems. Complete case studies illustrating design issues include a light rail control system, a microwave oven control system, and an automated highway toll system. Organized as an introduction followed by several self-contained chapters, the book is perfect for experienced software engineers wanting a quick reference at each stage of the analysis, design, and development of large-scale real-time embedded systems, as well as for advanced undergraduate or graduate courses in software engineering, computer engineering, and software design.
Release

Design Patterns for Embedded Systems in C

An Embedded Software Engineering Toolkit

Author: Bruce Powel Douglass

Publisher: Elsevier

ISBN: 9780080959719

Category: Computers

Page: 472

View: 5887

A recent survey stated that 52% of embedded projects are late by 4-5 months. This book can help get those projects in on-time with design patterns. The author carefully takes into account the special concerns found in designing and developing embedded applications specifically concurrency, communication, speed, and memory usage. Patterns are given in UML (Unified Modeling Language) with examples including ANSI C for direct and practical application to C code. A basic C knowledge is a prerequisite for the book while UML notation and terminology is included. General C programming books do not include discussion of the contraints found within embedded system design. The practical examples give the reader an understanding of the use of UML and OO (Object Oriented) designs in a resource-limited environment. Also included are two chapters on state machines. The beauty of this book is that it can help you today. . Design Patterns within these pages are immediately applicable to your project Addresses embedded system design concerns such as concurrency, communication, and memory usage Examples contain ANSI C for ease of use with C programming code
Release

Safer C

Developing Software for in High-integrity and Safety-critical Systems

Author: Les Hatton

Publisher: McGraw-Hill Companies

ISBN: 9780077076405

Category: Science

Page: 228

View: 9880

Hatton shows developers how to use C in safety-related and high-integrity systems, describing how to build quality and reliability into software using commercially available tools. He discusses international standards and software quality initiatives and offers an in-depth comparison of C and other popular languages from a safety and reliability viewpoint.
Release

Embedded Systems and Software Validation

Author: Abhik Roychoudhury

Publisher: Morgan Kaufmann

ISBN: 0080921256

Category: Computers

Page: 272

View: 9743

Modern embedded systems require high performance, low cost and low power consumption. Such systems typically consist of a heterogeneous collection of processors, specialized memory subsystems, and partially programmable or fixed-function components. This heterogeneity, coupled with issues such as hardware/software partitioning, mapping, scheduling, etc., leads to a large number of design possibilities, making performance debugging and validation of such systems a difficult problem. Embedded systems are used to control safety critical applications such as flight control, automotive electronics and healthcare monitoring. Clearly, developing reliable software/systems for such applications is of utmost importance. This book describes a host of debugging and verification methods which can help to achieve this goal. Covers the major abstraction levels of embedded systems design, starting from software analysis and micro-architectural modeling, to modeling of resource sharing and communication at the system level Integrates formal techniques of validation for hardware/software with debugging and validation of embedded system design flows Includes practical case studies to answer the questions: does a design meet its requirements, if not, then which parts of the system are responsible for the violation, and once they are identified, then how should the design be suitably modified?
Release

SafeWare

System Safety and Computers

Author: Nancy Leveson

Publisher: Addison-Wesley Professional

ISBN: N.A

Category: Computers

Page: 680

View: 3273

We are building systems today--and using computers to control them--that have the potential for large-scale destruction of life and environment. More than ever, software engineers and system developers, as well as their managers, must understand the issues and develop the skills needed to anticipate and prevent accidents before they occur. Professionals should not require a catastrophe to happen before taking action. Addressing this need in her long-awaited book, Nancy Levenson examines what is currently known about building safe electromagnetic systems and looks at past accidents to see what practical lessons can be applied to new computer-controlled systems.Software Demonstrates the importance of integrating software safety efforts with system safety engineering Describes models of accidents and human error that underlie particular approaches to safety problems Presents the elements of a software program, including management, hazard analysis, requirements analysis, design for safety, design of the human-machine interface, and verification 0201119722B04062001
Release

Embedded Software

The Works

Author: Colin Walls

Publisher: Elsevier

ISBN: 0124159699

Category: Computers

Page: 436

View: 1129

As the embedded world expands, developers must have a strong grasp of many complex topics in order to make faster, more efficient and more powerful microprocessors to meet the public’s growing demand. Embedded Software: The Works covers all the key subjects embedded engineers need to understand in order to succeed, including Design and Development, Programming, Languages including C/C++, and UML, Real Time Operating Systems Considerations, Networking, and much more. New material on Linux, Android, and multi-core gives engineers the up-to-date practical know-how they need in order to succeed. Colin Walls draws upon his experience and insights from working in the industry, and covers the complete cycle of embedded software development: its design, development, management, debugging procedures, licensing, and reuse. For those new to the field, or for experienced engineers looking to expand their skills, Walls provides the reader with detailed tips and techniques, and rigorous explanations of technologies. Key features include: New chapters on Linux, Android, and multi-core - the cutting edge of embedded software development! Introductory roadmap guides readers through the book, providing a route through the separate chapters and showing how they are linked About the Author Colin Walls has over twenty-five years experience in the electronics industry, largely dedicated to embedded software. A frequent presenter at conferences and seminars and author of numerous technical articles and two books on embedded software, he is a member of the marketing team of the Mentor Graphics Embedded Software Division. He writes a regular blog on the Mentor website (blogs.mentor.com/colinwalls). New chapters on Linux, Android, and multi-core - the cutting edge of embedded software development! Introductory roadmap guides readers through the book, providing a route through the separate chapters and showing how they are linked
Release

Embedded Software Development

The Open-Source Approach

Author: Ivan Cibrario Bertolotti,Tingting Hu

Publisher: CRC Press

ISBN: 1466593938

Category: Computers

Page: 526

View: 489

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.
Release

Software Development for Embedded Multi-core Systems

A Practical Guide Using Embedded Intel Architecture

Author: Max Domeika

Publisher: Newnes

ISBN: 9780080558585

Category: Computers

Page: 440

View: 1210

The multicore revolution has reached the deployment stage in embedded systems ranging from small ultramobile devices to large telecommunication servers. The transition from single to multicore processors, motivated by the need to increase performance while conserving power, has placed great responsibility on the shoulders of software engineers. In this new embedded multicore era, the toughest task is the development of code to support more sophisticated systems. This book provides embedded engineers with solid grounding in the skills required to develop software targeting multicore processors. Within the text, the author undertakes an in-depth exploration of performance analysis, and a close-up look at the tools of the trade. Both general multicore design principles and processor-specific optimization techniques are revealed. Detailed coverage of critical issues for multicore employment within embedded systems is provided, including the Threading Development Cycle, with discussions of analysis, design, development, debugging, and performance tuning of threaded applications. Software development techniques engendering optimal mobility and energy efficiency are highlighted through multiple case studies, which provide practical “how-to advice on implementing the latest multicore processors. Finally, future trends are discussed, including terascale, speculative multithreading, transactional memory, interconnects, and the software-specific implications of these looming architectural developments. Table of Contents Chapter 1 - Introduction Chapter 2 – Basic System and Processor Architecture Chapter 3 – Multi-core Processors & Embedded Chapter 4 –Moving To Multi-core Intel Architecture Chapter 5 – Scalar Optimization & Usability Chapter 6 – Parallel Optimization Using Threads Chapter 7 - Case Study: Data Decomposition Chapter 8 - Case Study: Functional Decomposition Chapter 9 – Virtualization & Partitioning Chapter 10 – Getting Ready For Low Power Intel Architecture Chapter 11 - Summary, Trends, and Conclusions Appendix I Glossary References *This is the only book to explain software optimization for embedded multi-core systems *Helpful tips, tricks and design secrets from an Intel programming expert, with detailed examples using the popular X86 architecture *Covers hot topics, including ultramobile devices, low-power designs, Pthreads vs. OpenMP, and heterogeneous cores
Release

Design and Safety Assessment of Critical Systems

Author: Marco Bozzano,Adolfo Villafiorita

Publisher: CRC Press

ISBN: 9781439803325

Category: Computers

Page: 298

View: 5779

Safety-critical systems, by definition those systems whose failure can cause catastrophic results for people, the environment, and the economy, are becoming increasingly complex both in their functionality and their interactions with the environment. Unfortunately, safety assessments are still largely done manually, a time-consuming and error-prone process. The growing complexity of these systems requires an increase in the skill and efficacy of safety engineers and encourages the adoption of formal and standardized techniques. An introduction to the area of design and verification of safety-critical systems, Design and Safety Assessment of Critical Systems focuses on safety assessment using formal methods. Beginning with an introduction to the fundamental concepts of safety and reliability, it illustrates the pivotal issues of design, development, and safety assessment of critical systems. The core of the book covers traditional notations, techniques, and procedures, including Fault Tree Analysis, FMECA, HAZOP, and Event Tree Analysis, and explains in detail how formal methods can be used to realize such procedures. It looks at the development process of safety-critical systems, and highlights influential management and organizational aspects. Finally, it describes verification and validation techniques and new trends in formal methods for safety and concludes with some widely adopted standards for the certification of safety-critical systems. Providing an in-depth and hands-on view of the application of formal techniques to advanced and critical safety assessments in a variety of industrial sectors, such as transportation, avionics and aerospace, and nuclear power, Design and Safety Assessment of Critical Systems allows anyone with a basic background in mathematics or computer science to move confidently into this advanced arena of safety assessment.
Release

Embedded Systems Architecture

A Comprehensive Guide for Engineers and Programmers

Author: Tammy Noergaard

Publisher: Newnes

ISBN: 0123821975

Category: Computers

Page: 672

View: 4694

Embedded Systems Architecture is a practical and technical guide to understanding the components that make up an embedded system’s architecture. This book is perfect for those starting out as technical professionals such as engineers, programmers and designers of embedded systems; and also for students of computer science, computer engineering and electrical engineering. It gives a much-needed ‘big picture’ for recently graduated engineers grappling with understanding the design of real-world systems for the first time, and provides professionals with a systems-level picture of the key elements that can go into an embedded design, providing a firm foundation on which to build their skills. Real-world approach to the fundamentals, as well as the design and architecture process, makes this book a popular reference for the daunted or the inexperienced: if in doubt, the answer is in here! Fully updated with new coverage of FPGAs, testing, middleware and the latest programming techniques in C, plus complete source code and sample code, reference designs and tools online make this the complete package Visit the companion web site at http://booksite.elsevier.com/9780123821966/ for source code, design examples, data sheets and more A true introductory book, provides a comprehensive get up and running reference for those new to the field, and updating skills: assumes no prior knowledge beyond undergrad level electrical engineering Addresses the needs of practicing engineers, enabling it to get to the point more directly, and cover more ground. Covers hardware, software and middleware in a single volume Includes a library of design examples and design tools, plus a complete set of source code and embedded systems design tutorial materials from companion website
Release