Title: Scheduling%20Basic%20Concepts%20Ref:%20Hard%20Real-Time%20Computing%20Systems%20Giorgio%20Buttazzo%20%20Processes%20-%20Tasks%20%20-%20Threads
1SchedulingBasic ConceptsRef Hard Real-Time
Computing SystemsGiorgio ButtazzoProcesses -
Tasks - Threads
2Nostalgia
Apollo Guidance Computer First
Microprocessor Microcontroller
Automobile Computers 2006 1-2 million lines
of code
2010 10 million lines of code
99 of todays computers are in embedded
systems
3The Osborne I (1981)
First Portable Computer
- Hardware
- Dual 5¼-inch floppy disk drives
- 4 MHz Z80 CPU
- 65 kilobytes main memory
- Fold-down keyboard doubling as the computer
case's lid - 5-inch, 52 character 24 line monochrome CRT
display - Parallel printer port
- Serial port for use with external modems or
serial printers
Software CPM Word Star
SuperCalc Dbase II CBasic
4(No Transcript)
5Orientation
- Schedule
- An assignment of tasks to the processor, so that
each task is executed until completion - Scheduling Policy
- Tasks assigned according to a predefined
criterion - Scheduling Algorithm
- The set of rules that determines the ordering of
tasks - Active Task ? Ready Task ? Running Task
- (Ready Queue)
(Dispatching)
6Ready Queue
7Definition of Schedule
8Preemptive Schedules
9Categories of Schedules
10Deadlines
- Deadline
- Absolute with respect to real-time (time
zero) - Relative with respect to arrival time
11Real-Time Task Parameters
12Real-Time Task Parameters
13Periodic vs Aperiodic Tasks
14Precedence Constraints
15Precedence Example
16Critical Sections
Binary Semaphore
17Critical Section Example
18Critical Section Model
19Definition of Scheduling Problems
20Classification of Scheduling Algorithms
21Guarantee-Based Algorithms
22Domino Effect Degradation