Base for the behavior part of refactored PROSA.
This is an initial draft of behavior part of the refactored hierarchy containing (parts of) the definitions for arrival sequences and schedules.
I have tried to implement most of the proposed improvements discussed in Braunschweig:
- Removal of spurious toplevel modules
- Changing "Require Import" into "Require Export" as discussed in #37 (closed)
- Generic definition of schedule based on processor state as discussed in #34 (closed)
- Several instances of processor state including the existing ones (basic, multi)
- Use of typeclasses for job-related parameters as discussed in #35 (closed)
I will add comments pointing to specific parts of the code in the comments below.
Feedback would be appreciated as the choices we make here are going to have consequences when porting the rest of the developments.
Merge request reports
Activity
Excellent, thanks a lot! I'm busy with RTAS'19/CPSWEEK + travel in the coming days, but I'll try to take a close look at it asap. Sergey, could you please also chime in?
CC: @sbozhko
- Resolved by Maxime Lesourd
- Resolved by Maxime Lesourd
- Resolved by Björn Brandenburg
- Resolved by Maxime Lesourd
- Resolved by Sergey Bozhko
- Resolved by Sergey Bozhko
- Resolved by Björn Brandenburg
added 1 commit
- b1360834 - Remove time in favor of instant and duration
Well, that’s getting a bit unwieldy and also somewhat redundant; there is only one kind of “instant” and only one kind of “duration” that we consider. In fact, when editing papers, I typically reduce “time instant” to “instant” precisely because it is redundant; the noun applies only to time (e.g., see: https://www.merriam-webster.com/dictionary/instant).
How about just the following two aliases of
nat
:-
time
— the type of (time) instants, i.e., the elements of this type are points in time; -
duration
— the type of cumulative time, i.e., the (total) length of a (possibly discontiguous set of) interval(s).
This is concise, unambiguous, and as long as we are consistent in using the right type everywhere, it should result in good readability. What do you think?
-
- Resolved by Björn Brandenburg
Question: When trying to compile the behavior branch, I'm seeing warnings such as the following:
*** Warning: in file ./behavior/schedule/varspeed.v, required library schedule matches several files in path (found schedule.v in behavior/schedule, implementation/uni/basic, implementation/uni/jitter, implementation/uni/susp, implementation/apa, implementation/global/basic, implementation/global/jitter, model/schedule/uni/nonpreemptive, model/schedule/uni, model/schedule/uni/limited, model/schedule/uni/jitter, model/schedule/uni/susp, model/schedule/partitioned, model/schedule/global/basic and model/schedule/global/jitter; used the latter)
Picking "the latter" of the list of potential alternatives seems like the wrong choice. Is this something we need to worry about?
- Resolved by Maxime Lesourd
- Resolved by Maxime Lesourd
- Resolved by Maxime Lesourd
- Resolved by Maxime Lesourd
added 1 commit
- fae1f2ce - Added service_implies_scheduled to schedule.v and instances
added 1 commit
- abdbde4d - Uniformize Context commands for parameter instances
added 2 commits
- Resolved by Björn Brandenburg
Ok, I will do that now.
I will open issues with the ongoing discussions if this thread disappears when I merge.
mentioned in issue #39
mentioned in issue #40 (closed)
added 6 commits
-
a14e1328 - 1 commit from branch
master
- a88f6cd5 - Initial draft of the base for the behavior part of the refactored hierarchy....
- ca16ea34 - fixes
- d5f9070a - Remove time in favor of instant and duration
- 00a0d187 - Added service_implies_scheduled to schedule.v and instances
- 3878b2e5 - Uniformize Context commands for parameter instances
Toggle commit list-
a14e1328 - 1 commit from branch
added 1 commit
- f210238b - Initial draft of the base for the behavior part of the refactored hierarchy....