Introduction

Real-time systems are systems whereby the correctness of the computed values and their timeliness are at the forefront. There are two types of real-time systems, hard and soft real time.

What differentiates hard and soft real-time systems is their tolerance to missing deadlines and the consequences associated with those misses. Correctly computed values after a deadline has passed are often useless.

For hard real-time systems, missing deadlines is not an option. In fact, in many cases, missing a deadline often results in catastrophe, which may involve human lives. For soft real-time systems, however, missing deadlines is generally not as critical.

Real-time applications cover a wide range, but many real-time systems are embedded. An embedded system is a computer built into a system and not acknowledged by the user as being a computer. Embedded systems are also typically dedicated systems. In other words, systems that are designed to perform a dedicated function. The following list shows just a few examples of embedded systems:

Aerospace

•  Flight management systems
•  Jet engine controls
•  Weapons systems

Audio

•  MP3 players
•  Amplifiers and tuners

Automotive

•  Antilock braking systems
•  Climate control
•  Engine controls
•  Navigation systems (GPS)

Communications

•  Routers
•  Switches
•  Cell phones

Computger peripherals

•  Printers
•  Scanners

Domestic

•  Air conditioning units
•  Thermostats
•  White goods

Office automation

•  FAX machines / copiers

Process control

•  Chemical plants
•  Factory automation
•  Food processing

Robots

Video

•  Broadcasting equipment
•  HD Televisions

And many more

Real-time systems are typically more complicated to design, debug, and deploy than non-real-time systems.