Chapter 19 Real-time Systems
In addition to correct results, must produce results within deadlines -- late results useless
Embedded systems
Safety-critical systems
Hard real-time vs soft real-time
Characteristics
Ssingle purpose (dedicated)
Small (footprint) -- limited space
Inexpensive -- mass production, system-on-chip (SOC)
Specific timing requirements
Kernel Features
(Not needed -- variety of peripherals, protection & security, multiple users)
Address translation -- real-address mode, relocation register, full virtual memory
Preemptive, priority-based scheduling
Preemptive kernel -- mandatory, preemption points (safe location) or synchronization mechanisms
Minimized latency -- hardware or software events
Interrupt latency -- time to start interrupt service routine
Dispatch latency --
time to dispatch and start new process
Conflict phase -- preemption & release of resources
Priority inversion -- E.g., p704, priority-inheritance protocol
(Network support?)
Real-time CPU Scheduling
Periodic, Rate, Admission-control
Rate-Monotonic -- requires periodic processes, optimal static scheduling, 2(21/n - 1) limit
Earliest-deadline-first (EDF) -- dynamic, doesn't require periodic processes
Proportional share scheduling
E.g., VxWorks 5.x & Real-Time Linux
Chapter 20 Multimedia Systems
Special/additional types of data -- audio & video
Frames, Local playback, Streaming, Progressive download, Random access
Live streaming vs. On-demand streaming
Characteristics -- large files, require high data rates, sensitive to timing delays
E.g., Calculation top p718
Quality of Service (QoS)
OS Issues
Compression & decoding overhead
N
eeds efficient file system
N
eeds bandwidth while minimizing delay & jitter
Compression -- ratio, encode vs. decode, lossy vs lossless
MPEG-1, MPEG-2, MPEG-4 -- levels and profiles, difference between frames
Kernel Requirement -- compare and contrast with RT systems
Periodic process
Best-effort service, Soft QoS, Hard QoS
Throughtput, Delay, Jitter, Reliability
Overprovisioning, Admissions control, Resource reservations
CPU Scheduling -- static vs. dynamic (usually static)
Disk Scheduling -- timing deadlines vs. rate requirements
EDF Scheduling
SCAN-EDF Scheduling
Network Managment
Real-time transport protocol (RTP), etc.
Multicasting
Streaming