Subversion Repositories shark

Compare Revisions

Ignore whitespace Rev 3 → Rev 38

/shark/trunk/include/kernel/model.h
21,11 → 21,11
 
/**
------------
CVS : $Id: model.h,v 1.1.1.1 2002-03-29 14:12:51 pj Exp $
CVS : $Id: model.h,v 1.2 2003-01-07 17:12:19 pj Exp $
 
File: $File$
Revision: $Revision: 1.1.1.1 $
Last update: $Date: 2002-03-29 14:12:51 $
Revision: $Revision: 1.2 $
Last update: $Date: 2003-01-07 17:12:19 $
------------
 
This file contains the definitions of the task and resource models.
55,8 → 55,8
#define __KERNEL_MODEL_H__
 
#include "ll/ll.h"
#include "kernel/types.h"
 
 
/* -----------------------------------------------------------------------
-----------------------------------------------------------------------
-----------------------------------------------------------------------
165,6 → 165,7
 
typedef struct {
WORD pclass;
LEVEL level;
size_t stacksize;
void *stackaddr;
WORD group;
210,13 → 211,13
 
/* Some macros to set various task-model parameters */
#define task_default_model(m,p) (m).pclass = (p), \
(m).level = 0; \
(m).stacksize = 4096, \
(m).stackaddr = NULL, \
(m).group = 0, \
(m).arg = NULL,\
(m).control = 0
#define task_def_level(m,l) (m).pclass = ((m).pclass & 0xFF00) | \
((l) & 0xFF)
#define task_def_level(m,l) (m).level = (l)
#define task_def_arg(m,a) (m).arg = (a)
#define task_def_stack(m,s) (m).stacksize = (s)
#define task_def_stackaddr(m,s) (m).stackaddr = (s)
237,16 → 238,13
PCLASS values
----------------------------------------------------------------------- */
 
/*+ These are the value for the pclass field;
a level l that accept a task model with pclass p
accept also the alias pclass (p | l)
=> the LSByte MUST be 0 (256 levels maximum) +*/
/* These are the value for the pclass field */
 
#define DUMMY_PCLASS 0x0000
#define HARD_PCLASS 0x0100
#define SOFT_PCLASS 0x0200
#define NRT_PCLASS 0x0300
#define JOB_PCLASS 0x0400
#define DUMMY_PCLASS 0
#define HARD_PCLASS 1
#define SOFT_PCLASS 2
#define NRT_PCLASS 3
#define JOB_PCLASS 4
 
 
/* -----------------------------------------------------------------------
559,11 → 557,12
+*/
 
typedef struct {
int rclass; // protocollo a cui si riferisce il modello di task
int rclass; /* protocol */
RLEVEL level; /* level */
} RES_MODEL;
 
#define res_default_model(r, p) (r).rclass = (p)
#define res_def_level(r,l) (r).rclass = ((r).rclass & 0xFF00) | (l)
#define res_default_model(r, p) (r).rclass = (p), (r).level = 0
#define res_def_level(r,l) (r).level = (l)