37#define ngcbCPU_PROFILE_DMA 1
38#define ngcbCPU_PROFILE_UDP 2
44#define ngcbCPU_SHARED -2
45#define ngcbCPU_HIGH -3
46#define ngcbCPU_EXACT 0x1
47#define ngcbCPU_EXCLUDE 0x2
62#define ngcbGetAbsTime(t) clock_gettime(CLOCK_REALTIME, t)
72#define ngcbSEM_CHECKED 1
112int ngcbSetPrio(
int priority,
int schedClass,
int quantum);
117int ngcbGetPrio(
int *priority,
int *schedClass,
int *quantum);
160#define ngcbClockWait(fd, waitTime) ngcbMicroSleep(fd, waitTime)
170int ngcbThrCreate(
void *(*startFunc)(
void *),
void *arg,
size_t stack,
392int ngcbProcCreate(
void (*calcProcess)(
void *),
int n,
char *erms);
452#define ngcbPROC_MAX_SET 8
457#define ngcbPROC_MAX_PROC 1024
462#define ngcbProcId(x) (int)((unsigned long)x & 0xffffffff)
467#define ngcbProcNum(x) (int)(x & 0x0000ffff)
int ngcbRwLockDestroy(ngcb_lock_t *rwlp)
Definition ngcbSchedSem.c:307
int ngcbCpuAssign(int cpu, int flag)
Definition ngcbSchedCpu.c:193
ngcb_thread_t ngcbThrId(void)
Definition ngcbSchedThread.c:94
int ngcbProcWaitTrigger(int procId)
Definition ngcbSchedProc.c:371
int ngcbRwRdLock(ngcb_lock_t *rwlp)
Definition ngcbSchedSem.c:333
int _ngcbClockWait(int fd, int waitTime)
Definition ngcbSchedClock.c:130
int ngcbProcStart(int setId)
Definition ngcbSchedProc.c:328
int ngcbCpuDisableLatencyStates(char *erms)
Definition ngcbSchedCpu.c:233
void ngcbCpuResetLatencyStates(int fd)
Definition ngcbSchedCpu.c:254
uint64_t ngcbTimeStamp64()
Definition ngcbSchedClock.c:122
int ngcbPrio
Definition ngcbSchedPrio.c:22
void ngcbThrExit(void *status)
Definition ngcbSchedThread.c:53
int ngcbSemSet(ngcb_sema_t *sp, unsigned int cnt)
Definition ngcbSchedSem.c:141
int ngcbSemLock(ngcb_sema_t *sp)
Definition ngcbSchedSem.c:87
pthread_t ngcb_thread_t
Definition ngcbSched.h:52
int ngcbSemWaitAbsTime(ngcb_sema_t *sp, ngcb_abstime_t *absTime)
Definition ngcbSchedSem.c:197
int ngcbRwUnlock(ngcb_lock_t *rwlp)
Definition ngcbSchedSem.c:442
int ngcbProcAck(int procId)
Definition ngcbSchedProc.c:391
int ngcbRwTryWrLock(ngcb_lock_t *rwlp)
Definition ngcbSchedSem.c:404
void ngcbClockGet(ngcb_time_hr *t)
Definition ngcbSchedClock.c:77
int ngcbSemUnlock(ngcb_sema_t *sp)
Definition ngcbSchedSem.c:95
int ngcbSemPost(ngcb_sema_t *sp)
Definition ngcbSchedSem.c:122
int ngcbRwLockInit(ngcb_lock_t *rwlp, int type, void *arg)
Definition ngcbSchedSem.c:267
int ngcbCpuRT(void)
Definition ngcbSchedCpu.c:31
struct timespec ngcb_abstime_t
Definition ngcbSched.h:57
int ngcbSetPrio(int priority, int schedClass, int quantum)
Definition ngcbSchedPrio.c:73
int ngcbProcTrigger(int setId)
Definition ngcbSchedProc.c:404
int ngcbSemInit(ngcb_sema_t *sp, unsigned int count, int type, void *arg)
Definition ngcbSchedSem.c:18
size_t ngcbSemCnt(ngcb_sema_t *sp)
Definition ngcbSchedSem.c:253
int ngcbProcCreate2(void(*calcProcess)(void *), int n, size_t stack, char *erms)
Definition ngcbSchedProc.c:70
int ngcbCpu2Thread(ngcb_thread_t thread, int cpu, int flag)
Definition ngcbSchedCpu.c:47
int ngcbRwTryRdLock(ngcb_lock_t *rwlp)
Definition ngcbSchedSem.c:352
void ngcbProcFree(int setId)
Definition ngcbSchedProc.c:300
int ngcbThrEqual(ngcb_thread_t t1, ngcb_thread_t t2)
Definition ngcbSchedThread.c:99
int ngcbRwWrLock(ngcb_lock_t *rwlp)
Definition ngcbSchedSem.c:381
void ngcbClockInit(void)
Definition ngcbSchedClock.c:31
int ngcbSemDestroy(ngcb_sema_t *sp)
Definition ngcbSchedSem.c:69
int ngcbSemTryWait(ngcb_sema_t *sp)
Definition ngcbSchedSem.c:222
int ngcbCpuProfile
Definition ngcbSchedCpu.c:21
int ngcbProcCreate(void(*calcProcess)(void *), int n, char *erms)
Definition ngcbSchedProc.c:64
int ngcbSemTryLock(ngcb_sema_t *sp)
Definition ngcbSchedSem.c:103
int ngcbThrKill(ngcb_thread_t thread, int sig)
Definition ngcbSchedThread.c:70
void ngcbClockGetAbs(ngcb_time_hr *t)
Definition ngcbSchedClock.c:39
int ngcbSemWait(ngcb_sema_t *sp)
Definition ngcbSchedSem.c:160
int ngcbProcWaitAck(int setId)
Definition ngcbSchedProc.c:414
int ngcbGetPrio(int *priority, int *schedClass, int *quantum)
Definition ngcbSchedPrio.c:44
void ngcbCpuShow(const char *name)
Definition ngcbSchedCpu.c:199
size_t ngcbSemWaitCnt(ngcb_sema_t *sp, size_t cnt)
Definition ngcbSchedSem.c:176
int ngcbThrJoin(ngcb_thread_t thread)
Definition ngcbSchedThread.c:82
int ngcbCpuNumCores(void)
Definition ngcbSchedCpu.c:24
void ngcbProcJoin(int setId)
Definition ngcbSchedProc.c:318
int ngcbThrCreate(void *(*startFunc)(void *), void *arg, size_t stack, ngcb_thread_t *thread)
Definition ngcbSchedThread.c:18
int ngcbProcWaitStart(int procId)
Definition ngcbSchedProc.c:351
double ngcbTimeStamp()
Definition ngcbSchedClock.c:115
int ngcbThrCancel(ngcb_thread_t thread)
Definition ngcbSchedThread.c:58
int ngcbProcSync(int procId)
Definition ngcbSchedProc.c:429
Definition ngcbSched.h:86
unsigned int val
Definition ngcbSched.h:90
unsigned char wr
Definition ngcbSched.h:91
pthread_mutex_t mutex_v
Definition ngcbSched.h:87
pthread_cond_t lckr
Definition ngcbSched.h:88
pthread_cond_t lckw
Definition ngcbSched.h:89
Definition ngcbSched.h:77
pthread_cond_t lck
Definition ngcbSched.h:79
pthread_mutex_t mutex_v
Definition ngcbSched.h:78
size_t val
Definition ngcbSched.h:80