loki666
rtems gp32 bsp maintainer
Hi all,
i've been working for a time now on gp32 bsp for rtems... and it's running great
so, first things first, what's rtems?
rtems is a very small (<70ko) executive RTOS, which means each rtems-application is linked with the rtems-os. which means rtems is not a multi-process OS, but still a full multi-tasking OS (you can't run 2 program, but the running program can run multiple threads).
and finally, rtems is a full arm toolchain ready to build .gxb.
for a complete description of features go check RTEMS web site.
What are the benefits:
- a full os with s/w timers, semaphore, threads, events, etc...
- easy port from linux to rtems (there is some ready-to-build library like zlib,tcl,readline,ncurses,...)
- you can control ISR with rtems
- c/cpp toolchain
the withdraws:
- still no smc write support (you can read files on smc... but cant write back yet)
So how to start:
1) go grab arm-rtems rpm...
ftp://ftp.rtems.com/pub/rtems/linux/redha...13.0-2.i686.rpm
ftp://ftp.rtems.com/pub/rtems/linux/redha...13.0-2.i686.rpm
ftp://ftp.rtems.com/pub/rtems/linux/redha...2.16-1.i686.rpm
ftp://ftp.rtems.com/pub/rtems/linux/redha...59-3.noarch.rpm
ftp://ftp.rtems.com/pub/rtems/linux/redha....5-2.noarch.rpm
install all of them... (will be installed in /opt/rtems-4.7)
2) grab rtems cvs
3) configure, compile and install rtems
and you are done.
there should be some .gxb in b-rtems tree (use #find -name ".gxb") that you can test on you gp32.
If you need some samples, you can check testsuite directory, and there is some Makefile templates in /path/to/rtems/make/Templates
If you are intersted with this, you can ask questions here.
i've been working for a time now on gp32 bsp for rtems... and it's running great
so, first things first, what's rtems?
rtems is a very small (<70ko) executive RTOS, which means each rtems-application is linked with the rtems-os. which means rtems is not a multi-process OS, but still a full multi-tasking OS (you can't run 2 program, but the running program can run multiple threads).
and finally, rtems is a full arm toolchain ready to build .gxb.
for a complete description of features go check RTEMS web site.
What are the benefits:
- a full os with s/w timers, semaphore, threads, events, etc...
- easy port from linux to rtems (there is some ready-to-build library like zlib,tcl,readline,ncurses,...)
- you can control ISR with rtems
- c/cpp toolchain
the withdraws:
- still no smc write support (you can read files on smc... but cant write back yet)
So how to start:
1) go grab arm-rtems rpm...
ftp://ftp.rtems.com/pub/rtems/linux/redha...13.0-2.i686.rpm
ftp://ftp.rtems.com/pub/rtems/linux/redha...13.0-2.i686.rpm
ftp://ftp.rtems.com/pub/rtems/linux/redha...2.16-1.i686.rpm
ftp://ftp.rtems.com/pub/rtems/linux/redha...59-3.noarch.rpm
ftp://ftp.rtems.com/pub/rtems/linux/redha....5-2.noarch.rpm
install all of them... (will be installed in /opt/rtems-4.7)
2) grab rtems cvs
Code:
#cvs -d :pserver:anoncvs@www.rtems.com:/usr1/CVS login
(type enter)
#cvs -d :pserver:anoncvs@www.rtems.com:/usr1/CVS -z 9 co -P rtems
Code:
#su
#export PATH=/opt/rtems-4.7/bin:$PATH
#cd /path/to/rtems
#./bootstrap -c
#./bootstrap
#cd /tmp
#mkdir b-rtems
#cd b-rtems
#/path/to/rtems/configure --target=arm-rtems4.7 --enable-posix \
--disable-networking --enable-cxx --disable-itron \
--enable-rtemsbsp=gp32 --prefix=/opt/rtems-4.7
#make all install
and you are done.
there should be some .gxb in b-rtems tree (use #find -name ".gxb") that you can test on you gp32.
If you need some samples, you can check testsuite directory, and there is some Makefile templates in /path/to/rtems/make/Templates
If you are intersted with this, you can ask questions here.