Subversion Repositories shark

Rev

Rev 1254 | Rev 1442 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1254 giacomo 1
#include "kernel/kern.h"
2
#include "fsf_server.h"
3
#include "fsf_contract.h"
4
#include "func.h"
5
 
6
extern struct loader_contract loader_contract_list[];
7
extern int total_loader_contract;
8
 
9
void fsfinit()
10
{
11
 
12
  struct loader_contract *c;
13
  fsf_contract_parameters_t contract;
14
  fsf_server_id_t server;
15
  int i;
16
 
17
  for (i=0;i<total_loader_contract;i++) {
18
 
19
    c = &loader_contract_list[i];
20
 
21
    fsf_initialize_contract(&contract);
22
 
23
    fsf_set_contract_basic_parameters(&contract,&c->cmin,&c->tmax,&c->cmax,&c->tmin,c->workload);
24
 
25
    if (c->local_scheduler != PAR_POSIX) {
26
 
27
      switch (c->local_scheduler) {
28
         case PAR_EDF:
29
           fsf_set_local_scheduler_parameter(&contract,FSF_SCHEDULER_EDF);
30
           break;
31
         case PAR_RM:
32
           fsf_set_local_scheduler_parameter(&contract,FSF_SCHEDULER_RM);
33
           break;
34
      }
35
 
36
    }
37
 
38
    fsf_negotiate_contract(&contract,&server);
39
    c->server = server;
1311 giacomo 40
 
1254 giacomo 41
  }
42
 
1311 giacomo 43
  print_server_list();
44
 
1254 giacomo 45
}