processor cpu0 end cpu0; processor implementation cpu0.Impl properties Scheduling_Protocol => Posix_1003_Highest_Priority_First_Protocol; Cheddar_Properties::Preemptive_Scheduler => True; end cpu0.Impl; system pcp end pcp; system implementation pcp.Impl subcomponents instancied_cpu0 : processor cpu0.Impl; instancied_ea1 : process ea1.Impl; properties Actual_Processor_Binding => reference instancied_cpu0 applies to instancied_ea1; end pcp.Impl; data shaded end shaded; data implementation shaded.Impl properties Cheddar_Properties::Data_Concurrency_State => -1; Concurrency_Control_Protocol => PRIORITY_CEILING_PROTOCOL; end shaded.Impl; process ea1 end ea1; process implementation ea1.Impl subcomponents instancied_J1 : thread J1.Impl; instancied_shaded : data shaded.Impl; connections data access instancied_shaded -> instancied_J1.shaded_features; properties Cheddar_Properties::Critical_Section => ( "instancied_shaded", "instancied_J1","2","2" ); end ea1.Impl; thread J1 features shaded_features : requires data access shaded.Impl; end J1; thread implementation J1.Impl properties Dispatch_Protocol => Periodic; Compute_Execution_Time => 0 ms .. 3 ms; Deadline => 50 ms; Period => 50 ms; Cheddar_Properties::Dispatch_Absolute_Time => 7 ms; Cheddar_Properties::POSIX_Scheduling_Policy => SCHED_FIFO; Cheddar_Properties::Bound_On_Data_Blocking_Time => 0 ms; Cheddar_Properties::Fixed_Priority => 5; end J1.Impl;