[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 specified 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 defined 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 first 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
>specified to occur at dispatch, any time during execution, at
>completion, or at deadline.", but I'm technically able to dene 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 define 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 specfiied, 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 find 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 definition "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:
>Definition 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 "specifies
>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