sys/src/sysschevt.c File Reference

system scheduling and timer More...

#include <linux/linkage.h>
#include <linux/sched.h>
#include <ssdef.h>
#include <tqedef.h>
#include <cpudef.h>
#include <dyndef.h>
#include <system_data_cells.h>
#include <ipl.h>
#include <internals.h>
#include <statedef.h>
#include <linux/vmalloc.h>
#include <linux/smp.h>
#include <linux/slab.h>
#include <exe_routines.h>

Go to the source code of this file.

Functions

asmlinkage int exe_setimr (unsigned int efn, signed long long *daytim, void(*astadr)(long), unsigned long reqidt, unsigned int flags)
 set timer - see 5.2 11.6.1
asmlinkage int exe_schdwk (unsigned int *pidadr, void *prcnam, signed long long *daytim, signed long long *reptim)
 schedule wakeup - see 5.2 11.6.3


Detailed Description

system scheduling and timer

Author:
Roar Thronęs

Definition in file sysschevt.c.


Function Documentation

asmlinkage int exe_schdwk ( unsigned int *  pidadr,
void *  prcnam,
signed long long *  daytim,
signed long long *  reptim 
)

schedule wakeup - see 5.2 11.6.3

Parameters:
pidadr address of pid
prcnam process name
daytim time of day
reptim time to repeat

invoke exe_nampid to find pcb

TODO better handling of sts and vmsunlock

maybe cwps - MISSING

allocate and init tqe

test if one-time or repeating

convert repeat to system time format

if relative clear tqe absolute bit - MISSING

decrement astcnt - MISSING

insert with instimq

return value - MISSING

Definition at line 83 of file sysschevt.c.

References _pcb, exe_gq_systime, exe_instimq(), exe_nampid(), kmalloc(), smp_gl_cpu_data, SPIN_SCHED, _tqe::tqe_b_rqtype, _tqe::tqe_b_type, _tqe::tqe_l_pid, _tqe::tqe_q_delta, and _tqe::tqe_q_time.

asmlinkage int exe_setimr ( unsigned int  efn,
signed long long *  daytim,
void(*)(long)  astadr,
unsigned long  reqidt,
unsigned int  flags 
)

set timer - see 5.2 11.6.1

Parameters:
efn event flag
daytim time
astadr ast routine
reqidt param for it
flags 

test time location - MISSING

test astcnt - MISSING

decrement jib tqcnt, test and maybe MWAIT - MISSING

allocate tqe

clear event flag

fifth nonzero argument test

wrong use TODO use chk_cputim field

if negative, then relative time

set absolute bit - MISSING

store access mode in tqe - MISSING

if no astadr, decrease astcnt and set quota bit - MISSING

insert in timer queue

Definition at line 35 of file sysschevt.c.

References exe_clref(), exe_gq_systime, exe_instimq(), kmalloc(), smp_gl_cpu_data, SS__ACCVIO, _tqe::tqe_b_efn, _tqe::tqe_b_rqtype, _tqe::tqe_b_type, _tqe::tqe_l_ast, _tqe::tqe_l_astprm, _tqe::tqe_l_pid, and _tqe::tqe_q_time.

Referenced by exe_reclaim_pool_gentle(), init_nonpaged(), and vms_init4().


Generated on Fri Oct 9 10:26:04 2009 for FreeVMS by  doxygen 1.5.5