diff options
author | Sven Dziadek <s9svdzia@stud.uni-saarland.de> | 2012-04-14 10:19:37 -0400 |
---|---|---|
committer | Sven Dziadek <s9svdzia@stud.uni-saarland.de> | 2012-05-31 16:23:12 -0400 |
commit | aae25e0770ade4083937c7443448cb3f0023b10a (patch) | |
tree | bd579d9fadff0a1133eb6e7f156ab0f6e4aa57b1 /bin | |
parent | 8000ef44f4a82d845d5139cebfcac047ee291433 (diff) |
P-FP: port P-FP plugin used in B. Brandenburg's
dissertation (branch bbb-diss)
I took the unchanged code but removed references
to OMLP which was and is not implemented
tests: changed so that they work for P-FP
Diffstat (limited to 'bin')
-rw-r--r-- | bin/rtspin.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/bin/rtspin.c b/bin/rtspin.c index ae76941..1244073 100644 --- a/bin/rtspin.c +++ b/bin/rtspin.c | |||
@@ -161,7 +161,7 @@ static int job(double exec_time, double program_end) | |||
161 | } | 161 | } |
162 | } | 162 | } |
163 | 163 | ||
164 | #define OPTSTR "p:c:wlveo:f:s:" | 164 | #define OPTSTR "p:c:wlveo:f:s:q:" |
165 | 165 | ||
166 | int main(int argc, char** argv) | 166 | int main(int argc, char** argv) |
167 | { | 167 | { |
@@ -169,6 +169,7 @@ int main(int argc, char** argv) | |||
169 | lt_t wcet; | 169 | lt_t wcet; |
170 | lt_t period; | 170 | lt_t period; |
171 | double wcet_ms, period_ms; | 171 | double wcet_ms, period_ms; |
172 | unsigned int priority = 0; | ||
172 | int migrate = 0; | 173 | int migrate = 0; |
173 | int cpu = 0; | 174 | int cpu = 0; |
174 | int opt; | 175 | int opt; |
@@ -194,6 +195,11 @@ int main(int argc, char** argv) | |||
194 | cpu = atoi(optarg); | 195 | cpu = atoi(optarg); |
195 | migrate = 1; | 196 | migrate = 1; |
196 | break; | 197 | break; |
198 | case 'q': | ||
199 | priority = atoi(optarg); | ||
200 | if (priority == 0 || priority > LITMUS_MAX_PRIORITY) | ||
201 | usage("Invalid priority."); | ||
202 | break; | ||
197 | case 'c': | 203 | case 'c': |
198 | class = str2class(optarg); | 204 | class = str2class(optarg); |
199 | if (class == -1) | 205 | if (class == -1) |
@@ -274,7 +280,7 @@ int main(int argc, char** argv) | |||
274 | bail_out("could not migrate to target partition"); | 280 | bail_out("could not migrate to target partition"); |
275 | } | 281 | } |
276 | 282 | ||
277 | ret = sporadic_task_ns(wcet, period, 0, cpu, class, | 283 | ret = sporadic_task_ns(wcet, period, 0, cpu, priority, class, |
278 | want_enforcement ? PRECISE_ENFORCEMENT | 284 | want_enforcement ? PRECISE_ENFORCEMENT |
279 | : NO_ENFORCEMENT, | 285 | : NO_ENFORCEMENT, |
280 | migrate); | 286 | migrate); |