{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

ELEC 6260 Final Project 2010

ELEC 6260 Final Project 2010 - process variable should be...

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
ELEC 6260 Final Project Due Monday, May 3, 2010 (50 points) Design, implement and demonstrate a task scheduler for the following processes in a real-time system. Process Time(sec) Deadline(sec) Process Variable P1 2 10 V1 P2 4 20 V2 P3 6 30 V3 P4 8 60 V4 When running, each process Pn should increment its “process variable” Vn once per half- second, timed by a software delay. (The half-second need not be exact.) The process should display the value of its process variable next to its name on four lines in the upper- left corner of the LCD on the uCdragon board, with at most one of these changing at any given time. Example: V1=2 V2=1 V3=7 V4=12 This should continue until the process is preempted at the end of its allotted time slice. Vn should be initialized to 0 when the process begins. If the process is preempted, its
Background image of page 1
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: process variable should be saved (as part of the process “context”), so that when the process is resumed the process variable will continue incrementing from where it stopped. Each process is to have an activation record containing its state (running, ready, waiting) and any “context” information needed to resume incrementing its process variable. A static RMS schedule is to be used, i.e. a schedule is to be determined in advance, and “hard-coded” into the scheduler. If the schedule is such that no process is scheduled for a given time slot, then run a “background program” that blinks an LED during that time. A programmable timer interrupt routine is to be used to maintain system time....
View Full Document

{[ snackBarMessage ]}

Ask a homework question - tutors are online