DISTRIBUTED SCHEDULECARRYING CODE Thomas A Henzinger and Slobodan
DISTRIBUTED SCHEDULE-CARRYING CODE Thomas A. Henzinger and Slobodan Matic, UC Berkeley Motivation § Distributed real-time system - static scheduling, TDMA communication § Independent code generation by several developers - specifications from resource manager § Code composability - component change does not disturb other components - check only modified code against its specification Giotto S+N Type and SCC Distributing SCC S type N type mode start() period 24 ms { taskfreq 2 do t 1(); taskfreq 2 do t 2(t 1); taskfreq 1 do t 3(); taskfreq 3 do t 4(t 2, t 3); } Modified SCC Sensing , Computing , Communicating , Actuating E and S Machine Interface § Embedded (E) Machine - E code environment interaction task release § Scheduling (S) Machine - S code task execution communication schedule Nov 18, 2004 12/13/2021 § Resource manager generates for each developer and each host - subset of Giotto tasks - S+N type (specifies computation and communication time intervals) § Each developer generates - task code - worst case execution/comm. times for tasks - SCC (segment) dispatch(t 2, 1) idle(1) send(t 2) dispatch(t 2, 5) idle(6) dispatch(t 2, 9) idle(9) receive(t 2) dispatch(t 3, 12) idle(12) call(d 2) § Developer 1 on host 2 changed its SCC - no other SCC code modifications - check only modified code against S+N type § S+N type specification complete and minimal - all and only information required for code composability § Formal definition - S type: set of time intervals [a, b] - N type: set of tuples ([a, b], x, f) x {send, receive}, f: Tasks N U{ } type does not constrain what task communicates, but for each task what output can be communicated This work was supported by the following grants: DARPA F 33615 -C-98 -3614, MICRO 01 -037, MARCO 98 -DT 660 and NSF CCR-0208875, CCR-0085949, CCR 0225610
- Slides: 1