package producteur_consommateur public thread Producteur properties Dispatch_Protocol => Periodic; Period => 10 ms; Deadline => 10 ms; Compute_Execution_Time => 1 ms .. 3 ms; Priority => 10 ; end Producteur; thread Consommateur properties Dispatch_Protocol => Periodic; Period => 10 ms; Deadline => 10 ms; Compute_Execution_Time => 1 ms .. 1 ms; Priority => 20 ; end Consommateur; thread implementation Producteur.Impl end Producteur.Impl; thread implementation Consommateur.Impl end Consommateur.Impl; process Application end Application; process implementation Application.Impl subcomponents P1 : thread Producteur.Impl; P2 : thread Producteur.Impl; P3 : thread Producteur.Impl; C1 : thread Consommateur.Impl; C2 : thread Consommateur.Impl; properties Deadline => 40 ms applies to P1; Period => 40 ms applies to P1; Compute_Execution_Time => 1 ms .. 5 ms applies to P1; Priority => 1 applies to P1; Deadline => 20 ms applies to P2; Period => 20 ms applies to P2; Compute_Execution_Time => 1 ms .. 1 ms applies to P2; Priority => 2 applies to P2; Deadline => 20 ms applies to P3; Period => 20 ms applies to P3; Compute_Execution_Time => 1 ms .. 2 ms applies to P3; Priority => 3 applies to P3; Deadline => 40 ms applies to C1; Period => 40 ms applies to C1; Compute_Execution_Time => 1 ms .. 3 ms applies to C1; Priority => 4 applies to C1; Deadline => 40 ms applies to C2; Period => 40 ms applies to C2; Compute_Execution_Time => 1 ms .. 2 ms applies to C2; Priority => 5 applies to C2; end Application.Impl; processor cpu properties Scheduling_Protocol=>POSIX_1003_HIGHEST_PRIORITY_FIRST_PROTOCOL; end cpu; system prodcons end prodcons; system implementation prodcons.Impl subcomponents process1 : process application.Impl; cpu1 : processor cpu; properties Actual_Processor_Binding => (reference(cpu1)) applies to process1; end prodcons.Impl; end producteur_consommateur;