18,11 → 18,11 |
|
/** |
------------ |
CVS : $Id: int_sem.c,v 1.1.1.1 2002-03-29 14:12:51 pj Exp $ |
CVS : $Id: int_sem.c,v 1.2 2002-11-11 08:34:08 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: 2002-11-11 08:34:08 $ |
------------ |
|
Internal semaphores. |
68,7 → 68,7 |
void internal_sem_init(internal_sem_t *s, int value) |
{ |
s->count = value; |
qq_init(&s->blocked); |
iq_init(&s->blocked,&freedesc,0); |
} |
|
void internal_sem_wait(internal_sem_t *s) |
106,7 → 106,7 |
|
/* we insert the task in the semaphore queue */ |
proc_table[exec_shadow].status = INTERNAL_SEM_WAIT; |
qq_insertlast(exec_shadow,&s->blocked); |
iq_insertlast(exec_shadow,&s->blocked); |
|
/* and finally we reschedule */ |
exec = exec_shadow = -1; |
148,7 → 148,7 |
register PID p; |
register LEVEL l; |
|
p = qq_getfirst(&s->blocked); |
p = iq_getfirst(&s->blocked); |
l = proc_table[p].task_level; |
level_table[l]->task_insert(l,p); |
|