생소한 RTOS를 접하게 되었는데요...ANSI C/C++을 쓰려면?
이번에...새로운 프로젝트를 시작하게 되면서 Target system이 CEVA-dsp 라는...첨들어보는 시스템인데요.
그 전에는 TI-dsp 사용했습니다.
이전에는 BIOS 라고해서 소스는 공개되지않고 TI에서 제공되는 OS를 사용했는데...이넘은 그나마 C/C++어느정도 지원되고 iostream만 제외되어있었습니다. 그랬는데...
흐미야. -ㅁ-;; 이번에는 OS를...XINU라는걸 지원한다고 주네요? 근데 이녀석...가벼울것 같긴합니다만;;; system call이 ANSI C와는 영 다릅니다. (malloc이 아니라...좀 다른 함수명을 쓴다든지...) 그나마 다행이라면 소스가 전부 공개되어있어서, 컴파일해서 쓴다? 즉, OS를 이리저리 손대서 고칠수 있다...인데요.
이런 환경에서는 C++이 사용불가할것 같은 느낌입니다만, (아직 HW도 없고, 그냥 소스만 뎅그러니 있는 실정입니다. 그래서 HW오기 전에 미리미리 준비를 해놔야 나중에 조금 편해지니까 이리저리 살펴보는 중입니다) 이럴경우 standard C/C++ library를 사용하기 위해서는 어떤 과정이 필요한가요?
해당 회사의 홈페이지에는 버젓이
The compiler features include: Tailored for specific CEVA DSP-core architectures (GNU-based) C and C++ programming languages Zero-overhead loops and MAC instructions based on sophisticated data-flow analysis Assembly in-lining and explicit register allocation C/C++ variables and code allocation to a specific section Calling convention customization Extended accuracy by accumulator type usage Constant data relocation in program memory with transparent referencing Standard C/C++ libraries (including IEEE floating-point emulation, fast floating-point emulation and C stream I/O libraries)
라고 되어있어서...'와! 완젼 임베디드 리눅스랑 똑같나보다' 라고 좋아라하고있었지만...OS가 없을줄은 몰랐거든요;;; 짧게라도 도움을 주시면 감사하겠습니다 ^^;; (이렇게 맨땅에 헤딩하기란...예전에 NachOS 수업들을때가 생각나는군요. 그때 user쪽은 완젼 C lib가 없어서 불편하답시고 죄다 system call로 필요한 C lib를 만들어서 썼습니다만;; 지금은 그랬다가는 배가 산으로 갈것 같네요 ㅎㅎ)
I geuss you have to read a book.
Sorry I can not use korean in my computer.
The name of the book is "OPERATING SYSTEM DESIGN THE XINU APPROACH" by Dogulas Comer.
This book has appendix 2 xinu programmer's manual.
It is short leason but helpful.
Thanks.
LKW.
댓글 달기