📄 pxschedtest.c
字号:
#include "vxWorks.h"
#include "stdio.h"
#include "time.h"
#include "sched.h"
#include "kernelLib.h"
#define PX_NEW_PRIORITY 150
STATUS priorityTest(void)
{
struct sched_param myParam;
myParam.sched_priority=PX_NEW_PRIORITY;
if(sched_setparam(0,&myParam)==ERROR)
{
printf("error setting priority\n");
return(ERROR);
}
if(sched_getparam(0,&myParam)==ERROR)
{
printf("error getting priority\n");
return(ERROR);
}
if(myParam.sched_priority!=PX_NEW_PRIORITY)
{
printf("error priority do not match\n");
return(ERROR);
}
else
printf("task priority=%d\n",myParam.sched_priority);
return(OK);
}
STATUS schedulerTest(void)
{
int policy;
if((policy=sched_getscheduler (0))==ERROR)
{
printf("getting scheduler falled\n");
return(ERROR);
}
if(policy==SCHED_FIFO)
printf("current scheduling policy is FIFO\n");
else
printf("current scheduling policy is RR\n");
return(OK);
}
STATUS rrgetintervalTest(void)
{
struct timespec slice;
kernelTimeSlice(30);
if(sched_rr_get_interval(0,&slice)==ERROR)
{
printf("get interval test failed\n");
return(ERROR);
}
printf("time slice is %d seconds and %d nanoseconds\n",slice.tv_sec,slice.tv_nsec);
schedulerTest();
kernelTimeSlice(0);
schedulerTest();
return(OK);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -