HRT-HOOD Specification used. in OBOSS-II. TERMA Doc. no.: TERMA/69/OBOSS-II/TN-008 Date: Issue: 1 Revision: 1
|
|
- Noreen Mosley
- 5 years ago
- Views:
Transcription
1 HRT-HOOD Specification used in OBOSS-II TERMA Doc. no.: TERMA/69/OBOSS-II/TN-008 Date: Issue: 1 Revision: 1 Distribution: ESTEC, TERMA Prepared by: Morten Rytter Nielsen Approved by: Jan Storbank Pedersen Authorised by: Gert Caspersen
2 ii
3 The intellectual property right of this document is vested in TERMA Elektronik AS. iii
4 Document Change Record Issue Date Change 1.d Draft issue of document Document Status Sheet Page Issue i vi iv
5 Table of Contents 1 Introduction Scope Documents Applicable Documents Reference Documents The Used Programming Model 3 4 The Used HRT-HOOD Specification Model HRT-HOOD Specification Method Semantics of HRT-HOOD Specification Specification of Operations Related to Elaboration Cyclic Objects Protected Objects Sporadic Objects PIO Objects Generic Instantiations HRT-HOOD Design Decisions HRT-HOOD Class Objects and Ada Generic Packages Provided Interface Combined Objects Protected and Cyclic objects Types of the Operations Data Flows Exception Flows Mapping to Ada General Generic Objects PIO Objects Sporadic Objects Ada Code Cyclic Objects Ada Code Protected Objects v
6 6 Conformance with HRT-Hood Design level: Design nonconformance with HRT-HOOD method as reported by the toolset Code level: Use of generic packages Sporadic Objects Cyclic Objects Protected Objects ESF and UCF ESF UCF vi
7 1 Introduction 1.1 Scope This document together with the HRT-HOOD design forms the specification of an instance of the OBOSS-II SW inspired by the functionality of the PROBA On-Board SW. The purpose of the HRT-HOOD design is to be able to make a schedulability analysis of an instantiation of the OBOSS-SW. This purpose is reflected in the choices made in this document about the design and should be kept in mind when reading it. In this document we do not use a strict terminology and might somewhere use Ada terms in describing the HRT-HOOD design. Stating e.g. that an HRT-HOOD object is instantiated means that the Ada package implementing the object is a generic package and this package is instantiated. 1
8 2 Documents 2.1 Applicable Documents 2.2 Reference Documents [Ada-83] Reference Manual for the Ada Programming Language, United States Department of Defense, ANSI/MIL-STD-1815A-1983, 1983 [Prog-model] Tool Support for the Construction of Statically Analysable Hard Real-Time Ada Systems, Tullio Vardanega, ESTEC, 1996 [PUS] Packet Utilisation Standard, ESA, PSS , Issue 1, 1994 [HRT-HOOD] HRT-HOOD: A Structured Design Method for Hard Real-Time Ada Systems, Volume 3, Alan Burns and Andy Wellings, Elsevier, 1995 [ERC32-temp] HRT-HoodNICE Code Extractor Templates for ERC32-based Aonix/Alsys Ada Targets, Delivery Note, Alessandro Paganone, Intecs Sistemi S.P.A., July 21, 1997 [Hybrid-task] Analysis of Hybrid Task Specification and Reimplementation, Morten Rytter Nielsen, Terma Elektronik, 1998 [ADD] Software System Handling Development for Spacecraft Data Handling & Control - Data Handling System Architectural Design Document, Morten Rytter Nielsen, Terma Elektronik,
9 3 The Used Programming Model The used programming model closely corresponds to the one suggested in [Prog-model]. 3
10 4 The Used HRT-HOOD Specification Model 4.1 HRT-HOOD Specification Method We refer to [HRT-HOOD] for information on the HRT-HOOD Specification Method. 4.2 Semantics of HRT-HOOD Specification Specification of Operations Related to Elaboration In the implementation of objects the two operations Initialize and Go may be present in each package implementing an object. Initialize does a post-elaboration of a package and Go starts the tasks in the package 1 and thus only after the Go operation has been called can Rendezvous take place with the tasks in a package. We have decided not to include the operations Initialize and Go in the HRT-HOOD design, because this would clutter the design and not serve any real purpose. If an object has a number of child objects, an extra object might have to be specified (with an Initialize and a Go operation which implements the parent object s operations Initialize and Go). This object s sole purpose would be to call the Initialize and Go operations in the other child objects. The object would be needed because only terminal objects can call operations in other objects in HRT-HOOD. Nevertheless we will sometimes in the implementation have an Ada package with the sole purpose to initialize and start other applications and services. It this case we will specify an object corresponding to this package. Thus we will have specified an object for each Ada package Cyclic Objects In the HRT-HOOD methodology the execution of a cyclic object is started either immediately it is created or after some defined time offset. This is based on the assumption that the system 1 Note that the Go operation is not equal to the event that starts the sporadic execution in a sporadic object but can be considered as being part of the elaboration 4
11 has some initial setup time (e.g. elaboration time) after which every object is created and ready to execute. The OBOSS SW uses another approach where after the system has been initialized objects with its own tread of control are started by requesting the execution of the operation Go in them. HRT-HOOD does not allow other operations than ATC type operations (i.e. ATC type operations are operations of one of the types ASATC 2, LSATC 3, TOER LSATC 4, HSATC 5 and TOER HSATC 6 ) to be present in cyclic objects. So either we make the Go operation of one of the ATC types or do not specify this operation in the specification (as is the case for Initialize and Go for sporadic objects). We have chosen not to specify the Go operations as they in some way are part of the initialization of the system and not used in a schedulability analysis Protected Objects If operations in protected objects calls operations in other protected objects that are of the type PSER then these operations will themselves be of type PSER Sporadic Objects The HRT-HOOD tool that we use does not allow operations in sporadic objects with other names that Start to be of type ASER 7. The design does not have any unconstrained operations in sporadic objects, therefore we have decided that ASER type of operations in sporadic objects will be displayed in the design as unconstrained PIO Objects If there are operations in the provided interface of a parent sporadic object which are not Initialize, Go or operations which are implemented by child objects operations then these operations will be located in an object prefixed with PIO 8. This is done to explicitly stress relationships between these operations and the other child and environment objects in the parent object. Another reason for doing this is that in HRT-HOOD all operations have to be either implemented-by another operation or located in a terminal object. A PIO object has exactly the same environment as its parent. Therefore we do not explicitly specify the environments of PIO objects in the specification. 2 Asynchronous, asynchronous transfer of control request 3 Loosely synchronised asynchronous transfer of control request 4 Timed-out loosely synchronised asynchronous transfer of control request 5 Highly synchronised asynchronous transfer of control request 6 Timed-out highly synchronised asynchronous transfer of control request 7 Asynchronous Execution Request 8 Provided Interface Object 5
12 The type of a PIO object is normally the same as the type as its parent 9. But for the objects where this is not the case we will specify the types of the PIO object s operations Generic Instantiations In the HRT-HOOD design we stress the relationship between an object and the objects that it depends on. Such a dependency can either come from a direct dependency corresponding to an Ada with clause or from an indirect dependency coming from generic actual parameters. The HRT-HOOD methodology does not distinguish between these different types of dependencies. But we would like to encapsulate this information in our design when operations are passed as actual generic parameters. For this purpose we specify a protected object with the name of the object that is instantiates (in the Ada implementation) but postfixed with Gen Act Param. This protected object has a provided interface corresponding to the operations used in the instantiations of the former object except that the type of the operations are unconstrained. Notice that because we have decided only to specify these objects when operations are present it might look as if an object in the design is self-contained even if it is dependent on generic actual parameters of the parent object. 4.3 HRT-HOOD Design Decisions HRT-HOOD Class Objects and Ada Generic Packages We do not have any class objects 10 in the design. We have though specified objects corresponding to instantiations of generic packages in Ada. The reason that we have not used class objects is that in the HRT-HOOD tool that we use, an instance of a class object can only have use relations to the project s 11 environment objects and not to objects specified inside the project. This is also partly why we have chosen to specify an instance of the OBOSS SW and not the generic SW itself (another reason is that the schedulability analysis demands knowledge on periods, number of instances of services etc which is only available for the instantiated SW). We prefix the object names of objects that correspond to instantiations of generic packages in Ada with The. An object might because it is an instance depend on objects that do not exist in the corresponding Ada package in the OBOSS SW. The instantiation might even depend on a generic parameter from the parent or grandparent. Because of the way we have chosen to specify generic depen- 9 Exceptions are e.g. cyclic objects with child objects that are protected. These are discussed in section HRT-HOOD class objects would correspond to generic packages in the Ada code 11 The HRT-HOOD tool from Intecs uses the term project to denote the outermost structuring mechanism which incorporates the top-level objects in a design 6
13 ASER Start S The_X Gen_Act_Param_Example Pr The_X_Gen_Act_Param E Env_Obj_1 Operation_1 Pr Y Operation_1 Figure 1 The parent dencies using Gen Act Param objects as described in section it is possible to deduce from where an actual generic operation come from as we will see in the following example. Example In figure 1 the object The X corresponds to an Ada package which is an instantiation of a generic package. The generic actual operation is Operation 1 which comes from the object Y. Because of the use relation between The X and The X Gen Act Param the latter object is visible to the childs of The X as can be seen in figure 2. Thus if the Ada package corresponding to The X Child is instantiated with the operation Operation 1 then The X Child Act Param Obj has a use relation to The X Gen Act Param and has an operation named Operation 1. This way of specifying the system allows the user to track the generic actual operations through the design (e.g. Operation 1) and see where the dependencies for the different instantiated objects come from (e.g. the object The X directly depends on the environment object Env Obj 1 and because of its generic instantiations it indirectly depends on the object Y). 7
14 S The_X S The_X_Child ASER Start E Env_Obj_1 Pr The_X_Gen_Act_Param ASER Start Pr The_X_Child_Gen_Act_Param Operation_1 Figure 2 The child 8
15 4.3.2 Provided Interface We have restricted the provided interface to only contain the provided operations and not the provided exceptions or constants. This follows the line of the specification used in generic instantiations. 4.4 Combined Objects In this section it will be discussed what type an object that includes objects of different types will have Protected and Cyclic objects In some objects (e.g. The ACS Monitor.The Event Reporter) we have both protected objects and cyclic objects. The protected objects might e.g. contain some data that the cyclic objects request with a given period. These data might be changed by objects located outside the combined object and thus the combined object s provided interface must have appropriate operations for this. The nature of the combined object is cyclic and thus the type of the object should be cyclic (or active). The operations provided by the interface of this combined object should ideally be protected operations but HRT-HOOD does not allow protected operations on cyclic objects. Alternatively we could make the combined object an active object. The disadvantage is that only active objects can include active objects, thus making the combined object active would propagate up through the design and make every object that includes it active. The combined object could be split up into two objects, one with the protected objects and one with the cyclic objects. This would though not follow the implementation of the system which is best described with only one object (i.e. corresponding to a single Ada package). We have chosen to make the combined object active. This allows the operations that are exported by the combined object and which are implemented by a START operation (ASER) in a sporadic object to also be of type ASER. Operations in the combined objects that are mapped to PSER operations 12 in child protected objects are given the type HSER 13. Note that this decomposition is legal in HRT-HOOD. 12 Protected Synchronous Execution Requests 13 Highly Synchronous Execution Request 9
16 4.5 Types of the Operations HRT-HOOD has a general decomposition scheme where every parent operation is implementedby a single child operation. This is contrary to HOOD where a parent operation can be implemented by several child operations by the use of an op control object. In HRT-HOOD an object can be introduced to allow a single operation to be decomposed into several operations (e.g. the operation in question is implemented-by a operation with the same name which is located in an object with this operation as the only provided interface. The use relationships for this object defines the dependencies for this operation). We will not specify such single objects just to stress the relations between single operations and their decomposition but will keep the decomposition on an object (i.e. Ada package) level in order to keep the overview of the design. Operation types will nevertheless propagate up through the operation levels based on the worst case operation type (i.e. the most restrictive type). E.g. if an operation uses a constrained operation of type PSER then the operation will itself be restrained to be of type PSER (or more restrictive). For the first increment of the design we will not specify functional activation constraints. But if we later decide to include these we will do it in the following way: If there is a functional activation constraint on an operation every operation that uses this operation may also have the same functional activation constraint. Rather than letting these functional activation constraints propagate up to the operations calling them, we define a functional activation constraint for each of the calling operations as references to the operations giving rise to the constraint (E.g. a reference in the ODS could be ref The Monitor Parser.Unparse Monitoring List Report). 4.6 Data Flows For the design we will not specify any data flow because it is not essential for the schedulability analysis. 4.7 Exception Flows For the design we will not specify any exception flow because it is not essential for the schedulability analysis. This corresponds to the decision on the details included in the provided interface made in section
17 5 Mapping to Ada 5.1 General We map the HRT-HOOD design to Ada and compile it using the Alsys ERC32 Ada Cross- Compiler (possibly using Alsys specific constructs and library routines). 5.2 Generic Objects As mentioned in section then objects in the HRT-HOOD design which corresponds to instantiated generic Ada packages are prefixed with The. This is however not reflected in the Ada implementation where Ada packages which are instantiated generic Ada packages might or might not be prefixed with The. 5.3 PIO Objects A single Ada package implements each object and its PIO object (if one such is specified). 5.4 Sporadic Objects In [HRT-HOOD] pg. 26 and pg. 27 the HRT-HOOD semantic for dealing with an ASER operation (Start) in sporadic objects is described. When an ASER is received while the sporadic object is in its enforced delay the ASER is not handled until the delay expires. Thus this indicates that the Ada implementation should handle an ASER request and then delay the rest of the minimum inter arrival interval before handling the next request. This implementation will not allow bursts of events to be handled within one period but will execute the first ASER operation in the given period and the rest in successive periods. This will ensure that the implementation behaves as indicated by the schedulability analysis but will though require some reasoning on how many ASER operations that are to be buffered for each of the sporadic tasks. The ASER operations must either be hard with a sufficiently late deadline, or soft. An alternative implementation of the sporadic task is to allow ASER operations to be executed as soon as the preceding operation in the given object is finished. This will allow bursts of 11
18 operations to be executed within one period of minimum inter arrival interval and thus makes the schedulability analysis a little more complicated. We have chosen the latter way of implementing sporadic objects Ada Code Sporadic objects in the design are implemented as instantiations of the generic package Sporadic Task. The specification part of this generic package is: with Task_Priority_Control; with Mission_Parameters; generic... My_Application_ID : in Mission_Parameters.APID; Sporadic_Event_Buffer_Size : in Positive := 1; -- No violation of minimum inter-arrival time is detected. -- Only Sporadic_Event_Buffer_Size number of calls are buffered. with procedure Sporadic_Operation (Sporadic_Parameter : in Sporadic_Operation_Parameter_Type); package Sporadic_Task is... --% Active Tasks: --> The_Sporadic_Task - Sporadic --% Passive Tasks: --> Event_Buffer.Queue_Task - Critical region ensuring atomic execution on --+ operations on queue of execution requests. procedure Go; --% Subprogram: -- Request execution of Sporadic_Operation using parameter Sporadic_Parameter. -- If Sporadic_Event_Buffer_Size requests are already buffered for execution, --+ request is ignored and result of operation is false. Otherwise request is --+ buffered, and result is true. --% Parameter Constraints: --> None --% Exceptions Raised: --> None function Start (Sporadic_Parameter : Sporadic_Operation_Parameter_Type) return Boolean; end Sporadic_Task; The body part is: with Task_Priority_Control; with Event_Reporting; with Queue; package body Sporadic_Task is... --% Package: -- Queue of execution requests. Has FIFO properties. package Event_Buffer is new Queue (Element_Type => Sporadic_Operation_Parameter_Type, Queue_Size => Sporadic_Event_Buffer_Size, 12
19 Queue_Task_Priority => Event_Buffer_Task_Priority); task type Sporadic_Task is --% Internal Task Type: -- Implementation of sporadic control structure using Ada tasks --% Task Entry: -- Release task implementing sporadic control structure. -- Introduced to eliminate elaboration errors. --% Parameter Constraints: --> None --% Exceptions Raised: --> None entry Go; end Sporadic_Task;... The_Sporadic_Task : Sporadic_Task; procedure Go is begin -- Go The_Sporadic_Task.Go; end Go; function Start (Sporadic_Parameter : return Boolean is Sporadic_Operation_Parameter_Type) begin -- Start return Event_Buffer.Deposit(Sporadic_Parameter); end Start; task body Sporadic_Task is Current_Event : Sporadic_Operation_Parameter_Type; begin -- Sporadic_Task -- Assign task priority dynamically. -- Required as actual generic parameters are not static, meaning --+ that they cannot be used in pragma Priority. Task_Priority_Control.Assign_Priority_To_Current_Task(Sporadic_Task_Priority); accept Go; Wait_For_Event_And_Execute_Operation: loop -- We will block on Event_Buffer.Extract until an execution request is --+ available. Current_Event := Event_Buffer.Extract; Sporadic_Operation(Current_Event); end loop Wait_For_Event_And_Execute_Operation; exception when others => -- Sporadic_Operation should never raise exception. -- If so, we report the event and die! Event_Reporting.Make_Exception_Report(Application => My_Application_ID); end Sporadic_Task; end Sporadic_Task; 13
20 5.5 Cyclic Objects This package uses the Alsys Real Time provided package for waiting until the time where the event (cyclic operation) is to be released (System Clock.Delay Until is a renaming of Real Time.Delay Until) Ada Code Cyclic objects in the design are implemented as instantiations of the generic package Cyclic Task. The specification part of this generic package is: with Task_Priority_Control; with Mission_Parameters; generic --% Generic Parameter Constraints: --> Cyclic_Operation - Must never propagate an exception out of the call. -- My_Application_ID is application ID for associated application process. -- Used for generation of event reports in case of unhandled exceptions --+ propagated out of Cyclic_Operation My_Application_ID : in Mission_Parameters.APID; -- Priority and stack size of cyclic object performing parameter monitoring Cyclic_Task_Priority : in Task_Priority_Control.Active_Task_Priority; Cyclic_Task_Stack_Size : in Natural; -- Period of cyclic task by which Cyclic_Operation is executed. Cyclic_Task_Period : in Duration; -- Operation to be executed by cyclic task. with procedure Cyclic_Operation; package Cyclic_Task is --% Library Package: -- Implementation of control structure corresponding to cyclic task as --+ defined in HRT-HOOD. --% Active Tasks: --> The_Cyclic_Task - Cyclic --% Passive Tasks: --> None procedure Go; end Cyclic_Task; The body part is: with Task_Priority_Control; with Event_Reporting; with System_Clock; package body Cyclic_Task is --% Library Package Body: -- Cyclic task has to be a task object, as stack size can only be --+ prescribed for task types. --% Limitations: -- None 14
21 -- Period of cyclic task expressed according to System_Clock. Period : constant System_Clock.Interval := System_Clock.To_Interval(Cyclic_Task_Period); task type Cyclic_Task is --% Internal Task Type: -- Implementation of cyclic control structure using Ada tasks --% Task Entry: -- Release cyclic execution. -- Introduced to eliminate elaboration errors. --% Parameter Constraints: --> None --% Exceptions Raised: --> None entry Go; end Cyclic_Task; Assign stack size according to generic actual parameter for Cyclic_Task Storage_Size use Cyclic_Task_Stack_Size; The_Cyclic_Task : Cyclic_Task; procedure Go is begin -- Go The_Cyclic_Task.Go; end Go; task body Cyclic_Task is --% Internal Task Body: -- Schedule all consecutive invocations of periodic operation --+ according to System_Clock.System_Start_Time. -- Uses absolute delay-until operations to avoid jitter potentially --+ introduced by relative delay. -- Absolute time for next invocation of operation. Next_Time : System_Clock.Time; -- Access infix operators on System_Clock.Time use System_Clock; begin -- Cyclic_Task -- Assign task priority dynamically. -- Required as actual generic parameters are not static, menaing that --+ they cannot be used in pragma Priority. Task_Priority_Control.Assign_Priority_To_Current_Task (Cyclic_Task_Priority); accept Go; Next_Time := System_Clock.System_Start_Time + Period; Cyclically_Execute_Operation: loop System_Clock.Delay_Until(Next_Time); 15
22 Next_Time := Next_Time + Period; Cyclic_Operation; end loop Cyclically_Execute_Operation; exception when others => -- Cyclic_Operation should never raise exception. -- If so, we report the event and die! Event_Reporting.Make_Exception_Report (Application => My_Application_ID); end Cyclic_Task; end Cyclic_Task; Protected Objects Protected objects can basically have two types of operations: PSER 14 and PAER 15. A PSER operation can also have a functional activation constraint or a timeout (TOER PSER in which case it must also have a functional activation constraint). Our mapping from HRT-HOOD protected objects to Ada does not give a protected object it s own tread of control so PAER type of operations is not possible in the Ada implementation and thus we doesn t use this type of operations in the HRT-HOOD design either. Alsys does not allow time-outs in operations in passive tasks so in the design we haven t specified any operations with time-outs. We map HRT-HOOD protected objects to Alsys Passive Tasks to minimize the overhead associated with calling an HRT-HOOD protected operation in a protected object (semaphores are not available in the Alsys compiler). The compiler does allow calls to passive tasks to take place inside a passive task (e.g. a call from inside a passive task to a function which uses a passive task is allowed). We have nevertheless avoided this construct in the design because it would require two context shifts where really only one is needed. Thus when the HRT-HOOD design has a constrained operation in a protected object that directly or indirectly calls a constrained operation in another protected object we use a special mapping to Ada where the highest level passive task (i.e. biggest critical region) is used to protect also the lower level passive task Protected Synchronous Execution Request 15 Protected Asynchronous Execution Request 16 This approach seems feasible in the applications we have but can of cause normally introduce significant overhead in systems 16
23 6 Conformance with HRT-Hood 6.1 Design level: Design nonconformance with HRT- HOOD method as reported by the toolset There are no problems with the design reported by the HRT-Hood toolset s HRT-Checker algorithm. 6.2 Code level: Use of generic packages As every Ada implementation of sporadic and cyclic object are instantiations of Ada generic packages. It suffices to argue that the code in the generic packages are HRT-Hood complient in order to argue HRT-Hood complience of all the actual sporadic and cyclic objects Sporadic Objects All sporadic objects in the ada implementation of the system are instantiations of the generic package shown in section As only ASER type of operations are used in the system (see section 4.4.1) the generic package only implements this type of operation on sporadic objects. The requirements for this type of operation is that the caller does not block on the request no matter if the called object is not ready to service the given request. This behaviour is ensured by Event Buffer which is a passive task with a FIFO buffer with sporadic invocation parameters. When the sporadic object is ready to service the next invokation/call it fetches the parameters from the Event Buffer and starts the handling of the event. Thus the called is never blocked and the implementation of the operation corresponds to the HRT-Hood ASAR type of operation Cyclic Objects All cyclic objects in the ada implementation of the system are instantiations of the generic package shown in section This implementation ensures that when the cyclic period was passed the corresponding task is envoked and starts execution. Ofcause higher priority level tasks may immediately preemptive this cyclic task and thus delay the cyclic operation until later Protected Objects HRT-Hood Protected objects are implemented using the Alsys passive task construct which ensures critical regions around resources and execution of code. PSER operations are thus mapped to an entry in the Alsys passive task and this ensures complience with the HRT-Hood method. 17
24 7 ESF and UCF This section very briefly describes that the purpose is with including the Execution Skeleton File (ESF) and the User Configuration File (UCF) in the design and what the entries in the two files mean. The complete ESF and UCF files are included in the appendix of the ADD. In the eletronic version of the (HRT-Hood tool) projects, ESF file parts have been included without timing characteristics in all Terminal Object Descriptions for the relevant objects. 7.1 ESF Every terminal object which is not a Gen Act Param object, a passive object or a object without an OBCS has an entry in the ESF. An entry might e.g. look like the following: PROTECTED Ground_IF.The_Ground_IF.The_Receiver.Event_Buffer.Queue_Task TYPE SYNCHRO ENTRY Deposit WCET 96, 0, 0 BARRIER WCET 6, 1, 0 ENTRY Extract WCET 76, 0, 0 END Ground_IF.The_Ground_IF.The_Receiver.Event_Buffer.Queue_Task which says that object Ground IF.The Ground IF.The Receiver.Event Buffer.Queue Task is a synchronised protected object (which in fact manages the envokation queue to sporadic objects). It has to operations Deposit and Extract. The operation Deposit has a worst-case execution time (WCET) of 96 clock cycles, 0 memory reads and 0 memory writes. The operation Extract might have a barrier which takes 6 clock cycles to evaluate and include one read from memory. 7.2 UCF Every active terminal object have additionally to the ESF an entry in the UCF. Active objects are either cyclic, sporadic or active, but we haven t any active terminal objects in the design. A UCF entry might look like: THREAD Packet_Router.Packet_Forwarder.The_Sporadic_Task CRITICALITY Hard MINIMUM 71_425_ packets per second DEADLINE 10_000_0 END Which states that the terminal sporadic object Packet Router.Packet Forwarder.The Sporadic Task has a hard deadline (which means that no overrun of deadline is allowed). Has a minimum inter-arrival time of clock cycles (10 Mhz / 14 packets). The deadline is the time that all activities in the object must be completed. 18
A Case Study for HRT-UML
A Case Study for HRT-UML Massimo D Alessandro, Silvia Mazzini, Francesco Donati Intecs HRT, Via L. Gereschi 32, I-56127 Pisa, Italy Silvia.Mazzini@pisa.intecs.it Abstract The Hard-Real-Time Unified Modelling
More informationSCOPE OF THE EVALUATION
SCOPE OF THE EVALUATION TEST THE TOOLSET WITH A SIGNIFICANT APPLICATION ( DATA HANDLING SW) PORTING THE APPLICATION FROM MIL-STD- 3-1750 TECHNOLOGY INTO ERC32 TECHNOLOGY INVESTIGATE THE ERC32 Ada PROGRAMMING
More informationAutomated Model-based Generation of Ravenscar-compliant Source Code
Automated Model-based Generation of Ravenscar-compliant Source Code Matteo Bordin, Tullio Vardanega Dept. of Pure and Applied Mathematics, University of Padua via G. Belzoni 7, I-35131 Padova, Italy mbordin@studenti.math.unipd.it,
More informationOutline of the talk. The egg and the hen Or, Which comes first: the problem or the solution? Challenges (2/6) Challenges (1/6) Recall of basics
The egg and the hen Or, Which comes first: the problem or the solution? Tullio Vardanega 2001-2002 Outline of the talk Challenges of embedded real-time systems Design for verifiability Problem modelling,
More informationThe Deadline Floor Protocol and Ada
The Deadline Floor Protocol and Ada Alan Burns and Andy Wellings University of York, UK. emails: alan.burns,andy.wellings@york.ac.uk Abstract This short paper summarises the current status of the proposal
More informationOSEK/VDX. Communication. Version January 29, 2003
Open Systems and the Corresponding Interfaces for Automotive Electronics OSEK/VDX Communication Version 3.0.1 January 29, 2003 This document is an official release and replaces all previously distributed
More informationReal-Time Systems and Programming Languages
Real-Time Systems and Programming Languages Ada, Real-Time Java and C/Real-Time POSIX Fourth Edition Alan Burns and Andy Wellings University of York * ADDISON-WESLEY An imprint of Pearson Education Harlow,
More informationA Framework for Real-Time Utilities for Ada 2005
A Framework for Real-Time Utilities for Ada 2005 A.J. Wellings and A. Burns Department of Computer Science University of York, UK {andy,burns}@cs.york.ac.uk Abstract Modernlarge real-time systems are becoming
More informationThe Ravenscar Tasking Profile for High Integrity Real-Time Programs
The Ravenscar Tasking Profile for High Integrity Real-Time Programs Brian Dobbing Aonix-Europe Ltd Partridge House, Newtown Road Henley-on-Thames RG9 1EN UK +44 1491 415016 brian@uk.aonix.com Alan Burns
More informationProgramming Languages for Real-Time Systems. LS 12, TU Dortmund
Programming Languages for Real-Time Systems Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 20 June 2016 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 41 References Slides are based on Prof. Wang Yi, Prof.
More informationMODELS OF DISTRIBUTED SYSTEMS
Distributed Systems Fö 2/3-1 Distributed Systems Fö 2/3-2 MODELS OF DISTRIBUTED SYSTEMS Basic Elements 1. Architectural Models 2. Interaction Models Resources in a distributed system are shared between
More informationImplementing a High-Integrity Executive using Ravenscar
Implementing a High-Integrity Executive using Ravenscar Neil Audsley, Alan Burns and Andy Wellings Real-Time Systems Research Group Department of Computer Science, University of York, UK Abstract This
More informationA Case Study in the Reuse of On-board Embedded Real-Time Software
A Case Study in the Reuse of On-board Embedded Real-Time Software Tullio Vardanega 1, Gert Caspersen 2, and Jan Storbank Pedersen 2 1 European Space Agency Research & Technology Centre, Keplerlaan 1, 2200
More informationMultimedia Systems 2011/2012
Multimedia Systems 2011/2012 System Architecture Prof. Dr. Paul Müller University of Kaiserslautern Department of Computer Science Integrated Communication Systems ICSY http://www.icsy.de Sitemap 2 Hardware
More informationElaboration The execution of declarations
Elaboration The execution of declarations Examples Elaboration of a variable declaration sets up space for that variable. Elaboration of a task variable creates, initializes, and runs the task. Elaboration
More informationResponse Time Analysis of Asynchronous Real-Time Systems
Response Time Analysis of Asynchronous Real-Time Systems Guillem Bernat Real-Time Systems Research Group Department of Computer Science University of York York, YO10 5DD, UK Technical Report: YCS-2002-340
More informationConcurrency. Lecture 14: Concurrency & exceptions. Why concurrent subprograms? Processes and threads. Design Issues for Concurrency.
Lecture 14: Concurrency & exceptions Concurrency Processes and threads Semaphores, monitors and message passing Exception handling Concurrency Is is often desirable or necessary to execute parts of programs
More informationReal-time HOOD. Analysis and Design of Embedded Systems and OO* Object-oriented Programming Jan Bendtsen Automation and Control
Real-time HOOD Analysis and Design of Embedded Systems and OO* Object-oriented Programming Jan Bendtsen Automation and Control Structure (slightly modified) OO & UML Java basics Java Polym. Java Events
More informationOperating Systems Comprehensive Exam. Fall Student ID # 10/31/2013
Operating Systems Comprehensive Exam Fall 2013 Student ID # 10/31/2013 You must complete all of Section I You must complete two of the problems in Section II If you need more space to answer a question,
More information8: Scheduling. Scheduling. Mark Handley
8: Scheduling Mark Handley Scheduling On a multiprocessing system, more than one process may be available to run. The task of deciding which process to run next is called scheduling, and is performed by
More informationThe Ravenscar Tasking Profile for High Integrity Real-Time Programs
Aonix The Ravenscar Tasking Profile for High Integrity Real-Time Programs A Paper Presented at Reliable Software Technologies -- Ada-Europe 98 Uppsala, Sweden, June 1998 The Ravenscar Tasking Profile for
More informationAirTight: A Resilient Wireless Communication Protocol for Mixed- Criticality Systems
AirTight: A Resilient Wireless Communication Protocol for Mixed- Criticality Systems Alan Burns, James Harbin, Leandro Indrusiak, Iain Bate, Robert Davis and David Griffin Real-Time Systems Research Group
More informationSuggestions for Stream Based Parallel Systems in Ada
Suggestions for Stream Based Parallel Systems in Ada M. Ward * and N. C. Audsley Real Time Systems Group University of York York, England (mward,neil)@cs.york.ac.uk Abstract Ada provides good support for
More informationDocument downloaded from: http://hdl.handle.net/10251/38978 This paper must be cited as: Sáez Barona, S.; Crespo, A. (2013). Deferred setting of scheduling attributes in Ada 2012. Ada Letters. 33(1):93-100.
More informationIntroduction to Real-time Systems. Advanced Operating Systems (M) Lecture 2
Introduction to Real-time Systems Advanced Operating Systems (M) Lecture 2 Introduction to Real-time Systems Real-time systems deliver services while meeting some timing constraints Not necessarily fast,
More informationDISTRIBUTED REAL-TIME SYSTEMS
Distributed Systems Fö 11/12-1 Distributed Systems Fö 11/12-2 DISTRIBUTED REAL-TIME SYSTEMS What is a Real-Time System? 1. What is a Real-Time System? 2. Distributed Real Time Systems 3. Predictability
More informationAI Non-Preemptive Dispatching. A new dispatching policy is defined for the non-preemptive execution of Ada tasks.
AI-00298 Non-Preemptive Dispatching!standard D.2.4 (00) 04-05-24 AI95-00298/05!reference AI95-00321!class amendment 02-06-01!status Amendment 200Y 03-07-02!status WG9 Approved 04-06-18!status ARG Approved
More informationConcurrent activities in daily life. Real world exposed programs. Scheduling of programs. Tasks in engine system. Engine system
Real world exposed programs Programs written to interact with the real world, outside the computer Programs handle input and output of data in pace matching the real world processes Necessitates ability
More informationOn 17 June 2006, the editor provided the following list via an to the convener:
ISO/IEC JTC 1/SC 22/WG 9 N 471 List of AIs Approved per Resolution 50-8 James W. Moore, Convener 23 June 2006 Resolution 50-8 reads as follows: "Noting WG9's approval of the amendment to ISO/IEC 8652 and
More informationEmbedded Software Programming
Embedded Software Programming Computer Science & Engineering Department Arizona State University Tempe, AZ 85287 Dr. Yann-Hang Lee yhlee@asu.edu (480) 727-7507 Event and Time-Driven Threads taskspawn (name,
More informationA Predictable RTOS. Mantis Cheng Department of Computer Science University of Victoria
A Predictable RTOS Mantis Cheng Department of Computer Science University of Victoria Outline I. Analysis of Timeliness Requirements II. Analysis of IO Requirements III. Time in Scheduling IV. IO in Scheduling
More informationMODELS OF DISTRIBUTED SYSTEMS
Distributed Systems Fö 2/3-1 Distributed Systems Fö 2/3-2 MODELS OF DISTRIBUTED SYSTEMS Basic Elements 1. Architectural Models 2. Interaction Models Resources in a distributed system are shared between
More informationEnsuring Schedulability of Spacecraft Flight Software
Ensuring Schedulability of Spacecraft Flight Software Flight Software Workshop 7-9 November 2012 Marek Prochazka & Jorge Lopez Trescastro European Space Agency OUTLINE Introduction Current approach to
More informationSWE 760 Lecture 1: Introduction to Analysis & Design of Real-Time Embedded Systems
SWE 760 Lecture 1: Introduction to Analysis & Design of Real-Time Embedded Systems Hassan Gomaa References: H. Gomaa, Chapters 1, 2, 3 - Real-Time Software Design for Embedded Systems, Cambridge University
More informationResource management. Real-Time Systems. Resource management. Resource management
Real-Time Systems Specification Implementation Verification Mutual exclusion is a general problem that exists at several levels in a real-time system. Shared resources internal to the the run-time system:
More informationWorkload model /2. Workload model /1. Protected objects /1. Ada code patterns for provable real-time programming. UniPD - LM Informatica /2015
Ada code patterns for provable real-time programming Academic Year 2015/16 Master Degree in Computer Science University of Padova Tullio Vardanega Workload model /2 Task communication Shared variables
More informationConcurrent & Distributed Systems Supervision Exercises
Concurrent & Distributed Systems Supervision Exercises Stephen Kell Stephen.Kell@cl.cam.ac.uk November 9, 2009 These exercises are intended to cover all the main points of understanding in the lecture
More informationFIXED PRIORITY SCHEDULING ANALYSIS OF THE POWERTRAIN MANAGEMENT APPLICATION EXAMPLE USING THE SCHEDULITE TOOL
FIXED PRIORITY SCHEDULING ANALYSIS OF THE POWERTRAIN MANAGEMENT APPLICATION EXAMPLE USING THE SCHEDULITE TOOL Jens Larsson t91jla@docs.uu.se Technical Report ASTEC 97/03 DoCS 97/82 Department of Computer
More informationAPM. Object Monitor. Object Lab. Richard Hayton & Scarlet Schwiderski
APM POSEIDON HOUSE CASTLE PARK CAMBRIDGE CB3 0RD UNITED KINGDOM +44 1223 515010 Fax +44 1223 359779 Email: apm@ansa.co.uk URL: http://www.ansa.co.uk Object Lab Object Monitor Richard Hayton & Scarlet Schwiderski
More informationAUTOBEST: A United AUTOSAR-OS And ARINC 653 Kernel. Alexander Züpke, Marc Bommert, Daniel Lohmann
AUTOBEST: A United AUTOSAR-OS And ARINC 653 Kernel Alexander Züpke, Marc Bommert, Daniel Lohmann alexander.zuepke@hs-rm.de, marc.bommert@hs-rm.de, lohmann@cs.fau.de Motivation Automotive and Avionic industry
More informationReal-Time Systems. Lecture #4. Professor Jan Jonsson. Department of Computer Science and Engineering Chalmers University of Technology
Real-Time Systems Lecture #4 Professor Jan Jonsson Department of Computer Science and Engineering Chalmers University of Technology Real-Time Systems Specification Resource management Mutual exclusion
More information2. Introduction to Software for Embedded Systems
2. Introduction to Software for Embedded Systems Lothar Thiele ETH Zurich, Switzerland 2-1 Contents of Lectures (Lothar Thiele) 1. Introduction to Embedded System Design 2. Software for Embedded Systems
More informationLabVIEW programming II
FYS3240 PC-based instrumentation and microcontrollers LabVIEW programming II Spring 2016 Lecture #3 Bekkeng 18.01.2016 Dataflow programming With a dataflow model, nodes on a block diagram are connected
More informationRTC: Language Support for Real-Time Concurrency
RTC: Language Support for Real-Time Concurrency Insup Lee, Susan Davidson, and Victor Wolfe 1 Introduction The RTC (Real-Time Concurrency) programming concepts and language constructs for expressing timing
More informationAnalyzing Real-Time Systems
Analyzing Real-Time Systems Reference: Burns and Wellings, Real-Time Systems and Programming Languages 17-654/17-754: Analysis of Software Artifacts Jonathan Aldrich Real-Time Systems Definition Any system
More informationMicrokernel/OS and Real-Time Scheduling
Chapter 12 Microkernel/OS and Real-Time Scheduling Hongwei Zhang http://www.cs.wayne.edu/~hzhang/ Ack.: this lecture is prepared in part based on slides of Lee, Sangiovanni-Vincentelli, Seshia. Outline
More informationCOMMUNICATION IN DISTRIBUTED SYSTEMS
Distributed Systems Fö 3-1 Distributed Systems Fö 3-2 COMMUNICATION IN DISTRIBUTED SYSTEMS Communication Models and their Layered Implementation 1. Communication System: Layered Implementation 2. Network
More informationOperating Systems Comprehensive Exam. Spring Student ID # 3/16/2006
Operating Systems Comprehensive Exam Spring 2006 Student ID # 3/16/2006 You must complete all of part I (60%) You must complete two of the three sections in part II (20% each) In Part I, circle or select
More informationChapter Machine instruction level 2. High-level language statement level 3. Unit level 4. Program level
Concurrency can occur at four levels: 1. Machine instruction level 2. High-level language statement level 3. Unit level 4. Program level Because there are no language issues in instruction- and program-level
More informationTransforming Ada Serving Tasks Into Protected Objects
Transforming Ada Serving Tasks Into Protected Objects Bangqing Li Baowen Xu Huiming Yu Department of Computer Science & Engineering Department of Computer Science Southeast University North Carolina A&T
More informationOPERATING SYSTEMS CS3502 Spring Processor Scheduling. Chapter 5
OPERATING SYSTEMS CS3502 Spring 2018 Processor Scheduling Chapter 5 Goals of Processor Scheduling Scheduling is the sharing of the CPU among the processes in the ready queue The critical activities are:
More informationInvestigation of System Timing Concerns in Embedded Systems: Tool-based Analysis of AADL Models
Investigation of System Timing Concerns in Embedded Systems: Tool-based Analysis of AADL Models Peter Feiler Software Engineering Institute phf@sei.cmu.edu 412-268-7790 2004 by Carnegie Mellon University
More informationAADL Simulation and Performance Analysis in SystemC
Fourth IEEE International workshop UML and AADL 2nd June 2009 Potsdam, Germany Roberto Varona Gómez Eugenio Villar {roberto, evillar}@teisa.unican.es University of Cantabria, Santander, Spain. This work
More informationReference Model and Scheduling Policies for Real-Time Systems
ESG Seminar p.1/42 Reference Model and Scheduling Policies for Real-Time Systems Mayank Agarwal and Ankit Mathur Dept. of Computer Science and Engineering, Indian Institute of Technology Delhi ESG Seminar
More informationUsing the AADL for mission critical software development paper presented at the ERTS conference, Toulouse, 21 January 2004
Using the AADL for mission critical software development paper presented at the ERTS conference, Toulouse, 21 January 2004 Pierre Dissaux, pierre.dissaux@tni-world.com TNI-Europe Limited Mountbatten Court,
More informationCS5314 RESEARCH PAPER ON PROGRAMMING LANGUAGES
ORCA LANGUAGE ABSTRACT Microprocessor based shared-memory multiprocessors are becoming widely available and promise to provide cost-effective high performance computing. Small-scale sharedmemory multiprocessors
More informationIntroduction to Real-Time Communications. Real-Time and Embedded Systems (M) Lecture 15
Introduction to Real-Time Communications Real-Time and Embedded Systems (M) Lecture 15 Lecture Outline Modelling real-time communications Traffic and network models Properties of networks Throughput, delay
More informationReal-Time and Concurrent Programming Lecture 4 (F4): Monitors: synchronized, wait and notify
http://cs.lth.se/eda040 Real-Time and Concurrent Programming Lecture 4 (F4): Monitors: synchronized, wait and notify Klas Nilsson 2016-09-20 http://cs.lth.se/eda040 F4: Monitors: synchronized, wait and
More informationTime Triggered and Event Triggered; Off-line Scheduling
Time Triggered and Event Triggered; Off-line Scheduling Real-Time Architectures -TUe Gerhard Fohler 2004 Mälardalen University, Sweden gerhard.fohler@mdh.se Real-time: TT and ET Gerhard Fohler 2004 1 Activation
More informationException handling. Exceptions can be created by the hardware or by software: Examples. Printer out of paper End of page Divide by 0
Exception handling Events in a program sometimes occur at unpredictable times, I.e., apparently randomly. That is, the occurrence is an exception to the normal sequencing of events. Such events are called
More informationThe Real-time Specification for Java
The Real-time Specification for Java Roadmap Overview of the RTSJ Memory Management Clocks and Time Scheduling and Schedulable Objects Asynchronous Events and Handlers Real-Time Threads Asynchronous Transfer
More informationTesting Techniques for Ada 95
SOFTWARE QUALITY ASSURANCE TOOLS & TECHNOLOGY PROFESSIONAL SERVICES ACADEMY P a g e 1 White Paper Testing Techniques for Ada 95 The Ada language is widely accepted as the language of choice for the implementation
More informationSEEKING THE ACTUAL REASONS FOR THE "NEW PARADIGM" IN THE AREA OF IS ANALYSIS 2. GENERAL CHARACTERISTICS OF THE "STRUCTURED APPROACH" IN IS DEVELOPMENT
SEEKING THE ACTUAL REASONS FOR THE "NEW PARADIGM" IN THE AREA OF IS ANALYSIS Václav Řepa Prague University of Economics, W.Churchill sq. 4, 130 00 Praha 3, Czech Republic E-mail: REPA@VSE.CZ 1. INTRODUCTION
More informationAn Approach to Task Attribute Assignment for Uniprocessor Systems
An Approach to ttribute Assignment for Uniprocessor Systems I. Bate and A. Burns Real-Time Systems Research Group Department of Computer Science University of York York, United Kingdom e-mail: fijb,burnsg@cs.york.ac.uk
More informationNotes on the Exam. Question 1. Today. Comp 104:Operating Systems Concepts 11/05/2015. Revision Lectures (separate questions and answers)
Comp 104:Operating Systems Concepts Revision Lectures (separate questions and answers) Today Here are a sample of questions that could appear in the exam Please LET ME KNOW if there are particular subjects
More informationChapter 13 Topics. Introduction. Introduction
Chapter 13 Topics Introduction Introduction to Subprogram-Level Concurrency Semaphores Monitors Java Threads C# Threads Statement-Level Concurrency Copyright 2006 Pearson Addison-Wesley. All rights reserved.
More informationSemantics of Vector Loops
Doc No: N3561 Date: 2013-03-15 Authors: Robert Geva email: robert.geva@intel.com Clark Nelson email: clark.nelson@intel.com Intel Corp. Semantics of Vector Loops Introduction In the SG1 conference call
More informationMidterm Exam Amy Murphy 6 March 2002
University of Rochester Midterm Exam Amy Murphy 6 March 2002 Computer Systems (CSC2/456) Read before beginning: Please write clearly. Illegible answers cannot be graded. Be sure to identify all of your
More informationReal-time Support in Operating Systems
Real-time Support in Operating Systems Colin Perkins teaching/2003-2004/rtes4/lecture11.pdf Lecture Outline Overview of the rest of the module Real-time support in operating systems Overview of concepts
More informationMultitasking / Multithreading system Supports multiple tasks
Tasks and Intertask Communication Introduction Multitasking / Multithreading system Supports multiple tasks As we ve noted Important job in multitasking system Exchanging data between tasks Synchronizing
More informationinfix expressions (review)
Outline infix, prefix, and postfix expressions queues queue interface queue applications queue implementation: array queue queue implementation: linked queue application of queues and stacks: data structure
More information6.1 Motivation. Fixed Priorities. 6.2 Context Switch. Real-time is about predictability, i.e. guarantees. Real-Time Systems
Real-Time Systems Summer term 2017 6.1 Motivation 6.1 Motivation Real-Time Systems 6 th Chapter Practical Considerations Jafar Akhundov, M.Sc. Professur Betriebssysteme Real-time is about predictability,
More informationComp 204: Computer Systems and Their Implementation. Lecture 25a: Revision Lectures (separate questions and answers)
Comp 204: Computer Systems and Their Implementation Lecture 25a: Revision Lectures (separate questions and answers) 1 Today Here are a sample of questions that could appear in the exam Please LET ME KNOW
More informationLabVIEW programming II
FYS3240-4240 Data acquisition & control LabVIEW programming II Spring 2018 Lecture #3 Bekkeng 14.01.2018 Dataflow programming With a dataflow model, nodes on a block diagram are connected to one another
More informationTDDD56 Multicore and GPU computing Lab 2: Non-blocking data structures
TDDD56 Multicore and GPU computing Lab 2: Non-blocking data structures August Ernstsson, Nicolas Melot august.ernstsson@liu.se November 2, 2017 1 Introduction The protection of shared data structures against
More informationProgramming Languages Third Edition. Chapter 9 Control I Expressions and Statements
Programming Languages Third Edition Chapter 9 Control I Expressions and Statements Objectives Understand expressions Understand conditional statements and guards Understand loops and variation on WHILE
More informationExecutable AADL. Real Time Simulation of AADL Models. Pierre Dissaux 1, Olivier Marc 2.
Executable AADL Real Time Simulation of AADL Models Pierre Dissaux 1, Olivier Marc 2 1 Ellidiss Technologies, Brest, France. 2 Virtualys, Brest, France. pierre.dissaux@ellidiss.com olivier.marc@virtualys.com
More informationKernel Korner AEM: A Scalable and Native Event Mechanism for Linux
Kernel Korner AEM: A Scalable and Native Event Mechanism for Linux Give your application the ability to register callbacks with the kernel. by Frédéric Rossi In a previous article [ An Event Mechanism
More informationOperating Systems Design Fall 2010 Exam 1 Review. Paul Krzyzanowski
Operating Systems Design Fall 2010 Exam 1 Review Paul Krzyzanowski pxk@cs.rutgers.edu 1 Question 1 To a programmer, a system call looks just like a function call. Explain the difference in the underlying
More informationProcesses (Tasks) and operating systems. Why multiple processes? Example: engine control
Processes (Tasks) and operating systems Motivation for processes. The process abstraction. Context switching. Multitasking. Processes and UML. Operating systems Why multiple processes? Processes help us
More informationOPERATING SYSTEM CONCEPTS UNDERSTAND!!! IMPLEMENT!!! ANALYZE!!!
OPERATING SYSTEM CONCEPTS UNDERSTAND!!! IMPLEMENT!!! Processor Management Memory Management IO Management File Management Multiprogramming Protection and Security Network Management UNDERSTAND!!! IMPLEMENT!!!
More informationAda and Real-Time. Prof. Lars Asplund. Mälardalen University, Computer Science
16.070 Ada and Real-Time Prof. Lars Asplund lars.asplund@mdh.se 1 Mälardalen University, Computer Science History 2 Software Engineering first conference -69 Strawman -> Steelman Ada (ANSI standard 1983);
More informationQuestion 1. Notes on the Exam. Today. Comp 104: Operating Systems Concepts 11/05/2015. Revision Lectures
Comp 104: Operating Systems Concepts Revision Lectures Today Here are a sample of questions that could appear in the exam Please LET ME KNOW if there are particular subjects you want to know about??? 1
More informationIntroduction to Embedded Systems
Introduction to Embedded Systems Sanjit A. Seshia UC Berkeley EECS 9/9A Fall 0 008-0: E. A. Lee, A. L. Sangiovanni-Vincentelli, S. A. Seshia. All rights reserved. Chapter : Operating Systems, Microkernels,
More informationThe AADL Behavioural annex 1
1 IRIT-CNRS ; Université de Toulouse, France Ellidis Software France-UK SEI CMU USA Wednesday March 24 th 2010 OXFORD UML-AADL 2010 Panel 1 This work was partly supported by the French AESE project Topcased
More informationCSE398: Network Systems Design
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University February 23, 2005 Outline
More informationScheduling Algorithm and Analysis
Scheduling Algorithm and Analysis Model and Cyclic Scheduling (Module 27) Yann-Hang Lee Arizona State University yhlee@asu.edu (480) 727-7507 Summer 2014 Task Scheduling Schedule: to determine which task
More informationCombined Scheduling of Time-Triggered and Priority-Based Task Sets in Ravenscar
Combined Scheduling of Time-Triggered and Priority-Based Task Sets in Ravenscar Jorge Real, Sergio Sáez, Alfons Crespo Universitat Politècnica de València, Spain 23 rd International Conference on Reliable
More informationMixed Criticality Scheduling in Time-Triggered Legacy Systems
Mixed Criticality Scheduling in Time-Triggered Legacy Systems Jens Theis and Gerhard Fohler Technische Universität Kaiserslautern, Germany Email: {jtheis,fohler}@eit.uni-kl.de Abstract Research on mixed
More informationOverview. Sporadic tasks. Recall. Aperiodic tasks. Real-time Systems D0003E 2/26/2009. Loosening D = T. Aperiodic tasks. Response-time analysis
Overview Real-time Systems D0003E Lecture 11: Priority inversion Burns/Wellings ch. 13 (except 13.12) Aperiodic tasks Response time analysis Blocking Priority inversion Priority inheritance Priority ceiling
More informationTasks. Task Implementation and management
Tasks Task Implementation and management Tasks Vocab Absolute time - real world time Relative time - time referenced to some event Interval - any slice of time characterized by start & end times Duration
More informationComponent-Based Real-Time Design: Mapping HRT-HOOD to UML
Component-Based Real-Time Design: Mapping HRT-HOOD to UML T. Vardanega Università di Padova via G. Belzoni 7 I-35131 Padova, Italy tullio.vardanega@math.unipd.it M. Di Natale Scuola Superiore S.Anna viale
More information1995 Paper 10 Question 7
995 Paper 0 Question 7 Why are multiple buffers often used between producing and consuming processes? Describe the operation of a semaphore. What is the difference between a counting semaphore and a binary
More informationUsing Bound-T in HRT Mode
Bound-T timing analysis tool Using Bound-T in HRT Mode Tid rum Version 1 2005-04-06 Tidorum Ltd. Tid rum Tidorum Ltd www.tidorum.fi Tiirasaarentie 32 FI-00200 Helsinki Finland This document was written
More informationShared Memory Programming Models I
Shared Memory Programming Models I Peter Bastian / Stefan Lang Interdisciplinary Center for Scientific Computing (IWR) University of Heidelberg INF 368, Room 532 D-69120 Heidelberg phone: 06221/54-8264
More informationIntegrating OOP and Tasking The missing requeue
Integrating OOP and Tasking The missing requeue A.J. Wellings and A. Burns Department of Computer Science University of York, UK {andy,burns}@cs.york.ac.uk Abstract Ada 2005 has provided limited integration
More information9/21/17. Outline. Expression Evaluation and Control Flow. Arithmetic Expressions. Operators. Operators. Notation & Placement
Outline Expression Evaluation and Control Flow In Text: Chapter 6 Notation Operator evaluation order Operand evaluation order Overloaded operators Type conversions Short-circuit evaluation of conditions
More informationB. V. Patel Institute of Business Management, Computer &Information Technology, UTU
BCA-3 rd Semester 030010304-Fundamentals Of Operating Systems Unit: 1 Introduction Short Answer Questions : 1. State two ways of process communication. 2. State any two uses of operating system according
More informationChapter 13. Concurrency ISBN
Chapter 13 Concurrency ISBN 0-321-49362-1 Chapter 13 Topics Introduction Introduction to Subprogram-Level Concurrency Semaphores Monitors Message Passing Ada Support for Concurrency Java Threads C# Threads
More information