Real Time Embedded Systems Flashcards

1
Q

What is a real-time system?

A

Any information processing system which must respond to externally generated input stimuli within a finite and specified period. With these systems, the correctness of a response depends on both the response itself and the time it was delivered in (e.g. a real-time clock).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is an embedded system?

A

A computer system designed for a specific function within a larger system or device (e.g. a processor).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

True or false: most real-time systems are also embedded.

A

True

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Describe a typical embedded system

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Describe a typical real-time system (e.g. a fluid control system)

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are the 3 possible temporal requirements of a real-time system?

A
  • Deadline/latency
  • Input/output jitter
  • Periodic/sporadic/aperiodic
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are the 2 possible structural requirements of a real-time system?

A
  • Time-triggered
  • Event-triggered
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What are the 2 possible classification requirements of a real-time system?

A
  • Criticality (hard/soft/firm)
  • Role of time (time-aware/reactive)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q
A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What are the 7 characteristics of a real-time system?

A
  • Real-time facilities
  • Concurrency
  • Numerial computation
  • Interaction with hardware
  • Efficiency/predictability
  • Reliability/safety
  • Large/complex
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is hard real-time criticality?

A

Systems where is is absolutely imperative that responses occur within the required deadline.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Give an example of a real-time system with hard criticality

A

A flight control system

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is soft real-time criticality?

A

Systems where deadlines are important but which will still function correctly if deadlines are occasionally missed.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Give an example of a real-time system with soft criticality

A

A data acquisition system

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is firm real-time criticality?

A

Systems which are soft real-time but in which there is no benefit from late delivery of service (this assumes that there can be something to be gained by a late delivery).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Give an example of a real-time system with firm criticality

A

On demand streaming of video

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Single systems may have hard, soft, and firm real-time __________. In realitym many systems will have a ____ ________ associated with missing each deadline.

A

Subsystems
Cost function

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What is a time-aware system?

A

A system that makes explicit reference to time. The system operation references absolute time values.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What is a reactive system?

A

A system that must produce output within a deadline (as measured from the input) to keep up with the environment. The system operation references relative time values.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Control systems are _______ systems.

A

Reactive

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What is a time-triggered system?

A

A system whose computation is triggered by the passsage of time.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Give an example of a time-triggered system

A

A release activity that occurs at 9:00 am.
A release activity that occurs every 25ms.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Periodic activity is an example of a ____-________ system.

A

Time-triggered

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

What is an event-triggered system?

A

A system whose computation is triggered by an external or internal event.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
What are the two types of event-triggered system?
Sporadic: there is a bound on the arrival interval of the event Aperiodic: there is no bound on the arrival interval of the event
25
Give an example of a sporadic event-triggered system
Mass storage on a PC
26
Give an example of an aperiodic event-triggered system
Moving the pointer with a mouse on a PC screen
27
What are the benefits and limitations of a real-time system?
+ Guaranteed response times (predictability) + Concurrent control of seperate system components + Facilities to interact with special purpose hardware + Support for numerical computation + Extreme reliability and safety - Large and complex
28
Describe how real-time systems are structured compared to operating systems
29
What are the 3 types of real-time programming languages
1) Assembly languages 2) Sequential systems implementation languages (normally require OS support) 3) High-level concurrent languages
30
Which 5 factors influence the reliability of a system
- Safety and reliability - Faults, errors, and failures - Failure modes - Fault prevention and fault tolerance - Redundancy
31
Define safety
Freedom from those conditions that can cause death, injury, occupational illness, damage to (or loss of) equipement/property, or environmental harm. It is also the probability that conditions that can lead to mishaps so not occur, whether or not the intended function is performed.
32
Define reliability
A measure of the success with which a system conforms to some authoritative specification of its behaviour.
33
How is reliability measured in software engineering?
Using verification and validation
34
How is the safety of an embedded system measured?
System safety analysis through all stages of its life cycle and development
35
What is a failure?
When the behaviour of a system deviates from that which it is specified for.
36
What is an error?
An unexpected problem internal to a system that eventaully manifests itself in the system's external behaviour.
37
What is a fault?
The mechanical or algorithmic cause of an error.
38
What causes failures?
Errors (and in turn faults)
39
What is a causality chain?
A series of failures, faults and errors due to the components of a system interacting with one another.
40
What are the 3 types of faults?
- Transient faults - Permanent faults - Intermittent faults
41
What is a transient fault?
A fault that starts around a particular time, remains in the system for some period, then dissapears.
42
Give an example of a transient fault
The adverse reaction of hardware components to radioactivity.
43
What is a permanent fault?
A fault that remains in the system until it is repaired.
44
Give an example of a permanent fault
A broken wire or software design error.
45
What is an intermittent fault?
Transient faults that occur from time to time.
46
Give an example of an intermittent fault
A hardware component that is heat sensitive so works for a tieme, stops working, cools down, and then starts to work again.
47
What are software faults known as?
Bugs
48
What are the two types of bugs?
Bohrbugs Heisenbugs
49
What are bohrbugs?
Reproducible, identifiable software faults.
50
What are heisenbugs?
Software bugs that are only active under rare conditions.
51
What is fault prevention?
The attempt to eliminate any possibility of faults creeping into a system before it goes operational. This involves fault avoisance and fault removal.
52
What is fault tolerance?
The ability of a system to continue functioning despite the presence of faults.
53
What is fault avoidance?
Attempts to limit the introduction of faults during system construction.
54
What can be done to avoid faults?
- Use the most reliable components (within budget) - Use thoroughly-refined techniques for interconnection and assembly - Package hardware to screen out unexpected forms of interference - Rigorous specification of requirements - Use of proven design methodologies - Use languages capable of data abstraction and modularity - Use software engineernig environments to manage complexity
55
What is fault removal?
The procedures fro finding and removing the causes of errors.
56
Give 4 examples of fault removal methods
- Design reviews - Program verification - Code inspections - System testing
57
What is system testing?
A type of fault removal that shows the presence of faults. It does this by simulating the software conditions.
58
What are requirements errors
Omissions or inaccuracies in the specification of a system's functionality, performance, or other characteristics. These aren't always apparent until a system is in operation, which can be costly.
59
When is fault prevention unsuccessful?
- When the system is inaccessible for maintenance and repair - When the frequency or duration of repair times in unacceptable
60
What is the alternative to fault prevention?
Fault tolerance
61
What are the 3 types of fault tolerance?
- Full fault tolerance - Graceful degredation (fail soft) - Fail safe
62
Define full fault tolerance
When a system continues to operate in the presence of faults, albeit for a limited period, with no significant loss of functionality or performance.
63
Define grafeful degradation (fail soft)
When a system continues to operate in the presence of errors, accepting a partial degradation of functionality or performance during recovery or repair.
64
Define fail safe
When a system maintains its integrity while accepting a temporary halt in its operation.
65
Define protective redundancy
Extra elements introduced into a system to detect and recover from faults that would not be required in a perfect system.
66
The aim of software development is minimise ________ while maximising reliability, subject to the cost and size constraints of the system.
Redundancy
67
What is exception handling?
An error recovery mechanism in which the system stops running in the event of an error, allowing the user to input recovery procedures without rolling back to the initial state of the system.
68
What are the uses of exception handling?
- To cope with abnormal environmental conditions - To enable program design faults to be tolerated - To provide a general-purpose error-detection and recovery facility
69
Describe the design of an ideal fault-tolerant component