×
Push yourself because, no one else is going to do it for you.
--Your friends at LectureNotes
Close

Note for Real Time Systems - RTS By Ajit singh kushwaha

  • Real Time Systems - RTS
  • Note
  • delhi technological university -
  • Computer Science Engineering
  • 124 Views
  • Uploaded 2 years ago
0 User(s)
Download PDFOrder Printed Copy

Share it with your friends

Leave your Comments

Text from page-1

CPSC-663: Real-Time Systems Aperiodic and Sporadic Jobs Scheduling Aperiodic and Sporadic Jobs • Definitions • Polling Server • Deferrable Server • Sporadic Server • Generalized Processor Sharing • Constant Utilization Server • Total Bandwidth Server • Preemptive Weighted Fair Queuing Scheduling Aperiodic and Sporadic Jobs • When variations in inter-release times and execution times are small: – can treat task as periodic task T=(ps, es), and schedule it accordingly. • What about sporadic jobs? can arrive at any time execution times vary widely deadlines are unknown a priori? n periodic tasks T1, … , Ti = (pi, ei), … , Tn priority-driven scheduling algorithm • We want to determine when to execute aperiodic and sporadic jobs, i.e., – sporadic job: acceptance test scheduling of accepted job – aperiodic job: schedule job to complete ASAP. • Given: 1

Text from page-2

CPSC-663: Real-Time Systems Aperiodic and Sporadic Jobs Priority Queues for Periodic/Sporadic/Aperiodic Jobs reject Sporadic Jobs Periodic Jobs Acceptance Test Processor Aperiodic Jobs Background/Interrupt-Driven vs. Slack Stealing • Background: – Aperiodic job queue has always lowest priority among all queues. – Periodic tasks and accepted jobs always meet deadlines. – Simple to implement. – Execution of aperiodic jobs may be unduly delayed. • Interrupt-Driven: – Response time as short as possible. – Periodic tasks may miss some deadlines. • Slack Stealing: – Postpone execution of periodic tasks only when it is safe to do so: • Well-suited for clock-driven environments. • What about priority-driven environments? (quite complicated) 2

Text from page-3

CPSC-663: Real-Time Systems Aperiodic and Sporadic Jobs Examples Background: T1 T2 = ( 3, 1 ) = ( 10 , 4 ) A : r = 0.1 , e = 2.1 Interrupt-Driven: Slack Stealing: Polled Execution vs. Bandwidth Preserving Servers • • Polling Server (ps, es ): ps : es : Terminology: – – – – scheduled as periodic task. Poller ready for execution every ps time units. Upper bound on execution time. (Execution) budget: es Replenishment: set budget to es at beginning of period. Poller consumes budget at rate 1 while executing aperiodic jobs. Poller exhausts budget whenever poller finds aperiodic queue empty. – Whenever the budget is exhausted, the scheduler removes the poller from periodic queue until replenished. • Bandwidth-preserving server algorithms: – Improve upon polling approach – Use periodic servers – Are defined by consumption and replenishment rules. 3

Text from page-4

CPSC-663: Real-Time Systems Aperiodic and Sporadic Jobs Example: Polling Server Rate-Monotonic: A : r = 2.8, e = 1.7 PS=(3, 1) T1=(φ=2, 3.5, 1.5) T2=(φ =0, 6.5, 0.5) budget Deferrable Servers • Rules: – Consumption: – Replenishment: Execution budget consumed only when server executes. Execution budget of server is set to es at each multiple of ps . • Preserves budget when no aperiodic job is ready. • Any budget held prior to replenishment is lost (no carry-over). 4

Lecture Notes