Muutke küpsiste eelistusi

E-raamat: Real-Time Systems: Design Principles for Distributed Embedded Applications

  • Formaat: PDF+DRM
  • Ilmumisaeg: 22-Sep-2022
  • Kirjastus: Springer International Publishing AG
  • Keel: eng
  • ISBN-13: 9783031119927
  • Formaat - PDF+DRM
  • Hind: 55,56 €*
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • Lisa ostukorvi
  • Lisa soovinimekirja
  • See e-raamat on mõeldud ainult isiklikuks kasutamiseks. E-raamatuid ei saa tagastada.
  • Formaat: PDF+DRM
  • Ilmumisaeg: 22-Sep-2022
  • Kirjastus: Springer International Publishing AG
  • Keel: eng
  • ISBN-13: 9783031119927

DRM piirangud

  • Kopeerimine (copy/paste):

    ei ole lubatud

  • Printimine:

    ei ole lubatud

  • Kasutamine:

    Digitaalõiguste kaitse (DRM)
    Kirjastus on väljastanud selle e-raamatu krüpteeritud kujul, mis tähendab, et selle lugemiseks peate installeerima spetsiaalse tarkvara. Samuti peate looma endale  Adobe ID Rohkem infot siin. E-raamatut saab lugeda 1 kasutaja ning alla laadida kuni 6'de seadmesse (kõik autoriseeritud sama Adobe ID-ga).

    Vajalik tarkvara
    Mobiilsetes seadmetes (telefon või tahvelarvuti) lugemiseks peate installeerima selle tasuta rakenduse: PocketBook Reader (iOS / Android)

    PC või Mac seadmes lugemiseks peate installima Adobe Digital Editionsi (Seeon tasuta rakendus spetsiaalselt e-raamatute lugemiseks. Seda ei tohi segamini ajada Adober Reader'iga, mis tõenäoliselt on juba teie arvutisse installeeritud )

    Seda e-raamatut ei saa lugeda Amazon Kindle's. 

"This book is a comprehensive text for the design of safety critical, hard real-time embedded systems. It offers  a splendid example for the balanced, integrated treatment of systems and software engineering, helping readers tackle the hardest problems of advanced real-time system design, such as determinism, compositionality, timing and fault management. This book is an essential reading for advanced undergraduates and graduate students in a wide range of disciplines impacted by embedded computing and software. Its conceptual clarity, the style of explanations and the examples make the abstract concepts accessible for a wide audience."
Janos Sztipanovits, Director
E. Bronson Ingram Distinguished Professor of Engineering
Institute for Software Integrated Systems
Vanderbilt University

Real-Time Systems focuses on hard real-time systems, which are computing systems that must meet their temporal specification in all anticipated load and fault scenarios. The book stresses the system aspects of distributed real-time applications, treating the issues of real-time, distribution and fault-tolerance from an integral point of view. A unique cross-fertilization of ideas and concepts between the academic and industrial worlds has led to the inclusion of many insightful examples from industry to explain the fundamental scientific concepts in a real-world setting.  Compared to the Second Edition, new developments in communication standards for time-sensitive networks, such as TSN and Time-Triggered Ethernet are addressed. Furthermore, this edition includes a new chapter on real-time aspects in cloud and fog computing.

The book is written as a standard textbook for a high-level undergraduate or graduate course on real-time embedded systems or cyber-physical systems.  Its practical approach to solving real-time problems, along with numerous summary exercises, makes it an excellent choice for researchers and practitioners alike.

1 The Real-Time Environment
1(1)
1.1 When Is a Computer System Real-Time?
2(1)
1.2 Functional Requirements
3(4)
1.2.1 Data Collection
3(3)
1.2.2 Direct Digital Control
6(1)
1.2.3 Man-Machine Interaction
6(1)
1.3 Temporal Requirements
7(3)
1.3.1 Where Do Temporal Requirements Come From?
1(8)
1.3.2 Minimal Latency Jitter
9(1)
1.3.3 Minimal Error-Detection Latency
10(1)
1.4 Dependability Requirements
10(3)
1.4.1 Reliability
10(1)
1.4.2 Safety
11(1)
1.4.3 Maintainability
12(1)
1.4.4 Availability
12(1)
1.4.5 Security
13(1)
1.5 Classification of Real-Time Systems
13(5)
1.5.1 Hard Real-Time System Versus Soft Real-Time System
14(2)
1.5.2 Fail-Safe Versus Fail-Operational
16(1)
1.5.3 Guaranteed Response Versus Best Effort
16(1)
1.5.4 Resource-Adequate Versus Resource-Inadequate
17(1)
1.5.5 Event-Triggered Versus Time-Triggered
17(1)
1.6 The Real-Time System Market
18(5)
1.6.1 Embedded Real-Time Systems
18(3)
1.6.2 Plant Automation Systems
21(1)
1.6.3 Multimedia Systems
22(1)
1.7 Examples of Real-Time Systems
23(4)
1.7.1 Controlling the Flow in a Pipe
23(1)
1.7.2 Engine Control
24(1)
1.7.3 Rolling Mill
25(2)
Bibliographic Notes
27(1)
Review Questions and Problems
28(3)
2 Simplicity
31(26)
2.1 Cognition
32(6)
2.1.1 Problem-Solving
32(2)
2.1.2 Definition of a Concept
34(1)
2.1.3 Cognitive Complexity
35(2)
2.1.4 Simplification Strategies
37(1)
2.2 The Conceptual Landscape
38(5)
2.2.1 Concept Formation
38(2)
2.2.2 Scientific Concepts
40(1)
2.2.3 The Concept of a Message
41(1)
2.2.4 Semantic Content of a Variable
42(1)
2.3 The Essence of Model Building
43(3)
2.3.1 Purpose and Viewpoint
44(2)
2.3.2 The Grand Challenge
46(1)
2.4 Emergence
46(5)
2.4.1 Irreducibility
47(1)
2.4.2 Prior and Derived Properties
47(1)
2.4.3 Complex Systems
48(3)
2.5 How Can We Achieve Simplicity?
51(2)
Bibliographic Notes
53(1)
Points to Remember
53(2)
Review Questions and Problems
55(2)
3 Global Time
57(30)
3.1 Time and Order
58(6)
3.1.1 Different Orders
58(1)
3.1.2 Clocks
59(2)
3.1.3 Precision and Accuracy
61(2)
3.1.4 Time Standards
63(1)
3.2 Time Measurement
64(4)
3.2.1 Global Time
64(2)
3.2.2 Interval Measurement
66(1)
3.2.3 π/δ-Precedence
66(2)
3.2.4 Fundamental Limits of Time Measurement
68(1)
3.3 Dense Time Versus Sparse Time
68(5)
3.3.1 Dense Time Base
69(1)
3.3.2 Sparse Time Base
70(1)
3.3.3 Space-Time Lattice
71(1)
3.3.4 Cyclic Representation of Time
72(1)
3.4 Internal Clock Synchronization
73(6)
3.4.1 The Synchronization Condition
73(2)
3.4.2 Central Master Synchronization
75(1)
3.4.3 Fault-Tolerant Synchronization Algorithms
75(4)
3.4.4 State Correction Versus Rate Correction
79(1)
3.5 External Clock Synchronization
79(3)
3.5.1 External Time Sources
79(2)
3.5.2 Time Gateway
81(1)
3.5.3 Time Formats
81(1)
Points to Remember
82(1)
Bibliographic Notes
83(1)
Review Questions and Problems
83(4)
4 Real-Time (RT) Model
87(32)
4.1 Model Outline
88(4)
4.1.1 Components and Messages
88(1)
4.1.2 Cluster of Components
89(1)
4.1.3 Temporal Control Versus Logical Control
90(2)
4.1.4 Event-Triggered Control Versus Time-Triggered Control
92(1)
4.2 Component State
92(5)
4.2.1 Definition of State
93(1)
4.2.2 The Pocket Calculator Example
93(2)
4.2.3 Ground State
95(1)
4.2.4 Database Components
96(1)
4.3 The Message Concept
97(3)
4.3.1 Message Structure
97(1)
4.3.2 Event Information Versus State Information
98(1)
4.3.3 Event-Triggered (ET) Message
99(1)
4.3.4 Time-Triggered (TT) Message
99(1)
4.4 Component Interfaces
100(4)
4.4.1 Interface Characterization
101(1)
4.4.2 Linking Interface (LIF)
102(1)
4.4.3 Technology-Independent Interface (TII)
103(1)
4.4.4 Technology-Dependent Interface (TDI)
103(1)
4.4.5 Local Interfaces
103(1)
4.5 Gateway Component
104(3)
4.5.1 Property Mismatches
105(1)
4.5.2 LIF Versus Local Interface of a Gateway Component
105(2)
4.5.3 Standardized Message Interface
107(1)
4.6 Linking Interface Specification
107(4)
4.6.1 Transport Specification
108(1)
4.6.2 Operational Specification
109(1)
4.6.3 Meta-Level Specification
110(1)
4.7 Component Integration
111(6)
4.7.1 Principles of Composability
111(1)
4.7.2 Integration Viewpoints
112(1)
4.7.3 System of Systems
113(4)
Bibliographic Notes
117(1)
Review Questions and Problems
117(2)
5 Temporal Relations
119(24)
5.1 Real-Time Entities
120(1)
5.1.1 Sphere of Control
120(1)
5.1.2 Discrete and Continuous Real-Time Entities
121(1)
5.2 Observations
121(3)
5.2.1 Untimed Observation
121(1)
5.2.2 Indirect Observation
122(1)
5.2.3 State Observation
122(1)
5.2.4 Event Observation
123(1)
5.3 Real-Time Images and Real-Time Objects
124(1)
5.3.1 Real-Time Images
124(1)
5.3.2 Real-Time Objects
124(1)
5.4 Temporal Accuracy
125(5)
5.4.1 Definition
125(2)
5.4.2 Classification of Real-Time Images
127(2)
5.4.3 State Estimation
129(1)
5.4.4 Composability Considerations
130(1)
5.5 Permanence and Idempotency
130(3)
5.5.1 Permanence
130(2)
5.5.2 Duration of the Action Delay
132(1)
5.5.3 Accuracy Interval Versus Action Delay
133(1)
5.5.4 Idempotency
133(1)
5.6 Determinism
133(6)
5.6.1 Definition of Determinism
134(2)
5.6.2 Consistent Initial States
136(1)
5.6.3 Nondeterministic Design Constructs (NDDCs)
137(1)
5.6.4 Recovery of Determinism
138(1)
Points to Remember
139(1)
Bibliographic Notes
140(1)
Review Questions and Problems
140(3)
6 Dependability
143(34)
6.1 Basic Concepts
144(6)
6.1.1 Faults
145(1)
6.1.2 Errors
146(1)
6.1.3 Failures
147(3)
6.2 Information Security
150(8)
6.2.1 Secure Information Flow
151(1)
6.2.2 Security Threats
152(2)
6.2.3 Cryptographic Methods
154(3)
6.2.4 Network Authentication
157(1)
6.2.5 Protection of Real-Time Control Data
157(1)
6.3 Anomaly Detection
158(4)
6.3.1 What Is an Anomaly?
158(2)
6.3.2 Failure Detection
160(1)
6.3.3 Error Detection
161(1)
6.4 Fault Tolerance
162(6)
6.4.1 Fault Hypotheses
163(1)
6.4.2 Fault-Tolerant Unit
164(3)
6.4.3 The Membership Service
167(1)
6.5 Robustness and Resilience
168(2)
6.5.1 The Concept of Robustness
168(2)
6.5.2 The Concept of Resilience
170(1)
6.6 Component Reintegration
170(3)
6.6.1 Finding a Reintegration Point
170(1)
6.6.2 Minimizing the Ground State
171(1)
6.6.3 Component Restart
172(1)
Points to Remember
173(1)
Bibliographic Notes
174(1)
Review Questions and Problems
174(3)
7 Real-Time Communication
177(24)
7.1 Requirements
178(3)
7.1.1 Timeliness
178(1)
7.1.2 Dependability and Security
179(1)
7.1.3 Flexibility
180(1)
7.1.4 Communication Bandwidth and Cost Efficiency
181(1)
7.2 Design Principles and Pitfalls
181(6)
7.2.1 Real-Time Network Model
182(1)
7.2.2 Message Types
182(1)
7.2.3 Flow Control
183(1)
7.2.4 Design Limitations
184(2)
7.2.5 Design Pitfalls
186(1)
7.3 Event-Triggered Communication
187(3)
7.3.1 CAN
188(1)
7.3.2 Ethernet
189(1)
7.4 Rate-Constrained Communication
190(2)
7.4.1 Avionics Full-Duplex Switched Ethernet (AFDX): ARINC664-p7
191(1)
7.4.2 Audio/Video Bridging: IEEE 802.1 AVB
192(1)
7.5 Time-Triggered Communication
192(6)
7.5.1 TTP
194(1)
7.5.2 TTEthernet
195(2)
7.5.3 Time-Sensitive Networking: IEEE 802.1 TSN
197(1)
Points to Remember
198(2)
Bibliographic Notes
200(1)
Review Questions and Problems
200(1)
8 Power and Energy Awareness
201(22)
8.1 Power and Energy
202(7)
8.1.1 Basic Concepts
202(2)
8.1.2 Energy Estimation
204(4)
8.1.3 Thermal Effects and Reliability
208(1)
8.2 Hardware Power Reduction Techniques
209(4)
8.2.1 Device Scaling
209(2)
8.2.2 Low-Power Hardware Design
211(1)
8.2.3 Voltage and Frequency Scaling
211(1)
8.2.4 Sub-threshold Logic
212(1)
8.3 System Architecture
213(5)
8.3.1 Technology-Agnostic Design
213(1)
8.3.2 Pollack's Rule
214(2)
8.3.3 Power Gating
216(1)
8.3.4 Real Time Versus Execution Time
217(1)
8.4 Software Techniques
218(1)
8.4.1 System Software
218(1)
8.4.2 Application Software
219(1)
8.4.3 Software Tools
219
Points to Remember
198(2)
Bibliographic Notes
200(1)
Review Questions and Problems
200(23)
9 Real-Time Operating Systems
223(24)
9.1 Inter-Component Communication
224(2)
9.1.1 Technology-Independent Interface (TII)
224(1)
9.1.2 Linking Interface (LIF)
225(1)
9.1.3 Technology-Dependent Interface (TDI)
225(1)
9.1.4 Generic Middleware (GM)
225(1)
9.2 Task Management
226(3)
9.2.1 Simple Tasks
226(2)
9.2.2 Trigger Tasks
228(1)
9.2.3 Complex Tasks
229(1)
9.3 The Dual Role of Time
229(3)
9.3.1 Time as Data
230(1)
9.3.2 Time as Control
231(1)
9.4 Inter-Task Interactions
232(2)
9.4.1 Coordinated Static Schedules
232(1)
9.4.2 The Non-blocking Write (NBW) Protocol
233(1)
9.4.3 Semaphore Operations
234(1)
9.5 Process Input/Output
234(7)
9.5.1 Analog Input/Output
234(1)
9.5.2 Digital Input/Output
235(1)
9.5.3 Interrupts
236(2)
9.5.4 Fault-Tolerant Actuators
238(1)
9.5.5 Intelligent Instrumentation
239(1)
9.5.6 Physical Installation
240(1)
9.6 Agreement Protocols
241(2)
9.6.1 Raw Data, Measured Data, and Agreed Data
241(1)
9.6.2 Syntactic Agreement
242(1)
9.6.3 Semantic Agreement
242(1)
9.7 Error Detection
243(2)
9.7.1 Monitoring Task Execution Times
243(1)
9.7.2 Monitoring Interrupts
243(1)
9.7.3 Double Execution of Tasks
243(1)
9.7.4 Watchdogs
244(1)
Points to Remember
245(1)
Bibliographic Notes
245(1)
Review Questions and Problems
246(1)
10 Real-Time Scheduling
247(22)
10.1 The Scheduling Problem
248(3)
10.1.1 Classification of Scheduling Algorithms
248(1)
10.1.2 Schedulability Test
249(1)
10.1.3 The Adversary Argument
250(1)
10.2 Worst-Case Execution Time
251(5)
10.2.1 WCET of Simple Tasks
252(2)
10.2.2 WCET of Complex Tasks
254(1)
10.2.3 Anytime Algorithms
255(1)
10.2.4 State of Practice
255(1)
10.3 Static Scheduling
256(4)
10.3.1 Static Scheduling Viewed as a Search
257(1)
10.3.2 Increasing the Flexibility in Static Schedules
258(2)
10.4 Dynamic Scheduling
260(3)
10.4.1 Scheduling Independent Tasks
260(2)
10.4.2 Scheduling Dependent Tasks
262(1)
10.5 Alternative Scheduling Strategies
263(2)
10.5.1 Scheduling in Distributed Systems
263(1)
10.5.2 Feedback Scheduling
264(1)
Points to Remember
265(1)
Bibliographic Notes
266(1)
Review Questions and Problems
267(2)
11 System Design
269(38)
11.1 System Design
270(4)
11.1.1 The Design Process
270(2)
11.1.2 The Role of Constraints
272(1)
11.1.3 System Design Versus Software Design
272(2)
11.2 Design Phases
274(3)
11.2.1 Purpose Analysis
275(1)
11.2.2 Requirements Capture
275(1)
11.2.3 Architecture Design
276(1)
11.2.4 Design of Components
277(1)
11.3 Design Styles
277(6)
11.3.1 Model-Based Design
277(2)
11.3.2 Component-Based Design
279(1)
11.3.3 Architecture Design Languages
280(1)
11.3.4 Test of a Decomposition
281(2)
11.4 Design of Safety-Critical Systems
283(10)
11.4.1 What Is Safety?
284(1)
11.4.2 Safety Analysis
285(3)
11.4.3 Safety Case
288(3)
11.4.4 Safety Standards
291(2)
11.5 Design Diversity
293(3)
11.5.1 Diverse Software Versions
294(1)
11.5.2 An Example of a Fail-Safe System
295(1)
11.5.3 Multilevel System
296(1)
11.6 Design for Maintainability
296(4)
11.6.1 Cost of Maintenance
297(1)
11.6.2 Maintenance Strategy
298(1)
11.6.3 Software Maintenance
299(1)
11.7 The Time-Triggered Architecture
300(3)
11.7.1 Principle of a Consistent Global Time
300(1)
11.7.2 Principle of Component Orientation
301(1)
11.7.3 Principle of Coherent Communication
302(1)
11.7.4 Principle of Fault Tolerance
303(1)
Bibliographic Notes
303(1)
Points to Remember
303(2)
Review Questions and Problems
305(2)
12 Validation
307(18)
12.1 Validation Versus Verification
308(1)
12.2 Testing Challenges
309(5)
12.2.1 Design for Testability
310(1)
12.2.2 Test Data Selection
310(2)
12.2.3 Test Oracle
312(1)
12.2.4 System Evolution and Technology Readiness Levels (TRLs)
313(1)
12.3 Testing of Component-Based Systems
314(2)
12.3.1 Component Provider
314(1)
12.3.2 Component User
314(1)
12.3.3 Communicating Components
315(1)
12.4 Formal Methods
316(3)
12.4.1 Formal Methods in the Real World
316(1)
12.4.2 Classification of Formal Methods
317(1)
12.4.3 Benefits of Formal Methods
317(2)
12.4.4 Model Checking
319(1)
12.5 Fault Injection
319(3)
12.5.1 Software-Implemented Fault Injection
320(1)
12.5.2 Physical Fault Injection
320(1)
12.5.3 Sensor and Actuator Failures
321(1)
Points to Remember
322(1)
Bibliographic Notes
323(1)
Review Questions and Problems
323(2)
13 Internet of Things
325(18)
13.1 The Vision of the Internet of Things (IoT)
326(1)
13.2 Drivers for an IoT
327(2)
13.2.1 Uniformity of Access
327(1)
13.2.2 Logistics
327(1)
13.2.3 Energy Savi ngs
328(1)
13.2.4 Physical Security and Safety
328(1)
13.2.5 Industrial
329(1)
13.2.6 Medical
329(1)
13.2.7 Lifestyle
329(1)
13.3 Technical Issues of the IoT
329(4)
13.3.1 Internet Integration
329(1)
13.3.2 Naming and Identification
330(1)
13.3.3 Near-Field Communication
331(1)
13.3.4 IoT Device Capabilities Versus Cloud Computing
332(1)
13.3.5 Autonomic Components
332(1)
13.4 RFID Technology
333(5)
13.4.1 Overview
334(1)
13.4.2 The Electronic Product Code (EPC)
334(1)
13.4.3 RFID Tags
335(1)
13.4.4 RFID Readers
336(1)
13.4.5 RFID Security
336(2)
13.5 Wireless Sensor Networks (WSN)
338(1)
Points to Remember
339(1)
Bibliographic Notes
340(1)
Review Questions and Problems
341(2)
14 Cloud and Fog Computing
343(24)
14.1 Introduction
344(1)
14.2 Characteristics of the Cloud
345(2)
14.3 The Advent of Fog Computing
347(4)
14.3.1 Fog Computing for Distributed Embedded Systems
348(1)
14.3.2 Fog Computing Benefits and Risks
349(2)
14.3.3 General Fog Computing and Comparison to Edge Computing
351(1)
14.4 Selected Cloud and Fog Technologies
351(7)
14.4.1 Resource Pooling
352(4)
14.4.2 Connectivity
356(1)
14.4.3 Configuration
357(1)
14.4.4 System Design Automation
358(1)
14.5 Example Use Cases
358(5)
14.5.1 Cloud Computing-Enabled Use Cases
359(1)
14.5.2 Fog Computing-Enabled Use Cases
360(2)
14.5.3 Nerve
362(1)
Points to Remember
363(1)
Bibliographic Notes
364(1)
Review Questions and Problems
365(2)
Annexes 367(16)
References 383(12)
Index 395
Hermann Kopetz received his PhD in physics "sub auspiciis praesidentis" from the University of Vienna, Austria in 1968. After eight years in Industry he accepted in 1978 an appointment as a Professor for Computer Process Control at the Technical University of West-Berlin, moving to the Technical University of Vienna in 1992. Kopetz is a full member of the Austrian Academy of Science, Fellow of the IEEE, and is a member of the Information Society Advisory Group (ISTAG), advising the European Commission in Brussels in the domain of information technology since 2008. In June 2007 he received the honorary degree of Dr. honoris causa from the University Paul Sabatier in Toulouse, France. Kopetz is the chief architect of the time-triggered technology for dependable embedded Systems and a co-founder of the company TTTech. He is the author of Simplicity is Complex (Springer, 2019) and several other books.