Real-Time and Embedded Systems Flashcards

(42 cards)

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. The correctness depends not only on the response but also the time it was delivered. Failure to respond in time is as bad as a wrong response.

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

What are the classes of real-time systems?

A

Hard real-time
Soft real-time
Firm real-time

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

What is a hard real-time system?

A

Systems where it is absolutely imperative that responses occur within the required deadline, e.g. a flight control system.

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

What is a soft real-time system?

A

Systems where deadlines are important but which will still function correctly if deadlines are occasionally missed, e.g. a data acquisition system.

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

What is a firm real-time system?

A

Systems which are soft real-time but in which there is no benefit from late delivery of service (assuming that there can be something to be gained by late delivery), e.g. on demand video streaming.

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

What are the most popular choices for real-time programming languages?

A

Java/Real-Time Java
C and Real-Time POSIX
Ada 2012; Ada 202x draft 32

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

What is a bug?

A

A software fault

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

What are the types of bugs?

A

Bohrbugs
Heisenbugs

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

What is a bohrbug?

A

Reproducible and identifiable

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

What is a heisenbug?

A

Only active under rare conditions (e.g. race conditions)

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

What are the two classes of role of time?

A
  1. Time-aware
  2. Reactive
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is a time-aware system?

A

A system which 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
13
Q

What is a reactive system?

A

The system must produce output within deadline (as measured from input). The system operation references relative time values and must “keep up-to-date with the environment”. Examples include control systems.

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

What the the different structural and temporal requirements of a RTS?

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

What is meant by a time-triggered RTS?

A

Computation is triggered by the passage of time (e.g. activity at 9:00am)

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

What is a periodic activity?

A

Release activity every 25ms

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

What is an event-triggered RTS?

A

Computation triggered by an external or internal event

18
Q

What is a sporadic activity?

A

Released activity is sporadic if there is a bound on the arrival interval of the event (e.g. mass storage)

19
Q

What is an aperiodic activity?

A

Released activity is aperiodic if there is no bound on the arrival (e.g. moving the pointer with a mouse on a PC screen)

20
Q

What are 6 characteristics of a RTS?

A
  1. Guaranteed response time
  2. Multiple systems can be controlled at the same time
  3. Can interact with specialist hardware
  4. Continuous numerical computation
  5. Large and complex
  6. Reliable and safe - embedded systems often control environment in which failures result in loss of life etc.
21
Q

What is meant by a safe RTS?

A

Freedom from damage to people, environment and itself, e.g.
System safety analysis must be performed at all stages of its life cycle

22
Q

What is meant by a reliable RTS?

A

Measure of success vs specification

23
Q

What is a failure?

A

When the behaviour deviates from that which is specified due to unexpected internal problems, manifesting in the external behaviour

24
Q

What is the difference between an error and a fault?

A

A mechanical or software fault is the cause which produces an error in the systems behaviour

25
What are the three types of faults?
1. Transient 2. Permanent 3. Intermittent
26
What is a transient fault?
Fault arises randomly and remains in the system for a certain time before disappearing again, e.g. communication systems or adverse reaction in a component due to radioactivity
27
What is a permanent fault?
Faults that remain in the system until they are repaired, e.g. a broken wire.
28
What is an intermittent fault?
A subset of a transient fault. They are transient faults that reoccur, e.g. a heat-sensitive hardware component which works, heats up, stops, cools, and starts working again
29
What is fault prevention and what are the two stages?
Attempts to limit the possibility of a fault creeping into a system before it is operational. The two stages are fault avoidance and fault removal
30
What is fault tolerance?
System is able to continue functioning even if faults are present.
31
What is fault avoidance?
Limits the introduction of faults during system construction
32
How is fault avoidance implemented?
1. Using reliable components 2. Using refined techniques 3. Shielding from interference 4. Rigorous specification of requirements 5. Using proven design techniques 6. Modular design
33
What is fault removal?
The process of finding and removing the causes of (either hardware or software) errors
34
How is fault removal performed? What are some considerations when performing fault removal?
Review designs, verification, code inspections, system testing Tests only show the presence of faults, not their absence It may be impossible to test under realistic conditions
35
What are the three fault tolerance levels?
1. Full fault tolerance 2. Graceful degradation (fail soft) 3. Fail safe
36
What is full fault tolerance?
System continues to operate in the presence of faults (for a limited period) with no significant loss of functionality/performance
37
What is graceful degradation?
System continues to operate in the presence of errors, accepting a partial degradation of functionality/performance during recovery or repair
38
What is fail soft?
System maintains its integrity while accepting a temporary halt in it operation
39
What is redundancy?
It is a type of fault tolerance by having extra components if one fails, often called protective redundancy, these components are not required in a perfect system. The more redundant components are added, the less reliable the system becomes.
40
What trade-off is used in redundancy?
Minimise redundancy while maximising reliability, subject to the cost and size constrains
41
What is exception handling?
A type of error recovery mechanism in which there is no roll back to a previous state. Control is then passed to the handler for recovery procedures to be initiated.
42
What can error handling be used for?
1. Cope with abnormal conditions arising in the environment 2. Enable program design faults to be tolerated 3. Provide a general-purpose error-detection and recovery facility