📌 VxWorks 공유 데이터의 일반적인 사용 사례는 하나이상의 RT에서 PS 커널 작업과 같은 다른 메모리 공간에서 Task 사이에 정보를 공유하는 것이다. 최초에 공유메모리 생성시 OM_CREATE옵션을 사용하고, 접근시에는 0을사용한다. 🔔 생성 SD_ID SdId; int *pValue; SdId = sdOpen(“/SharedData”, 0, OM_CREATE, 1000, 0, SD_ATTR_RW | SD_CACHE_OFF, (void **)&pValue); * pValue = 0x12345678; 🔔 접근 SD_ID SdId; int *pValue; SdId = sdOpen(“/SharedData”, 0, 0, 1000, 0, SD_ATTR_RO | SD_CACHE_OFF, (void **)&..
📌 Ring buffer rngCreate() 함수를 통해 링버퍼를 만든다. 함수인자로 링버퍼의 전체 크기가 들어가며 위 소스에서는 구조체 크기 20byte * 10 = 200byte크기의 링버퍼가 생성된다. rngBufPut() 함수를 사용하여 링버퍼에 데이터를 저장한다. rngFreeBytes() 함수를 통해 링버퍼를 사용하고 남은 공간의 크기를 알 수 있다. rngNBytes() 함수를통해 현재 사용하고있는 공간의 크기를 알 수 있다. rngIsFull() 함수를통해 링버퍼가 꽉찻는지의 여부를 BOOL 타입으로 알 수 있다. rngIsEmpty() 함수를 통해 버퍼가 비어있는지의 여부를 판단할 수 있다. rngBufGet() 함수를 통해 링버퍼의 데이터를 읽어올 수 있다. rngDelete() 함수..
[Pipe Examples ] ㆍ저수준 입출력 함수로 파일 핸들러를 사용하듯이 심플하게 사용가능