RTEMS for Embedded Software Developers/RTEMS GIT Repository
This is a stub. A source to reference is: http://wiki.rtems.org/wiki/index.php/RTEMS_GIT_Repository The purpose of this section is to ensure new RTEMS developers know the existence, intent, and how to use existing RTEMS applications and addons available to the RTEMS community.
The website is http://git.rtems.org/ .
Examples v2
[edit | edit source]stub.
Hello World
[edit | edit source]The hello world example is designed to familiarize the user with using both the classic RTEMS interface, as well as the POSIX interface.
Include a screen shot of what the result should look like.
Now that the hello world application has been covered, we will move on to ...
Ticker
[edit | edit source]A set of dynamic applications. Put in pedagogical order.
- Low Ticker Example: discuss what functionality it's testing, why that functionality is needed, and how to extend it.
- Low Ticker Example 1: discuss what functionality it's testing, why that functionality is needed, and how to extend it.
- Low Ticker Example 2: discuss what functionality it's testing, why that functionality is needed, and how to extend it.
- Ticker Example: discuss what functionality it's testing, why that functionality is needed, and how to extend it.
Misc
[edit | edit source]Fill out each subsection with explanation
Ada main will be discussed in the Ada section
Qemu vfat: will be discussed with the File IO section
Minimum: a minimal example using the RTEMS application build system. Present before AppLib
x86_display_cpu: a simple, but functional, example of an RTEMS application.
Nano Second Tick Wrap: a simple, but functional, example of an RTEMS application
Application / Library (AppLib) another example of how to use the RTEMS build system
Board Support Package Command Line (BSPCmdline) is: ...
Extracting RTEMS information example: gets the assembler, cpu, compiler and linker flags from RTEMS. Walk the user through how to use the scheduling simulator as-is. Devise examples as necessary.
benchmarks: nbench
[edit | edit source]Why to use nbench with RTEMS
What nbench tests
How to use nbench
What if: the developer used nbench to compare ...
Gnu Debugger: GDB
[edit | edit source]An example for debugging...
Debugging is critical—this should be thoroughly discussed.
Debugging is somewhat complex, but generic so should be towards the end of the actual content, but before special topics.
File IO / File system: In Memory File System
[edit | edit source]Why use the in memory file system
What is the in memory file system
Extending the example
File IO can lead to memory issues, and is somewhat specific, so present after GDB
U Boot Environmental Variables: uboot
[edit | edit source]RTEMS Addon Packages
[edit | edit source]Notes to author: Very little user interaction required. Porting your own custom libraries is another section.
Main purpose of this pass is to keep the warm/fuzzy feeling, while adding some fluency. Secondarily, show new users that there are addon packages to RTEMS.
Explain dependencies in a general way.
Discuss building and demo-ing the example tests.
Reference last part of: http://www.rtems.org/wiki/index.php/RTEMS_Add-On_Packages
Multi IO
[edit | edit source]Gets a user started on the RTEMS shell quickly. Definitely hardware oriented. The first reference would be a good introduction to something slightly more complicated than Examples v2, while the second reference could be used to look at how to get networking to interact with the shell.
http://rtemsramblings.blogspot.com/2011_02_01_archive.html
http://rtemsramblings.blogspot.com/2011/09/rtems-pair-programming.html
RTEMS Testing
[edit | edit source]Cover the simpler parts of this:
rtems-test-template: needed for illustrating how to make testsuites for rtems libraries.
qemu-support: needed for networking
sim-scripts: should be mentioned in last chapter so users of hardware not in Qemu can test code.
simple-build-script: cover this in last chapter to get users up-and-running quickly.
rtems-libbsd
[edit | edit source]This looks like a way to ease users into networking, and should be covered prior to (or in conjunction with) network-demos.
Cover the tests. Include output.
Network Demos
[edit | edit source]Discuss why the network demos.
Explain how to get TCP applications running on Qemu. http://www.rtems.org/wiki/index.php/QEMU
Extend the examples by showing how to get the desired output.
Extend the examples by showing bit-rates/performance/stress testing.
Extend the examples by having the application transmit information related to settings and statistics.
OS Web Monitoring
[edit | edit source]This might be one of the ways to extend the network-demos.
RTEMS Graphics Toolkit
[edit | edit source]If easy to explain walk the reader through building Micro-Windows and running on Qemu.
http://www.rtems.org/wiki/index.php/RTEMSGraphicsToolkit
As the knowledge from the RTEMS Graphics Toolkit are most likely not going to be built upon this will likely be a special topic.