vxworks 에서 같은 프로세서를 여러개 돌리려면
Reg. Date: August 27, 2004 By 이영호
아직 초보라 잘 몰라서 그러는데
같은 프로세서를 동시에 여러개 실행하려고 하는데
프로세서에서 변수들을 global 로 잡으면 실행후에 서로 같은걸 참조 하니 엉망이 되네요.
그렇다고 local 로 잡아서 쓸수도 없고.
리눅스 같은 o/s 는 같은 프로세서를 몇개를 올려도 따로 메모리를 잡기 때문에 상관없는데
vxworks 에서는 어떻게 해야 하는건지 모르겠습니다.
아래 처럼 int CNT 를 타스크 QQQ!, QQQ2 에서 공유되는 문제입니다.
A.C
#define ...
int CNT;
void QQQ()
{
while (1) printf ("%d", CNT);
}
B.C
.
.
.
void START_1()
{
UINT32 ctrexID;
ctrexID = taskSpawn ("QQQ1", ... QQQ, ...);
}
void START_2()
{
UINT32 ctrexID;
ctrexID = taskSpawn ("QQQ2", ... QQQ, ...);
}