[aadl-modeling]: Questions regarding subprograms/Input_/Output_Time/Paragraph 9.2.6 (57) and found errors during reading AS5506B

Thomas Driessen thomas.driessen at ds-lab.org
Mon Jan 30 08:21:28 EST 2017


Hi,

I just wanted to ask if there's anything new regarding my questions.
Any advice is highly appreciated :)

Kind regards,
Thomas

------ Originalnachricht ------
Von: "Thomas Driessen" <thomas.driessen at ds-lab.org>
An: "AADL Modeling" <aadl-modeling at lists.sei.cmu.edu>
Gesendet: 19.01.2017 16:38:58
Betreff: Questions regarding subprograms/Input_/Output_Time/Paragraph 
9.2.6 (57) and found errors during reading AS5506B

>Hello,
>
>I was reading the standard AS5506B for the last weeks and stumbled upon 
>some parts that are still not clear to me. Besides, I found some typo 
>errors and inconsistencies that I listed below, where I'm sometimes not 
>sure which part of the standard is right for a given fact.
>
>But first my questions:
>
>Regarding subprograms:
>I understand a subprogram as a method or a function which is some text 
>in any given programming language.
>According to the standard subprograms may contain other subprogram 
>subcomponents. As I'm mainly programming in Java I'm not familiar with 
>a concept where a method can contain another method. So if I have a 
>subprogram A containing another subprogram B does that mean that I'm 
>making a method call from within A to B? Or is there another semantic 
>meeaning for this containment relationship?
>
>Regarding Input_Time/Output_Time:
>As I get it I can use those two properties to define when exactly Input 
>is frozen and Output ist sent [9.2.4 (30)/(31)]. Those properties 
>actually allow me to define any given point in time, as they only take 
>one of the lifecycle events of a thread as starting point (dispatch, 
>start, completion, deadline) and a Offset that can also be negative.  
>Doesn't that conflict with 9.2 (8), which states that "The inputs and 
>outputs can be specified to occur at dispatch, any time during 
>execution, at completion, or at deadline." and thus is restricting 
>input/output to either be
>dispatch with no offsetdeadline with no offsetstart with an offset 
>between 0 .. (completion - start)completion with an offset between 0 .. 
>(start - completion)
>where we assume that start <= completion?
>
>Regarding 9.2.6 (57):
>I don't understand this paragraph.
>Can you give me an example for what case this paragraph is needed?
>
>Below you can find a List of typo errors and inconsistencies I found 
>during my reading.
>
>Kind regards,
>Thomas
>Typo Errors 1.6 (7): "for which another hybrid semantics diagram with 
>an identically labeled oblong box" - this sentence is doubled 5.2 
>(C2): "calss" should be "calls"? 7.1 (L4): This paragraph talks about 
>systems, but (L4) about thread groups. I'm not sure if that's 
>intended? 8.3.2 (19): "This allows users to specify that a subset of 
>ports to provide input." - remove "that"? 8.3.2 (23): "The input of 
>other ports that can trigger dispatch is not frozen." - this sentence 
>is doubled 8.4 (8): "Each provides subprogram access feature of a 
>thread that represents an entrypoint to a remotely callable code 
>sequence in the source text." - remove "that"? 9 (1): this point 
>exists twice! 9.2.5 (38): "sampling, oversampling, and undersampling 
>may occur nondeterministically due concurrency and preemption" - "... 
>due TO..."? I'm not sure about this one A.2 Synchronized Component: 
>"In other words, the thread afects the hyperperiod for mode switching 
>of the property value is true." - "if" instead of "of"? A.2 Resumption 
>Policy: "applies to" contains "system" twice A.9 (10): "... who many 
>elements ..." - should be "how"? Page 98: In my copy this page is 
>empty.Inconsistencies 5.1 (3) talks about data being local and thus 
>not shareable if defined within a thread or subprogram. 5.1 (15) 
>instead talks only about data in subprograms being local and thus not 
>shareable. Which one is right? 8.3.2 (27): The first part mentions 
>"Dispatch" to be a valid option for "Output Time" but doesn't include 
>it in the following list. Is "Dispatch" a valid value or not? 5.4 (6) 
>& 8.4 (8): 5.4 (6) talks about calls to subprograms dispatching threads 
>and 8.4 (8) about calls to subprograms requesting thread dispatch. Are 
>those semantically equivalent? What if the subprogram is within a 
>periodic thread? Is the call handled the next time the thread 
>dispatches? 9.2 (8): It states that "The inputs and outputs can be 
>specified to occur at dispatch, any time during execution, at 
>completion, or at deadline.", but I'm technically able to dene Input 
>and Output to happen at any time between Dispatch and Deadline via 
>Output Time and Input Time. Shouldn't then Output Time/Input Time 
>somehow be restricted in order to this paragraph? 9.2 (L12) & 9.2 
>(L15): 9.2 (L12) is unnecessary because of 9.2 (L15). A.1 Allowed 
>Connection Type: can be applied to bus or device, but the explaining 
>text only talks about its eect on busses?  Is it intended that some 
>properties do not define a default, but in their textual explanation a 
>default is given? For example A.1 Preemptive Scheduler: the text 
>states: "By default, if this property is not specfiied, the processor 
>owns a preemptive scheduler.", which I would interpret as default value 
>= true. A.2 Dispatch Able: Within the textual explanation Zero Compute 
>Execution Time is mentioned, which I couldn't find anywhere. A.2 
>Subprogram Call Type: "In case of a semi-synchronous call the user of 
>the result is may be suspended until the result is available." - "is" 
>or "may"? A.3 Deadline: The default is per definition "Period" which 
>is only mandatory for threads with a periodic dispatch. What if a 
>thread is sporadic or aperiodic and no Period is given? A.4 Latency: 
>Definition states that its type is "Time Range", explanatory text 
>below states, that its type is "Time. Which one is right?" A.4 Queue 
>Size: the explanatory text below states that this property "specifies 
>the size of the queue for [...] a data component being shared via data 
>access", but the "applies to" section doesn't contain "data". Which one 
>is right? A.4 Transmission Type: The "applies to" section only 
>contains "data port", but the explanatory text below also talks about 
>event ports and event data ports. Which one is right? A.6 Activate 
>Entrypoint Call Sequence: The "applies to" section only contains 
>"thread" and "device", but the explanatory text below also talks about 
>subprograms, event ports and event data ports. Which one is right?
-------------- next part --------------
HTML attachment scrubbed and removed


More information about the aadl-modeling mailing list