package test_parameter_and_transformation_properties public with Cheddar_Transformation_Properties; with Cheddar_Parameters_Properties; data black end black; data implementation black.Impl properties Concurrency_Control_Protocol => Priority_Ceiling; end black.Impl; thread ordo_bus properties Dispatch_Protocol => Periodic; Period => 125 ms; Deadline => 125 ms; Compute_Execution_Time => 1 ms .. 25 ms; Priority => 10; POSIX_Scheduling_Policy => SCHED_RR; end ordo_bus; thread implementation ordo_bus.Impl end ordo_bus.Impl; thread donnees features fe : requires data access black.Impl; properties Dispatch_Protocol => Periodic; Period => 125 ms; Deadline => 125 ms; Compute_Execution_Time => 25 ms .. 25 ms; Priority => 9; POSIX_Scheduling_Policy => SCHED_FIFO; end donnees; thread implementation donnees.Impl end donnees.Impl; thread pilotage features fe : requires data access black.Impl; properties Dispatch_Protocol => Periodic; Period => 250 ms; Deadline => 250 ms; Compute_Execution_Time => 25 ms .. 25 ms; Priority => 8; POSIX_Scheduling_Policy => SCHED_OTHERS; end pilotage; thread implementation pilotage.Impl end pilotage.Impl; thread radio properties Dispatch_Protocol => Periodic; Period => 250 ms; Deadline => 250 ms; Compute_Execution_Time => 25 ms .. 25 ms; Priority => 7; POSIX_Scheduling_Policy => SCHED_RR; end radio; thread implementation radio.Impl end radio.Impl; thread camera properties Dispatch_Protocol => Periodic; Period => 250 ms; Deadline => 250 ms; Compute_Execution_Time => 25 ms .. 25 ms; Priority => 6; POSIX_Scheduling_Policy => SCHED_RR; end camera; thread implementation camera.Impl end camera.Impl; thread mesure features fe : requires data access black.Impl; properties Dispatch_Protocol => Periodic; Period => 5000 ms; Deadline => 5000 ms; Compute_Execution_Time => 50 ms .. 50 ms; Priority => 5; POSIX_Scheduling_Policy => SCHED_RR; end mesure; thread implementation mesure.Impl end mesure.Impl; thread meteo features fe : requires data access black.Impl; properties Dispatch_Protocol => Periodic; Period => 5000 ms; Deadline => 5000 ms; Compute_Execution_Time => 50 ms .. 75 ms; Priority => 4; POSIX_Scheduling_Policy => SCHED_FIFO; end meteo; thread implementation meteo.Impl end meteo.Impl; process Application end Application; process implementation Application.Impl subcomponents ordo_bus : thread ordo_bus.Impl; donnees : thread donnees.Impl; pilotage : thread pilotage.Impl; radio : thread radio.Impl; camera : thread camera.Impl; mesure : thread mesure.Impl; meteo : thread meteo.Impl; black : data black.Impl; connections cx1 : data access black -> donnees.fe; cx2 : data access black -> pilotage.fe; cx3 : data access black -> mesure.fe; cx4 : data access black -> meteo.fe; end Application.Impl; processor cpu properties Scheduling_Protocol=>(POSIX_1003_HIGHEST_PRIORITY_FIRST_PROTOCOL); end cpu; system mars end mars; system implementation mars.Impl subcomponents process1 : process application.Impl; cpu1 : processor cpu; properties Actual_Processor_Binding => (reference (cpu1)) applies to process1; -- Few specific Cheddar properties to drive the analysis with OSATE2 -- Cheddar_Transformation_Properties::Exported_Attribute_Time_Units => MicroSecond; Cheddar_Parameters_Properties::Cheddar_Working_Folder => "C:\\Users\\singhoff//Desktop//Cheddar_Bin//"; Cheddar_Parameters_Properties::Cheddar_Install_Folder => "C:\\Users\\singhoff//Desktop//Cheddar_Bin//"; Cheddar_Parameters_Properties::Scheduling_Feasibility_Interval => 400; Cheddar_Parameters_Properties::Response_Time_From_Feasibility_Test => true; Cheddar_Parameters_Properties::Response_Time_From_Scheduling_Simulation => false; end mars.Impl; end test_parameter_and_transformation_properties;