Atomthreads: Open Source RTOS https://atomthreads.com en Home https://atomthreads.com/?q=node/1 <p>Atomthreads is a free, lightweight, portable, real-time scheduler for embedded systems.</p> <p>It is released under the flexible, open source <a href="/index.php?q=node/2" target="_self" title="BSD License">BSD license</a> and is free to use for commercial or educational purposes without restriction.</p> <p>It is targeted at systems that need only a scheduler and the usual RTOS primitives. No file system, IP stack or device drivers are included, but developers can bolt on their own as required. Atomthreads will always be a small number of C files which are easy to port to any platforms that require threading by adding a simple architecture-specific file.</p> <p>&nbsp;</p><p><span style="font-size: 23px; font-weight: bold;"><strong>Features<span style="font-weight: normal; font-size: 10px;"><strong>&nbsp;</strong></span></strong></span></p> <ul> <li>OS Features <ul> <li>Preemptive scheduler with 255 priority levels</li> <li>Round-robin at same priority level</li> <li>Semaphore</li> <li>Mutex</li> <li>Queue</li> <li>Timers</li> </ul> </li> <li>Lightweight: the entire operating system fits into a few C files</li> <li>Highly portable ANSI C code not tied to any compiler</li> <li>Easy to read, well-documented, doxygen-commented code</li> <li>Can be ported to any CPU architecture with a single architecture-specific module</li> <li>Automated test suite proves reliable kernel operation</li> <li>Free and flexible open source, BSD-licensed code</li> <li>Readable code provides a good platform for learning RTOS internals</li> <li>For a more complete feature list, see the <a href="/index.php?q=node/11" target="_self" title="Free RTOS Features">Features page</a>.</li> </ul> <div>&nbsp;</div> <h1><strong>Supported CPU Architectures</strong></h1><p>To prove the lightweight and portable nature of Atomthreads, ports have been released for a range of architectures from small 8-bit microcontrollers to larger 32-bit processors.</p><table border="2"><tbody><tr><td><strong>CPU Architecture</strong></td><td><strong>Compiler Toolchain</strong></td><td><strong>Port Documentation</strong></td></tr><tr><td>AVR/ATmega</td><td>GCC</td><td><span style="font-family: Arial, Helvetica, sans-serif; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; font-size: small;"><a href="/index.php?q=node/20" title="AVR RTOS Port" style="color: #505050; text-decoration: none;">[View Documentation]</a></span></td></tr><tr><td>STM8/STM8S</td><td>Cosmic, IAR, Raisonance, SDCC&nbsp;</td><td><span style="font-family: Arial, Helvetica, sans-serif; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; font-size: small;"><a href="/index.php?q=node/19" title="STM8 RTOS Port" style="color: #505050; text-decoration: none;">[View Documentation]</a></span></td></tr><tr><td>ARM926EJ-S</td><td>GCC</td><td>&nbsp;</td></tr><tr><td>DaVinci DM365/DM368 (ARM9)</td><td>GCC</td><td>&nbsp;</td></tr></tbody></table> <p>&nbsp;</p> <h1><strong>Documentation</strong></h1> <p>All source is documented using Doxygen. Generated documentation can be found here:</p> <ul> <li><a href="/doxygen/kernel/files.html" target="_self" title="Kernel Documentation">Kernel</a></li> <li>Architecture ports:&nbsp;<a href="/doxygen/avr/files.html" target="_self" title="AVR Port Documentation">AVR</a>,&nbsp;<a href="/doxygen/stm8/files.html" title="STM8 Port Documentation" style="color: #505050; text-decoration: none;">STM8</a></li> </ul> <p>To find out more about the internals of Atomthreads, and to learn how to port it to your target architecture, read the <a href="/index.php?q=node/3" target="_self" title="Atomthreads Porting Guide">Porting Guide</a>.</p> Fri, 13 Nov 2009 22:29:01 +0000 klawson 1 at https://atomthreads.com