Subversion Repositories shark

Compare Revisions

Ignore whitespace Rev 854 → Rev 855

/shark/trunk/ports/first/include/fsf_contract.h
21,7 → 21,7
#include "edfstar.h"
#include "rmstar.h"
#include "posixstar.h"
#include "mpegstar.h"
#include "nonestar.h"
 
#ifndef _FSF_CONTRACT_H_
#define _FSF_CONTRACT_H_
107,7 → 107,7
#define FSF_SCHEDULER_POSIX 0
#define FSF_SCHEDULER_EDF 1
#define FSF_SCHEDULER_RM 2
#define FSF_SCHEDULER_MPEG 3
#define FSF_SCHEDULER_NONE 3
 
// Constants for assigning default values
#define FSF_DEFAULT_WORKLOAD FSF_INDETERMINATE
116,7 → 116,7
#define FSF_DEFAULT_IMPORTANCE 1
#define FSF_DEFAULT_D_EQUALS_T TRUE
#define FSF_DEFAULT_DEADLINE {0,0}
#define FSF_DEFAULT_SCHEDULER FSF_SCHEDULER_POSIX
#define FSF_DEFAULT_SCHEDULER FSF_SCHEDULER_NONE
 
// Constants for omitting the assignment of values to specific arguments
// in calls to initialization functions
/shark/trunk/ports/first/first-server.c
104,8 → 104,8
case FSF_SCHEDULER_RM:
local_scheduler_level = RMSTAR_register_level(fsf_server_level);
break;
case FSF_SCHEDULER_MPEG:
local_scheduler_level = MPEGSTAR_register_level(fsf_server_level);
case FSF_SCHEDULER_NONE:
local_scheduler_level = NONESTAR_register_level(fsf_server_level);
break;
}
 
349,16 → 349,16
RMSTAR_setbudget(local_scheduler_level, *thread, (int)(server));
 
break;
case FSF_SCHEDULER_MPEG:
case FSF_SCHEDULER_NONE:
hard_task_def_arg(*(HARD_TASK_MODEL *)(local_scheduler_arg),arg);
hard_task_def_level(*(HARD_TASK_MODEL *)(local_scheduler_arg),local_scheduler_level);
*thread = task_create("MPEGSTAR", thread_code, local_scheduler_arg, NULL);
*thread = task_create("NONESTAR", thread_code, local_scheduler_arg, NULL);
if (*thread == NIL)
return FSF_ERR_CREATE_THREAD;
MPEGSTAR_setbudget(local_scheduler_level, *thread, (int)(server));
NONESTAR_setbudget(local_scheduler_level, *thread, (int)(server));
break;
397,7 → 397,7
RMSTAR_set_nopreemtive_current(local_scheduler_level);
return 1;
break;
case FSF_SCHEDULER_MPEG:
case FSF_SCHEDULER_NONE:
break;
default:
return -1;
428,7 → 428,7
RMSTAR_unset_nopreemtive_current(local_scheduler_level);
return 1;
break;
case FSF_SCHEDULER_MPEG:
case FSF_SCHEDULER_NONE:
break;
default:
return -1;
458,8 → 458,8
case FSF_SCHEDULER_RM:
*server = RMSTAR_getbudget(local_scheduler_level,thread);
return 0;
case FSF_SCHEDULER_MPEG:
*server = MPEGSTAR_getbudget(local_scheduler_level,thread);
case FSF_SCHEDULER_NONE:
*server = NONESTAR_getbudget(local_scheduler_level,thread);
return 0;
default:
return -1;
517,9 → 517,9
 
break;
 
case FSF_SCHEDULER_MPEG:
case FSF_SCHEDULER_NONE:
/* Check if some thread use the server */
if(MPEGSTAR_budget_has_thread(local_scheduler_level,*server))
if(NONESTAR_budget_has_thread(local_scheduler_level,*server))
return FSF_ERR_SERVER_USED;
break;
/shark/trunk/ports/first/makefile
13,7 → 13,7
FIRST = first-contract.o first-server.o first-sync.o server-task.o \
./modules/grubstar.o ./modules/posixstar.o \
./modules/edfstar.o ./modules/cbsstar.o ./modules/rmstar.o \
./modules/mpegstar.o ./modules/pistar.o
./modules/nonestar.o ./modules/pistar.o
 
OBJS = $(FIRST)