38#define ngcbCPU_PROFILE_DMA 1
39#define ngcbCPU_PROFILE_UDP 2
45#define ngcbCPU_SHARED -2
46#define ngcbCPU_HIGH -3
47#define ngcbCPU_EXACT 0x1
48#define ngcbCPU_EXCLUDE 0x2
63#define ngcbGetAbsTime(t) clock_gettime(CLOCK_REALTIME, t)
73#define ngcbSEM_CHECKED 1
113int ngcbSetPrio(
int priority,
int schedClass,
int quantum);
118int ngcbGetPrio(
int *priority,
int *schedClass,
int *quantum);
161#define ngcbClockWait(fd, waitTime) ngcbMicroSleep(fd, waitTime)
171int ngcbThrCreate(
void *(*startFunc)(
void *),
void *arg,
size_t stack,
393int ngcbProcCreate(
void (*calcProcess)(
void *),
int n,
char *erms);
453#define ngcbPROC_MAX_SET 8
458#define ngcbPROC_MAX_PROC 1024
463#define ngcbProcId(x) (int)((unsigned long)x & 0xffffffff)
468#define ngcbProcNum(x) (int)(x & 0x0000ffff)
int ngcbRwLockDestroy(ngcb_lock_t *rwlp)
Definition ngcbSchedSem.c:308
int ngcbCpuAssign(int cpu, int flag)
Definition ngcbSchedCpu.c:194
ngcb_thread_t ngcbThrId(void)
Definition ngcbSchedThread.c:95
int ngcbProcWaitTrigger(int procId)
Definition ngcbSchedProc.c:372
int ngcbRwRdLock(ngcb_lock_t *rwlp)
Definition ngcbSchedSem.c:334
int _ngcbClockWait(int fd, int waitTime)
Definition ngcbSchedClock.c:131
int ngcbProcStart(int setId)
Definition ngcbSchedProc.c:329
int ngcbCpuDisableLatencyStates(char *erms)
Definition ngcbSchedCpu.c:234
void ngcbCpuResetLatencyStates(int fd)
Definition ngcbSchedCpu.c:255
uint64_t ngcbTimeStamp64()
Definition ngcbSchedClock.c:123
int ngcbPrio
Definition ngcbSchedPrio.c:23
void ngcbThrExit(void *status)
Definition ngcbSchedThread.c:54
int ngcbSemSet(ngcb_sema_t *sp, unsigned int cnt)
Definition ngcbSchedSem.c:142
int ngcbSemLock(ngcb_sema_t *sp)
Definition ngcbSchedSem.c:88
pthread_t ngcb_thread_t
Definition ngcbSched.h:53
int ngcbSemWaitAbsTime(ngcb_sema_t *sp, ngcb_abstime_t *absTime)
Definition ngcbSchedSem.c:198
int ngcbRwUnlock(ngcb_lock_t *rwlp)
Definition ngcbSchedSem.c:443
int ngcbProcAck(int procId)
Definition ngcbSchedProc.c:392
int ngcbRwTryWrLock(ngcb_lock_t *rwlp)
Definition ngcbSchedSem.c:405
void ngcbClockGet(ngcb_time_hr *t)
Definition ngcbSchedClock.c:78
int ngcbSemUnlock(ngcb_sema_t *sp)
Definition ngcbSchedSem.c:96
int ngcbSemPost(ngcb_sema_t *sp)
Definition ngcbSchedSem.c:123
int ngcbRwLockInit(ngcb_lock_t *rwlp, int type, void *arg)
Definition ngcbSchedSem.c:268
int ngcbCpuRT(void)
Definition ngcbSchedCpu.c:32
struct timespec ngcb_abstime_t
Definition ngcbSched.h:58
int ngcbSetPrio(int priority, int schedClass, int quantum)
Definition ngcbSchedPrio.c:74
int ngcbProcTrigger(int setId)
Definition ngcbSchedProc.c:405
int ngcbSemInit(ngcb_sema_t *sp, unsigned int count, int type, void *arg)
Definition ngcbSchedSem.c:19
size_t ngcbSemCnt(ngcb_sema_t *sp)
Definition ngcbSchedSem.c:254
int ngcbProcCreate2(void(*calcProcess)(void *), int n, size_t stack, char *erms)
Definition ngcbSchedProc.c:71
int ngcbCpu2Thread(ngcb_thread_t thread, int cpu, int flag)
Definition ngcbSchedCpu.c:48
int ngcbRwTryRdLock(ngcb_lock_t *rwlp)
Definition ngcbSchedSem.c:353
void ngcbProcFree(int setId)
Definition ngcbSchedProc.c:301
int ngcbThrEqual(ngcb_thread_t t1, ngcb_thread_t t2)
Definition ngcbSchedThread.c:100
int ngcbRwWrLock(ngcb_lock_t *rwlp)
Definition ngcbSchedSem.c:382
void ngcbClockInit(void)
Definition ngcbSchedClock.c:32
int ngcbSemDestroy(ngcb_sema_t *sp)
Definition ngcbSchedSem.c:70
int ngcbSemTryWait(ngcb_sema_t *sp)
Definition ngcbSchedSem.c:223
int ngcbCpuProfile
Definition ngcbSchedCpu.c:22
int ngcbProcCreate(void(*calcProcess)(void *), int n, char *erms)
Definition ngcbSchedProc.c:65
int ngcbSemTryLock(ngcb_sema_t *sp)
Definition ngcbSchedSem.c:104
int ngcbThrKill(ngcb_thread_t thread, int sig)
Definition ngcbSchedThread.c:71
void ngcbClockGetAbs(ngcb_time_hr *t)
Definition ngcbSchedClock.c:40
int ngcbSemWait(ngcb_sema_t *sp)
Definition ngcbSchedSem.c:161
int ngcbProcWaitAck(int setId)
Definition ngcbSchedProc.c:415
int ngcbGetPrio(int *priority, int *schedClass, int *quantum)
Definition ngcbSchedPrio.c:45
void ngcbCpuShow(const char *name)
Definition ngcbSchedCpu.c:200
size_t ngcbSemWaitCnt(ngcb_sema_t *sp, size_t cnt)
Definition ngcbSchedSem.c:177
int ngcbThrJoin(ngcb_thread_t thread)
Definition ngcbSchedThread.c:83
int ngcbCpuNumCores(void)
Definition ngcbSchedCpu.c:25
void ngcbProcJoin(int setId)
Definition ngcbSchedProc.c:319
int ngcbThrCreate(void *(*startFunc)(void *), void *arg, size_t stack, ngcb_thread_t *thread)
Definition ngcbSchedThread.c:19
int ngcbProcWaitStart(int procId)
Definition ngcbSchedProc.c:352
double ngcbTimeStamp()
Definition ngcbSchedClock.c:116
int ngcbThrCancel(ngcb_thread_t thread)
Definition ngcbSchedThread.c:59
int ngcbProcSync(int procId)
Definition ngcbSchedProc.c:430
Definition ngcbSched.h:87
unsigned int val
Definition ngcbSched.h:91
unsigned char wr
Definition ngcbSched.h:92
pthread_mutex_t mutex_v
Definition ngcbSched.h:88
pthread_cond_t lckr
Definition ngcbSched.h:89
pthread_cond_t lckw
Definition ngcbSched.h:90
Definition ngcbSched.h:78
pthread_cond_t lck
Definition ngcbSched.h:80
pthread_mutex_t mutex_v
Definition ngcbSched.h:79
size_t val
Definition ngcbSched.h:81