C Interface

C Interface

int Rts_numProc;

int Rts_myProc;

int Rts_outputStats;

Flag Rts_start(void (*f)());

void Rts_exit();

Flag Rts_enable();

void Rts_pollRts(int times);

Flag Rts_disable();

Flag Rts_registerInit(Flag (*f)());

Flag Rts_registerCleanUp(Flag (*f)());

Flag Rts_registerSelect(Flag (*f)(), int quantum);

Flag Rts_depositFIFO(Thread *tid);

Flag Rts_depositPreempt(Thread *tid);

Flag Rts_depositUrgent(Thread *tid);


Flag Rts_allocThread(Thread **tidPtr, Flag (*scheduler)(), void (*f)(),
                 void *context, int contextSize);

Flag Rts_continueThread(Thread **tidPtr, void (*f)());

Flag Rts_enableThread(Thread *tid);


Flag Rts_allocCounter(Counter **ctr, int value);

Flag Rts_deAllocCounter(Counter *ctr);

Flag Rts_initCounter(Counter *ctr, int value);

Flag Rts_resetCounter(Counter *ctr, int value);

Flag Rts_waitCounterGE(Counter *ctr, int value, Thread *tid);

Flag Rts_waitCounterNext(Counter *ctr, Thread *tid);

Flag Rts_readCounter(Counter *ctr, int *valuePtr);

Flag Rts_incrCounter(Counter *ctr);


Flag Rts_invokeRemoteThread(int proc, Flag (*scheduler)(), void (*f)(),
                            void *context, int contextSize);

Flag Rts_invokeRemoteThread_4(int proc, void (*f)(), int i1, int i2,
                              int i3, int i4);

Flag Rts_Store(GlobalPtr putAddr, void *buf, int size,
               void (*f)(), Counter *ctr);

Flag Rts_Store1(GlobalPtr putAddr, void *buf, int size,
                void (*f)(), void *arg, Counter *ctr);

Flag Rts_Get(GlobalPtr getAddr, void *buf, int size, Counter *ctr);

Flag Rts_Put(GlobalPtr putAddr, void *buf, int size, Counter *ctr);

void Rts_setAggregation(int size);

Double Rts_getTimeCoarse()

void Rts_pollNetwork()

void Rts_panic(char *s)



Chih-Po Wen
Wed Sep 13 23:59:20 PDT 1995