My Account Log in

1 option

Real-time embedded components and systems with Linux and RTOS / Sam Siewert, John Pratt.

Ebook Central Academic Complete Available online

View online
Format:
Book
Author/Creator:
Siewert, Sam, author.
Pratt, John, author.
Language:
English
Subjects (All):
Embedded computer systems.
Real-time data processing.
Linux device drivers (Computer programs).
Physical Description:
1 online resource (433 pages) : illustrations
Edition:
2nd ed.
Place of Publication:
Dulles, Virginia ; Boston, Massachusetts ; New Delhi, [India] : Mercury Learning & Information, 2016.
Summary:
This book is intended to provide a senior undergraduate or graduate student in electrical engineering or computer science with a balance of fundamental theory, review of industry practice, and hands-on experience to prepare for a career in the real-time embedded system industries. It is also intended to provide the practicing engineer with the necessary background to apply real-time theory to the design of embedded components and systems. Typical industries include aerospace, medical diagnostic and therapeutic systems, telecommunications, automotive, robotics, industrial process control, media systems, computer gaming, and electronic entertainment, as well as multimedia applications for general-purpose computing. This updated edition adds three new chapters focused on key technology advancements in embedded systems and with wider coverage of real-time architectures. The overall focus remains the RTOS (Real-Time Operating System), but use of Linux for soft real-time, hybrid FPGA (Field Programmable Gate Array) architectures and advancements in multi-core system-on-chip (SoC), as well as software strategies for asymmetric and symmetric multiprocessing (AMP and SMP) relevant to real-time embedded systems, have been added. Companion files are provided with numerous project videos, resources, applications, and figures from the book. Instructors' resources are available upon adoption. FEATURES: • Provides a comprehensive, up to date, and accessible presentation of embedded systems without sacrificing theoretical foundations • Features the RTOS (Real-Time Operating System), but use of Linux for soft real-time, hybrid FPGA architectures and advancements in multi-core system-on-chip is included • Discusses an overview of RTOS advancements, including AMP and SMP configurations, with a discussion of future directions for RTOS use in multi-core architectures, such as SoC • Detailed applications coverage including robotics, computer vision, and continuous media • Includes a companion disc (4GB) with numerous videos, resources, projects, examples, and figures from the book • Provides several instructors' resources, including lecture notes, Microsoft PP slides, etc.
Contents:
Cover
Title
Copyright
Preface
Acknowledgments
Part I: Real-Time Embedded Theory
Chapter 1 Real-time Embedded Theory
1.1 Introduction
1.2 A Brief History of Real-Time Systems
1.3 A Brief History of Embedded Systems
1.4 Real-Time Services
1.5 Real-Time Standards
Summary
Exercises
Chapter References
Chapter 2 System Resources
2.1 Introduction
2.2 Resource Analysis
2.3 Real-Time Sercice Utility
2.4 Scheduling Classes
2.4.1 Multiprocessor Systems
2.5 The Cyclic Executive
2.6 Scheduler Concepts
2.6.1 Preemptive vs. Non-preemptive Schedulers
2.6.2 Preemptive Fixed-Priority Scheduling Policy
2.7 Real-Time Operating Systems
2.8 Thread-Safe Reentrant Functions
Chapter 3 Processing
3.1 Introduction
3.2 Preemptive Fixed-Priority Policy
3.3 Feasibility
3.4 Rate-Monotonic Least Upper Bound
3.5 Necessary and Sufficient Feasibility
3.5.1 Scheduling Point Test
3.5.2 Completion Time Test
3.6 Deadline-Monotonic Policy
3.7 Dynamic-Priority Policies
Chapter 4 Resources
4.1 Introduction
4.2 Worst-Case Execution Time
4.3 Intermediate IO
4.4 Execution Efficiency
4.5 IO Architecture
Chapter 5 Memory
5.1 Introduction
5.2 Physical Hierarchy
5.3 Capacity and Allocation
5.4 Shared Memory
5.5 ECC Memory
5.6 Flash File Systems
Chapter 6 Multiresource Services
6.1 Introduction
6.2 Blocking
6.3 Deadlock and Livelock
6.4 Critical Sections to Protect Shared Resources
6.5 Priority Inversion
6.5.1 Unbounded Priority Inversion Solutions
6.6 Power Management and Processor Clock Modulation
Chapter References.
Chapter 7 Soft Real-Time Services
7.1 Introduction
7.2 Missed Deadlines
7.3 Quality of Service
7.4 Alternatives to Rate-Monotonic Policy
7.5 Mixed Hard and Soft Real-Time Services
Part II: Designing Real-Time Embedded Components
Chapter 8 Embedded System Components
8.1 Introduction
8.2 Hardware Components
8.2.1 Sensors
8.2.2 Actuators
8.2.3 IO Interfaces
8.2.4 Processor Complex or SoC
8.2.5 Processor and IO Interconnection
8.2.6 Bus Interconnection
8.2.7 High-Speed Serial Interconnection
8.2.8 Low-Speed Serial Interconnection
8.2.9 Interconnection Systems
8.2.10 Memory Subsystems
8.3 Firmware Components
8.3.1 Boot Code
8.3.2 Device Drivers
8.3.3 Operating System Services
8.4 RTOS System Software
8.4.1 Message Queues
8.4.2 Binary Semaphores
8.4.3 Mutex Semaphores
8.4.4 Software Virtual Timers
8.4.5 Sofrware Signals
8.5 Sofrware Application Components
8.5.1 Application Services
8.5.2 Reentrant Application Libraries
8.5.3 Communicating and Synchronized Services
Chapter 9 Traditional Hard Real-Time Operating Systems
9.1 Introduction
9.2 Evolution of Real-Time Scheduling and Resource Management
9.3 AMP (Asymmetric Multi-core Processing)
9.4 SMP (Symmetric Multi-core Processing)
9.5 Processor Core Affinity
9.6 Future Directions for RTOS
9.7 SMP Support Models
9.8 RTOS Hypervisors
Chapter 10 Open Source Real-Time Operating Systems
10.1 FreeRTOS Alternative to Proprietary RTOS
10.2 FreeRTOS Platform and Tools
10.3 FreeRTOS Real-Time Service Programming Fundamentals
Chapter 11 Integrating Embedded Linux into Real-Time Systems
11.1 Introduction.
11.2 Embedding Mainline Linux: Interactive and Best-Effort
11.3 Linux as a Non-Real-Time Management and
11.4 Methods to Patch and Improve Linux for Predictable Response
11.5 Linux for Soft Real-Time Systems
11.6 Tools for Linux for Soft Real-Time Systems
Chapter 12 Debugging Components
12.1 Introduction
12.2 Exceptions
12.3 Assert
12.4 Checking Return Codes
12.5 Single-Step Debugging
12.6 Kernel Scheduler Traces
12.7 Test Access Ports
12.8 Trace Ports
12.9 Power-On Self-Test and Diagnostics
12.10 External Test Equipment
12.11 Application-Level Debugging
Chapter 13 Performance Tuning
13.1 Introduction
13.2 Basic Concepts of Drill-Down Tuning
13.3 Hardware-Supported Profiling and Tracing
13.4 Building Performance Monitoring into Software
13.5 Path Length, Efficiency, and Calling Frequency
13.6 Fundamental Optimizations
Chapter 14 High Availability and Reliability Design
14.1 Introduction
14.2 Reliability and Availability Similarities and Differences
14.3 Reliability
14.4 Reliable Software
14.5 Design Trade-Offs
14.6 Hierarchical Approaches for Fail-Safe Design
Part III: Putting it All Together
Chapter 15 System Life Cycle
15.1 Introduction
15.2 Life Cycle Overview
15.3 Requirements
15.4 Risk Analysis
15.5 High-Level Design
15.6 Component Detailed Design
15.7 Component Unit Testing
15.8 System Integration and Test
15.9 Configuration Management and Version Control
15.10 Regression Testing
Chapter 16 Continuous Media Applications
16.1 Introduction
16.2 Video.
16.3 Uncompressed Video Frame Formats
16.4 Video Codecs
16.5 Video Streaming
16.6 Video Stream Analysis and Debug
16.7 Audio Codecs and Streaming
16.8 Audio Stream Analysis and Debug
16.9 Voice-Over Internet Protocol (VoIP)
Chapter 17 Robotic Applications
17.1 Introduction
17.2 Robotic Arm
17.3 Actuation
17.4 End Effector Path
17.5 Sensing
17.6 Tasking
17.7 Automation and Autonomy
Chapter Web References
Chapter 18 Computer Vision Applications
18.1 Introduction
18.2 Object Tracking
18.3 Image Processing for Object Recognition
18.4 Characterizing Cameras
18.5 Pixel and Servo Coordinates
18.6 Stereo-Vision
Appendix A: Terminology Glossary
Appendix B: About the DVD
Appendix C: Wind River Systems University Program for
Appendix D: Real-Time and Embedded Linux Distributions
Bibliography
Index.
Notes:
Description based on print version record.
Includes bibliographical references and index.
ISBN:
9781944534547
1944534547
OCLC:
993064751

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Library Catalog Using Articles+ Library Account