36,6 → 36,8 |
fprintf(file_event_header, "int group;\n"); |
fprintf(file_event_header, "int server;\n"); |
|
fprintf(file_event_header, "int local_scheduler;\n"); |
|
fprintf(file_event_header, "struct timespec deadline;\n"); |
fprintf(file_event_header, "struct timespec wcet;\n"); |
|
45,6 → 47,11 |
|
fprintf(file_event_header, "};\n\n"); |
|
fprintf(file_event_header, "#define LOADER_POSIX_SCHEDULER 0\n"); |
fprintf(file_event_header, "#define LOADER_EDF_SCHEDULER 1\n"); |
fprintf(file_event_header, "#define LOADER_RM_SCHEDULER 2\n"); |
fprintf(file_event_header, "#define LOADER_MPEGSTAR_SCHEDULER 3\n\n"); |
|
fprintf(file_event_header, "#include \"%s\"\n\n",ACT_LIST); |
|
fprintf(file_event_header, "struct loader_task loader_task_list[] = {\n"); |
58,7 → 65,7 |
int select_basic_par(char *task_name) |
{ |
|
int number,group,server,deadline,wcet; |
int number,group,server,deadline,wcet,local_scheduler; |
FILE *file_event_header; |
|
printf("\nInsert the number of tasks\n"); |
70,6 → 77,15 |
printf("Insert the server number\n"); |
printf("> "); |
scanf("%d",&server); |
|
printf("Insert the local scheduler type\n"); |
printf(" 0 - POSIX\n"); |
printf(" 1 - EDF\n"); |
printf(" 2 - RM\n"); |
printf(" 3 - MPEGSTAR\n"); |
printf("> "); |
scanf("%d",&local_scheduler); |
|
printf("Insert the deadline [us]\n"); |
printf("> "); |
scanf("%d",&deadline); |
80,8 → 96,8 |
file_event_header = fopen(EVENT_HEADER,"a+"); |
if (file_event_header == NULL) return 1; |
|
fprintf(file_event_header, " {\"%s\",%d,%d,%d,{%d,%d},{%d,%d},%d,act_%s,exec_%s},\n", |
task_name,number,group,server,deadline / 1000000, deadline % 1000000 * 1000, |
fprintf(file_event_header, " {\"%s\",%d,%d,%d,%d,{%d,%d},{%d,%d},%d,act_%s,exec_%s},\n", |
task_name,number,group,server,local_scheduler,deadline / 1000000, deadline % 1000000 * 1000, |
wcet / 1000000, wcet % 1000000 * 1000, act_number, task_name, task_name); |
|
fclose(file_event_header); |
366,7 → 382,10 |
printf("> "); |
scanf("%s",task_name); |
|
if (strlen(task_name) == 1 && task_name[0] == 'q') exit(0); |
if (strlen(task_name) == 1 && task_name[0] == 'q') { |
close_loader(); |
exit(0); |
} |
|
select_basic_par(task_name); |
|
421,8 → 440,6 |
|
} |
|
close_loader(); |
|
return 0; |
|
} |