| |
| h2. Model Validation |
| |
| |
| h3. Usage of AMALTHEA Model Validation |
| |
| The AMALTHEA model validation can be triggered by clicking on the "Validate" button of the Amalthea editor. |
| |
| !../pictures/validation/profile_selection_dialog.png! |
| |
| The dialog shows a list of profiles allowing the selection of specific validations. |
| |
| The validation is either applied to all elements of the model (default: folder scope) or only to the elements of the current file. |
| |
| If an error is found, it is shown in the Problems view of Eclipse. A simple double click on the error will lead you to the affected elements in the AMALTHEA model. The validation distinguishes between three error types: __errors__, __warnings__ and __info__. |
| |
| |
| h3. Included Validations |
| |
| h4. Amalthea Standard Validations |
| |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.standard.AmaltheaProfile@<br/> |
| **Amalthea Standard Validations** |
| __Standard validations for AMALTHEA models to ensure data consistency.__ |
| * Profiles: |
| ** @org.eclipse.app4mc.amalthea.validations.standard.BasicProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.standard.ConstraintsProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.standard.EMFProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.standard.EMFScopeProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.standard.HardwareProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.standard.MappingProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.standard.OSProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.standard.SoftwareProfile@ |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.standard.BasicProfile@<br/> |
| **Basic Validations** |
| * Validations: |
| ** AM-Basic-Counter (ERROR - Counter) |
| *** The offset value of a counter must not be negative |
| ** AM-Basic-Data-Size (ERROR - DataSize) |
| *** Some data sizes have to fulfill the condition >0 or >=0 |
| ** AM-Basic-Frequency (ERROR - Frequency) |
| *** Some frequencies have to fulfill the condition >0 |
| ** AM-Basic-Quantity (ERROR - Quantity) |
| *** Quantity unit has to be set (_undefined_ is an error) |
| ** AM-Basic-Time-Range (ERROR - Time) |
| *** Some time ranges has to fulfill the condition >0 or >=0 |
| ** AM-Basic-CustomProperty-Key (WARNING - IAnnotatable) |
| *** Custom property keys have to be unique |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.standard.ConstraintsProfile@<br/> |
| **Constraints Validations** |
| * Validations: |
| ** AM-Constraints-EventChain (ERROR - AbstractEventChain) |
| *** Stimulus and response shall not reference the same event |
| *** The stimulus of the first segment has to be the same as the stimulus of the event chain |
| *** The stimulus of other segments have to be equal to the response of the previous segment |
| *** The response of the last segment has to be the same as the response of the event chain |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.standard.EMFProfile@<br/> |
| **Amalthea EMF Validations** |
| __Standard EMF validations for AMALTHEA models (generated).__ |
| * Validations: |
| ** AM-EMF-INTRINSIC (UNDEFINED - EObject) |
| *** EMF extended metadata constraints (generated) |
| *** AMALTHEA invariants (generated) |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.standard.EMFScopeProfile@<br/> |
| **Amalthea Scope Validations** |
| __Validations to ensure unique names in folder scope.__ |
| * Validations: |
| ** AM-EMF-SCOPE (ERROR - Amalthea) |
| *** ID has to be unique in folder scope |
| *** ID has to be set for objects of type IReferable |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.standard.HardwareProfile@<br/> |
| **Hardware Validations** |
| * Validations: |
| ** AM-HW-AccessPath (ERROR - HwAccessPath) |
| *** HwAccessPath ranges and memory size must be consistent |
| *** HwAccessPath elements must be consistent |
| ** AM-HW-Connection (ERROR - HwConnection) |
| *** HwConnections must refer to two HwPorts |
| *** HwConnections must be linked to HwPorts of the same Interface |
| ** AM-HW-Definition (ERROR - HwDefinition) |
| *** Only one feature of a category can be referred |
| ** AM-HW-Port (ERROR - HwPort) |
| *** A HwPort can only have one (non internal) HwConnection |
| ** AM-HW-Structure (ERROR - HwStructure) |
| *** Connections must only refer to contained HwPorts |
| *** Inner connections always need one Initiator and one Responder HwPort |
| *** Delegated connections always connect HwPorts of the same type |
| ** AM-HW-Module-Definition (WARNING - HwModule) |
| *** Memory definition must be set |
| *** ProcessingUnit definition must be set |
| *** ConnectionHandler definition must be set |
| *** Cache definition must be set |
| ** AM-HW-Port-BitWidth (WARNING - HwPort) |
| *** Bitwidth should be greater than zero |
| ** AM-HW-Port-Definition (WARNING - HwPort) |
| *** PortType must be set |
| *** PortInterface must be set |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.standard.MappingProfile@<br/> |
| **Mapping Validations** |
| * Validations: |
| ** AM-Mapping-ISR-Scheduler (WARNING - ISR) |
| *** An ISR should have an allocation to an interrupt controller |
| ** AM-Mapping-Scheduler-Allocation-Hierarchy (WARNING - SchedulerAllocation) |
| *** A child scheduler should only be responsible for a subset of processing units of its ancestors |
| ** AM-Mapping-Scheduler-Allocation-Top-Level-Responsibility (WARNING - MappingModel) |
| *** A processing unit should have at most one top level task scheduler and one interrupt controller responsible for it |
| ** AM-Mapping-Scheduler-ProcessingUnit (WARNING - Scheduler) |
| *** A top level scheduler should be responsible for at least one processing unit |
| ** AM-Mapping-Task-Scheduler (WARNING - Task) |
| *** A task should have an allocation to a task scheduler |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.standard.OSProfile@<br/> |
| **OS Validations** |
| * Validations: |
| ** AM-OS-Mandatory-Scheduling-Parameters-Set (ERROR - Scheduler) |
| *** Mandatory scheduling parameters must be set |
| ** AM-OS-Scheduling-Parameter-Value-Number-Matches-Defined-Multiplicity (ERROR - Entry) |
| *** The number of values of the specified scheduling parameter must match the defined multiplicity in the scheduling parameter definition |
| ** AM-OS-Scheduling-Parameter-Value-Type-Matches-Defined-Type (ERROR - Entry) |
| *** The type of the specified scheduling parameter must match the type defined in the scheduling parameter definition |
| ** AM-OS-Scheduling-Parameter-Empty-Overriden-Value (WARNING - Entry) |
| *** There should be a value if a default value of a scheduling parameter is overridden |
| ** AM-OS-Standard-Scheduler-Definition-Conformance (WARNING - SchedulerDefinition) |
| *** Standard schedulers with their parameters should be modeled as defined by the APP4MC standard scheduler library |
| ** AM-OS-Standard-Scheduling-Parameter-Definition-Conformance (WARNING - SchedulingParameterDefinition) |
| *** Scheduling parameter definition that are used in a standard scheduler should conform to the parameters defined by the APP4MC standard scheduler library |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.standard.SoftwareProfile@<br/> |
| **Software Validations** |
| * Validations: |
| ** AM-SW-CallArgument (ERROR - CallArgument) |
| *** The referred runnable must contain the referred parameter |
| ** AM-SW-DataDependency (ERROR - DataDependency) |
| *** A data dependency can only be defined for specific types of label accesses, parameters and call arguments |
| *** A data dependency can only refer to specific types of parameters and call arguments |
| ** AM-SW-Group (ERROR - Group) |
| *** The uninterruptible group must not contain nested groups |
| |
| h4. APP4MC.sim Validations |
| |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.sim.App4mcSimProfile@<br/> |
| **APP4MC.sim Validations** |
| __Validations for AMALTHEA models used in a APP4MC.sim simulation.__ |
| * Profiles: |
| ** @org.eclipse.app4mc.amalthea.validations.sim.SimBasicProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.sim.SimHardwareProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.sim.SimMappingProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.sim.SimOsProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.sim.SimSoftwareProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.standard.AmaltheaProfile@ |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.sim.SimBasicProfile@<br/> |
| **Basic Validations (APP4MC.sim)** |
| * Validations: |
| ** Sim-Basic-Identifiers (ERROR - IReferable) |
| *** All names of IReferable objects must be valid C++ identifier names |
| ** TA-Basic-ContinuousValueGaussDistribution-mean (ERROR - ContinuousValueGaussDistribution) |
| *** Mean must not be less than the lower bound |
| *** Mean must not be greater than the upper bound |
| ** TA-Basic-DiscreteValueGaussDistribution-mean (ERROR - DiscreteValueGaussDistribution) |
| *** Mean must not be less than the lower bound |
| *** Mean must not be greater than the upper bound |
| ** TA-Basic-TimeGaussDistribution-mean (ERROR - TimeGaussDistribution) |
| *** Mean must not be less than the lower bound |
| *** Mean must not be greater than the upper bound |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.sim.SimHardwareProfile@<br/> |
| **Hardware Validations (APP4MC.sim)** |
| * Validations: |
| ** Inchron-HWModule-MissingClockReference (ERROR - HwModule) |
| *** HW Module must have 'Frequency Domain' reference |
| ** Sim-HW-Connection (ERROR - HwConnection) |
| *** Either read AND write latency, or datarate, or both must be set |
| ** Sim-HW-MemoryDefinition (INFO - MemoryDefinition) |
| *** Either access latency or datarate (or both) must be set |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.sim.SimMappingProfile@<br/> |
| **Mapping Validations (APP4MC.sim)** |
| * Validations: |
| ** AM-Mapping-ISR-Scheduler (ERROR - ISR) |
| *** An ISR should have an allocation to an interrupt controller |
| ** AM-Mapping-Scheduler-Allocation-Hierarchy (ERROR - SchedulerAllocation) |
| *** A child scheduler should only be responsible for a subset of processing units of its ancestors |
| ** AM-Mapping-Scheduler-Allocation-Top-Level-Responsibility (ERROR - MappingModel) |
| *** A processing unit should have at most one top level task scheduler and one interrupt controller responsible for it |
| ** AM-Mapping-Scheduler-ProcessingUnit (ERROR - Scheduler) |
| *** A top level scheduler should be responsible for at least one processing unit |
| ** AM-Mapping-Task-Scheduler (ERROR - Task) |
| *** A task should have an allocation to a task scheduler |
| ** Sim-Mapping-SchedulerAllocation (WARNING - SchedulerAllocation) |
| *** Executing processing unit must be set |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.sim.SimOsProfile@<br/> |
| **OS model Validations (APP4MC.sim)** |
| * Validations: |
| ** AM-OS-Mandatory-Scheduling-Parameters-Set (ERROR - Scheduler) |
| *** Mandatory scheduling parameters must be set |
| ** AM-OS-Scheduling-Parameter-Value-Number-Matches-Defined-Multiplicity (ERROR - Entry) |
| *** The number of values of the specified scheduling parameter must match the defined multiplicity in the scheduling parameter definition |
| ** AM-OS-Scheduling-Parameter-Value-Type-Matches-Defined-Type (ERROR - Entry) |
| *** The type of the specified scheduling parameter must match the type defined in the scheduling parameter definition |
| ** AM-OS-Standard-Scheduler-Definition-Conformance (ERROR - SchedulerDefinition) |
| *** Standard schedulers with their parameters should be modeled as defined by the APP4MC standard scheduler library |
| ** AM-OS-Standard-Scheduling-Parameter-Definition-Conformance (ERROR - SchedulingParameterDefinition) |
| *** Scheduling parameter definition that are used in a standard scheduler should conform to the parameters defined by the APP4MC standard scheduler library |
| ** Inchron-OS-PU-Allocation-MustBeDisjunct (INFO - OperatingSystem) |
| *** OS Scheduler to core mapping must be distinct |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.sim.SimSoftwareProfile@<br/> |
| **Software Validations (APP4MC.sim)** |
| * Validations: |
| ** Sim-Software-AbstractMemoryElementIsMapped (ERROR - LabelAccess) |
| *** Checks if label access type is set |
| ** Sim-Software-AbstractMemoryElementIsMapped (ERROR - Label) |
| *** Checks if label is mapped to a memory node |
| ** Sim-Software-AbstractMemoryElementIsMapped (ERROR - Channel) |
| *** Checks if channel is mapped to a Memory |
| ** Sim-Software-AbstractMemoryElementIsMapped (ERROR - ModeLabelAccess) |
| *** Checks if modeLabel access type is valid |
| ** Sim-Software-ChannelAccessFeasibility (ERROR - ChannelAccess) |
| *** Checks if a channel access can be performed from certain runnable |
| ** Sim-Software-ChannelElements (ERROR - ChannelAccess) |
| *** Checks if channel access's property elements is greater 0 |
| ** Sim-Software-LabelAccessFeasibility (ERROR - LabelAccess) |
| *** Checks if a label access can be performed from certain runnable |
| ** Sim-Software-Process (ERROR - Process) |
| *** At least one stimulus must be set |
| ** Inchron-SW-Runnable-MustHaveActivityGraph (WARNING - Runnable) |
| *** Runnable must have at least one ActivityGraph |
| ** Inchron-SW-Task-MustHaveActivityGraph (WARNING - Task) |
| *** Task must have atleast one ActivityGraph |
| ** Sim-Software-AbstractMemoryElementIsMapped (WARNING - ModeLabel) |
| *** Checks if modeLabel is mapped to a Memory |
| ** Sim-Software-ModeLabelAccessFeasibility (WARNING - ModeLabelAccess) |
| *** Checks if a modeLabel access can be performed from certain runnable |
| ** TA-Software-ModeConditionConjunctionAlwaysFalse (WARNING - ModeConditionConjunction) |
| ** TA-Software-ModeConditionDisjunctionAlwaysTrue (WARNING - ModeConditionDisjunction) |
| |
| h4. Timing Architects Validations |
| |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.ta.TimingArchitectsProfile@<br/> |
| **Timing Architects Validations** |
| __Validations for AMALTHEA models used in a Timing Architects Simulation.__ |
| * Validations: |
| ** TA-Misc-Semaphore (ERROR - Semaphore) |
| *** Initial value must not be negative |
| *** Max value must be positive |
| *** Max value must not be smaller than the initial value |
| * Profiles: |
| ** @org.eclipse.app4mc.amalthea.validations.standard.AmaltheaProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.ta.TABasicProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.ta.TAConstraintsProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.ta.TAHardwareProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.ta.TASoftwareProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.ta.TAStimuliProfile@ |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.ta.TABasicProfile@<br/> |
| **Basic Validations (Timing Architects)** |
| * Validations: |
| ** TA-Basic-ContinuousValueGaussDistribution-mean (ERROR - ContinuousValueGaussDistribution) |
| *** Mean must not be less than the lower bound |
| *** Mean must not be greater than the upper bound |
| ** TA-Basic-DiscreteValueGaussDistribution-mean (ERROR - DiscreteValueGaussDistribution) |
| *** Mean must not be less than the lower bound |
| *** Mean must not be greater than the upper bound |
| ** TA-Basic-TimeGaussDistribution-mean (ERROR - TimeGaussDistribution) |
| *** Mean must not be less than the lower bound |
| *** Mean must not be greater than the upper bound |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.ta.TAConstraintsProfile@<br/> |
| **Constraints Validations (Timing Architects)** |
| * Validations: |
| ** TA-Constraints-DataAgeTime (ERROR - DataAgeTime) |
| *** Maximum time must not be smaller than minimum time |
| ** TA-Constraints-DelayConstraint (ERROR - DelayConstraint) |
| *** Upper bound must not be smaller than lower bound |
| ** TA-Constraints-ECLConstraint (ERROR - EventChainLatencyConstraint) |
| *** Maximum must not be smaller than minimum |
| ** TA-Constraints-EDFTaskMustHaveDeadline (ERROR - Task) |
| *** EDF tasks must have a deadline requirement |
| ** TA-Constraints-RTLimitMustBePositive (ERROR - TimeRequirementLimit) |
| *** Response time must be positive |
| ** TA-Constraints-RepetitionConstraint (ERROR - RepetitionConstraint) |
| *** Upper bound must not be smaller than lower bound |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.ta.TAHardwareProfile@<br/> |
| **Hardware Validations (Timing Architects)** |
| * Validations: |
| ** TA-Hardware-HWFIPCMustBePositive (ERROR - HwFeature) |
| *** IPC (instructions per cycle) must be positive |
| ** TA-Hardware-PUDIPCMissing (INFO - ProcessingUnitDefinition) |
| *** IPC (instructions per cycle) should be set, otherwise default (1.0) will be assumed |
| *** Only one IPC HwFeature should be specified for a processing unit definition |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.ta.TASoftwareProfile@<br/> |
| **Software Validations (Timing Architects)** |
| * Validations: |
| ** TA-Software-RunnableCall (ERROR - RunnableCall) |
| ** TA-Software-ServerCall (ERROR - ServerCall) |
| ** TA-Stimuli-ArrivalCurveStimulus (ERROR - OsEvent) |
| ** TA-Software-ModeConditionConjunctionAlwaysFalse (WARNING - ModeConditionConjunction) |
| ** TA-Software-ModeConditionDisjunctionAlwaysTrue (WARNING - ModeConditionDisjunction) |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.ta.TAStimuliProfile@<br/> |
| **Stimuli Validations (Timing Architects)** |
| * Validations: |
| ** TA-Stimuli-VariableRateStimulusScenario (ERROR - VariableRateStimulus) |
| *** Scenario must be set |
| |
| h4. Inchron Validations |
| |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.inchron.InchronProfile@<br/> |
| **Inchron Validations** |
| __Validation for Amalthea models used in Inchron Toolsuite__ |
| * Profiles: |
| ** @org.eclipse.app4mc.amalthea.validations.inchron.InchronConstraintsProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.inchron.InchronHWProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.inchron.InchronOsProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.inchron.InchronSoftwareProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.inchron.InchronStimuliProfile@ |
| ** @org.eclipse.app4mc.amalthea.validations.standard.AmaltheaProfile@ |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.inchron.InchronConstraintsProfile@<br/> |
| **Constraints Validations (INCHRON)** |
| * Validations: |
| ** Inchron-Constraints-LoadRequirementMissingResource (ERROR - CPUPercentageRequirementLimit) |
| *** CPU load requirement must have hardware context |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.inchron.InchronHWProfile@<br/> |
| **Hardware Validations (INCHRON)** |
| * Validations: |
| ** AM-HW-Port-BitWidth (ERROR - HwPort) |
| *** Bitwidth should be greater than zero |
| ** Inchron-HW-Memory-PortTypeResponder (ERROR - Memory) |
| *** HW ports of memory should be of type responder |
| ** Inchron-HW-PU-PortTypeInitiator (ERROR - ProcessingUnit) |
| *** HW ports of processing Unit should be of type initiator |
| ** Inchron-HWModule-InconsistentPortWidths (ERROR - HwModule) |
| *** HW Module cannot have ports with unequal bitwidth |
| ** Inchron-HWModule-MissingClockReference (ERROR - HwModule) |
| *** HW Module must have 'Frequency Domain' reference |
| * Profiles: |
| ** @org.eclipse.app4mc.amalthea.validations.standard.HardwareProfile@ |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.inchron.InchronOsProfile@<br/> |
| **Operating Systems Validations (INCHRON)** |
| * Validations: |
| ** Inchron-OS-PU-Allocation-MustBeDisjunct (ERROR - OperatingSystem) |
| *** OS Scheduler to core mapping must be distinct |
| ** Inchron-OS-Scheduler-Allocation-DifferentCPU (ERROR - Scheduler) |
| *** OS Task scheduler should not be allocated to more than one HwStructure |
| ** Inchron-OS-UserSpecificSchedulerCheck (ERROR - Amalthea) |
| *** User specific task scheduler needs at least one task allocation |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.inchron.InchronSoftwareProfile@<br/> |
| **Software Validations (INCHRON)** |
| * Validations: |
| ** Inchron-SW-Runnable-MustHaveActivityGraph (ERROR - Runnable) |
| *** Runnable must have at least one ActivityGraph |
| ** Inchron-SW-Runnable-NotAllocated-DifferentOS (ERROR - Runnable) |
| *** Runnable cannot be scheduled by more than one OS |
| ** Inchron-SW-RunnableAllocation-Present (ERROR - RunnableAllocation) |
| *** Runnable allocation is not supported |
| ** Inchron-SW-Task-EnforcedMigrationCheck (ERROR - Task) |
| *** Invalid Enforced Migration of a task to a task Scheduler |
| ** Inchron-SW-Task-MustHaveActivityGraph (ERROR - Task) |
| *** Task must have atleast one ActivityGraph |
| ** Inchron-SW-Task-NotAllocated-DifferentSchedulers (ERROR - Task) |
| *** Task cannot be scheduled by more than one OS |
| * Profiles: |
| ** @org.eclipse.app4mc.amalthea.validations.standard.SoftwareProfile@ |
| p{padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px}. @org.eclipse.app4mc.amalthea.validations.inchron.InchronStimuliProfile@<br/> |
| **Stimuli Validations (INCHRON)** |
| * Validations: |
| ** Inchron-Stimuli-TypeCheck (ERROR - Stimulus) |
| *** Unsupported stimuli types |