ISO-10303-21; HEADER; FILE_NAME('', '2013-01-11 1:48:14 pm', (''), (''), '', '', ''); FILE_SCHEMA(('Feasibility_Tests_Classification_Simple','Feasibility_Tests_Classification_Cheddar','Feasibility_Tests_Classification_Basic_Views','a PlatypusSchemaWrapper')); FILE_DESCRIPTION(('', ''), ''); ENDSEC; DATA; #FT_C1=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .PROCESSOR_UTILIZATION_FACTOR. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .NECESSARYANDSUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Independent_Tasks,#AC_Periodic_Task,#AC_Synchronous,#AC_Rate_Monotonic,#AC_Preemptive,#AC_Uni_Processor,#AC_Implicit) ); #AC_Synchronous=APPLICABILITY_CONSTRAINT( Restricts: $ Implies: #AC_Concrete_Task ); #FT_C4_Bis=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .PROCESSOR_UTILIZATION_FACTOR. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .SUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Shared_Resource,#AC_Periodic_Task,#AC_Synchronous,#AC_Rate_Monotonic,#AC_Preemptive,#AC_Uni_Processor,#AC_Implicit) ); #FT_R3=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .WORST_CASE_RESPONSE_TIME. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .NECESSARYANDSUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Independent_Tasks,#AC_Periodic_Task,#AC_Non_Concrete_Task,#AC_Earliest_Deadline_First,#AC_Preemptive,#AC_Uni_Processor,#AC_Arbitrary) ); #FT_S1=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .HYPER_PERIOD_SIMULATION. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .NECESSARYANDSUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Independent_Tasks,#AC_Periodic_Task,#AC_Concrete_Task,#AC_Synchronous,#AC_Static_Priorities,#AC_Dynamic_Priorities,#AC_Preemptive,#AC_Non_Preemptive,#AC_Uni_Processor,#AC_Arbitrary,#AC_Implicit,#AC_Constrained) ); #AC_Uni_Processor=APPLICABILITY_CONSTRAINT( Restricts: #P_Processor_Type Implies: $ ); #AC_Non_Concrete_Task=APPLICABILITY_CONSTRAINT( Restricts: #P_Task_First_Dispatch Implies: $ ); #FT_C5=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .PROCESSOR_UTILIZATION_FACTOR. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .SUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Independent_Tasks,#AC_Periodic_Task,#AC_Synchronous,#AC_Deadline_Monotonic,#AC_Preemptive,#AC_Uni_Processor,#AC_Constrained) ); #AC_Sporadic_Task=APPLICABILITY_CONSTRAINT( Restricts: #P_Job_Dispatch Implies: $ ); #Automatic_Prop_List=PROPERTIES_LIST_AUTO(); #FT_C3=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .PROCESSOR_UTILIZATION_FACTOR. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .SUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Independent_Tasks,#AC_Periodic_Task,#AC_Synchronous,#AC_Rate_Monotonic,#AC_Non_Preemptive,#AC_Uni_Processor,#AC_Implicit) ); #AC_Asynchronous=APPLICABILITY_CONSTRAINT( Restricts: $ Implies: #AC_Concrete_Task ); #AC_Dependent_Tasks=APPLICABILITY_CONSTRAINT( Restricts: #P_Task_Dependency Implies: $ ); #FT_R4=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .WORST_CASE_RESPONSE_TIME. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .SUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Independent_Tasks,#AC_Periodic_Task,#AC_Synchronous,#AC_Static_Priorities,#AC_Non_Preemptive,#AC_Uni_Processor,#AC_Implicit) ); #FT_C7=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .PROCESSOR_UTILIZATION_FACTOR. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .NECESSARYANDSUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Independent_Tasks,#AC_Periodic_Task,#AC_Synchronous,#AC_Static_Priorities,#AC_Preemptive,#AC_Uni_Processor,#AC_Implicit) ); #FT_C4=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .PROCESSOR_UTILIZATION_FACTOR. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .SUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Independent_Tasks,#AC_Periodic_Task,#AC_Synchronous,#AC_Rate_Monotonic,#AC_Non_Preemptive,#AC_Uni_Processor,#AC_Implicit) ); #List_Of_Applicability_Constraints=APPLICABILITY_CONSTRAINTS_LIST( Applicability_Constraints: (#AC_Aperiodic_Task,#AC_Arbitrary,#AC_Asynchronous,#AC_Concrete_Task,#AC_Constrained,#AC_Deadline_Monotonic,#AC_Dependent_Tasks,#AC_Dynamic_Priorities,#AC_Earliest_Deadline_First,#AC_Harmonic_Task,#AC_Implicit,#AC_Independent_Tasks,#AC_Least_Laxity_First,#AC_Non_Concrete_Task,#AC_Non_Preemptive,#AC_PCP,#AC_PIP,#AC_Periodic_Task,#AC_Precedence,#AC_Preemptive,#AC_Rate_Monotonic,#AC_SRP,#AC_Shared_Resource,#AC_Sporadic_Task,#AC_Static_Priorities,#AC_Synchronous,#AC_Uni_Processor) ); #AC_Static_Priorities=APPLICABILITY_CONSTRAINT( Restricts: #P_Scheduling_Protocol Implies: $ ); #AC_Constrained=APPLICABILITY_CONSTRAINT( Restricts: #P_Deadline Implies: #AC_Periodic_Task ); #AC_SRP=APPLICABILITY_CONSTRAINT( Restricts: $ Implies: #AC_Shared_Resource ); #AC_Concrete_Task=APPLICABILITY_CONSTRAINT( Restricts: #P_Task_First_Dispatch Implies: $ ); #AC_Precedence=APPLICABILITY_CONSTRAINT( Restricts: $ Implies: #AC_Dependent_Tasks ); #FT_C1_Bis=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .PROCESSOR_UTILIZATION_FACTOR. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .NECESSARYANDSUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Independent_Tasks,#AC_Harmonic_Task,#AC_Synchronous,#AC_Rate_Monotonic,#AC_Preemptive,#AC_Uni_Processor,#AC_Implicit) ); #AC_Dynamic_Priorities=APPLICABILITY_CONSTRAINT( Restricts: #P_Scheduling_Protocol Implies: $ ); #AC_Preemptive=APPLICABILITY_CONSTRAINT( Restricts: #P_Preemptivity Implies: $ ); #P_Task_Dependency=PROPERTY( Restricted_Entity: 'Dependency' ); #AC_Shared_Resource=APPLICABILITY_CONSTRAINT( Restricts: $ Implies: #AC_Dependent_Tasks ); #AC_Deadline_Monotonic=APPLICABILITY_CONSTRAINT( Restricts: $ Implies: #AC_Static_Priorities ); #FT_C2_Ter=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .PROCESSOR_UTILIZATION_FACTOR. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .NECESSARY. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Independent_Tasks,#AC_Periodic_Task,#AC_Synchronous,#AC_Least_Laxity_First,#AC_Earliest_Deadline_First,#AC_Preemptive,#AC_Uni_Processor,#AC_Constrained) ); #FT_C8=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .PROCESSOR_UTILIZATION_FACTOR. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .NECESSARYANDSUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Independent_Tasks,#AC_Periodic_Task,#AC_Non_Concrete_Task,#AC_Earliest_Deadline_First,#AC_Preemptive,#AC_Uni_Processor,#AC_Arbitrary) ); #FT_R5=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .WORST_CASE_RESPONSE_TIME. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .NECESSARYANDSUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Independent_Tasks,#AC_Periodic_Task,#AC_Non_Concrete_Task,#AC_Earliest_Deadline_First,#AC_Non_Preemptive,#AC_Uni_Processor,#AC_Arbitrary) ); #AC_Rate_Monotonic=APPLICABILITY_CONSTRAINT( Restricts: $ Implies: #AC_Static_Priorities ); #AC_Independent_Tasks=APPLICABILITY_CONSTRAINT( Restricts: #P_Task_Dependency Implies: $ ); #AC_PIP=APPLICABILITY_CONSTRAINT( Restricts: $ Implies: #AC_Shared_Resource ); #FT_C2=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .PROCESSOR_UTILIZATION_FACTOR. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .NECESSARYANDSUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Independent_Tasks,#AC_Periodic_Task,#AC_Synchronous,#AC_Least_Laxity_First,#AC_Earliest_Deadline_First,#AC_Preemptive,#AC_Uni_Processor,#AC_Implicit) ); #FT_C6=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .PROCESSOR_UTILIZATION_FACTOR. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .NECESSARYANDSUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Independent_Tasks,#AC_Periodic_Task,#AC_Synchronous,#AC_Earliest_Deadline_First,#AC_Non_Preemptive,#AC_Uni_Processor,#AC_Implicit) ); #P_Preemptivity=PROPERTY( Restricted_Entity: 'Scheduler' ); #FT_S2=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .HYPER_PERIOD_SIMULATION. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .NECESSARYANDSUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Independent_Tasks,#AC_Periodic_Task,#AC_Concrete_Task,#AC_Synchronous,#AC_Static_Priorities,#AC_Dynamic_Priorities,#AC_Preemptive,#AC_Non_Preemptive,#AC_Uni_Processor,#AC_Arbitrary,#AC_Implicit,#AC_Constrained) ); #AC_Earliest_Deadline_First=APPLICABILITY_CONSTRAINT( Restricts: $ Implies: #AC_Dynamic_Priorities ); #AC_Periodic_Task=APPLICABILITY_CONSTRAINT( Restricts: #P_Job_Dispatch Implies: $ ); #FT_R1=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .WORST_CASE_RESPONSE_TIME. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .NECESSARYANDSUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Independent_Tasks,#AC_Periodic_Task,#AC_Synchronous,#AC_Static_Priorities,#AC_Preemptive,#AC_Uni_Processor,#AC_Arbitrary) ); #Automatic_AC_List=APPLICABILITY_CONSTRAINTS_LIST_AUTO(); #AC_Harmonic_Task=APPLICABILITY_CONSTRAINT( Restricts: $ Implies: (#AC_Periodic_Task) ); #List_Of_Feasibility_Tests=FEASIBILITY_TESTS_LIST( Feasibility_tests: (#FT_C1,#FT_C1_Bis,#FT_C2,#FT_C2_Bis,#FT_C2_Ter,#FT_C3,#FT_C4,#FT_C4_Bis,#FT_C5,#FT_C6,#FT_C7,#FT_C8,#FT_R1,#FT_R2,#FT_R3,#FT_R4,#FT_R5,#FT_S1,#FT_S2) ); #AC_Arbitrary=APPLICABILITY_CONSTRAINT( Restricts: #P_Deadline Implies: $ ); #AC_Aperiodic_Task=APPLICABILITY_CONSTRAINT( Restricts: #P_Job_Dispatch Implies: $ ); #AC_Least_Laxity_First=APPLICABILITY_CONSTRAINT( Restricts: $ Implies: #AC_Dynamic_Priorities ); #P_Scheduling_Protocol=PROPERTY( Restricted_Entity: 'Scheduler' ); #P_Deadline=PROPERTY( Restricted_Entity: 'Task' ); #P_Task_First_Dispatch=PROPERTY( Restricted_Entity: 'Task' ); #Automatic_FT_List=FEASIBILITY_TESTS_LIST_AUTO(); #FT_R2=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .WORST_CASE_RESPONSE_TIME. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .NECESSARYANDSUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Shared_Resource,#AC_Precedence,#AC_Periodic_Task,#AC_Synchronous,#AC_Static_Priorities,#AC_Preemptive,#AC_Uni_Processor,#AC_Arbitrary) ); #FT_C2_Bis=FEASIBILITY_TEST( Analysis_method: '' Performance_criterion: .PROCESSOR_UTILIZATION_FACTOR. <.PROCESSOR_UTILIZATION_FACTOR. or .WORST_CASE_RESPONSE_TIME. or .HYPER_PERIOD_SIMULATION.> Accuracy: .SUFFICIENT. <.NECESSARY. or .SUFFICIENT. or .NECESSARYANDSUFFICIENT.> Computational_Complexity: .LINEAR. <.LINEAR. or .POLYNOMIAL. or .NP_HARD.> Requires: (#AC_Independent_Tasks,#AC_Periodic_Task,#AC_Synchronous,#AC_Least_Laxity_First,#AC_Earliest_Deadline_First,#AC_Preemptive,#AC_Uni_Processor,#AC_Constrained) ); #AC_Non_Preemptive=APPLICABILITY_CONSTRAINT( Restricts: #P_Preemptivity Implies: $ ); #AC_PCP=APPLICABILITY_CONSTRAINT( Restricts: $ Implies: #AC_Shared_Resource ); #P_Job_Dispatch=PROPERTY( Restricted_Entity: 'Task' ); #AC_Implicit=APPLICABILITY_CONSTRAINT( Restricts: #P_Deadline Implies: #AC_Periodic_Task ); #P_Processor_Type=PROPERTY( Restricted_Entity: 'Processor' ); #List_Of_Properties=PROPERTIES_LIST( Properties: (#P_Deadline,#P_Job_Dispatch,#P_Preemptivity,#P_Processor_Type,#P_Scheduling_Protocol,#P_Task_Dependency,#P_Task_First_Dispatch) ); ENDSEC; END-ISO-10303-21;