= RTEMS Workout at FOSS.IN = This is the standard workout proposal template provided by the FOSS.IN team. = Proposers = Aanjhan Ranganathan and Santosh G. Vattam. Aanjhan Ranganathan is a Masters Student at Ecole Polytechnique Federale de Lausanne(EPFL), Lausanne, Switzerland. He worked on RTEMS as part of Google Summer of Code 2009. His project was [http://rtems.com/wiki/index.php/MMU_Support MMU Support for RTEMS] and he was mentored by Thomas Doerfler. He has been a part of FOSS.IN since 2005 and presented a talk at FOSS.IN last year as well. Santosh G. Vattam worked on RTEMS Testing as part of Google Summer of Code 2009. His project was [http://rtems.com/wiki/index.php/RTEMS_Coverage_Analysis Coverage Analysis] for RTEMS and he was mentored by Joel Sherrill. He has been a part of FOSS.IN since 2008. = About RTEMS = RTEMS (RealĀ­Time Executive for Multiprocessor Systems) is a free realĀ­time operating system designed for deeply embedded systems. It is a free open source solution that supports multi processor systems and has been ported to over a dozen CPU architectures and includes support for over 100 boards. RTEMS is designed to support applications with the most stringent real time requirements while being compatible with open standards such as POSIX. RTEMS includes optional functional features such as TCP/IP and various file systems while still offering minimum executable sizes under 20 KB in useful configurations. RTEMS is used in a wide variety of application domains including space, physics research, communications and industrial control as well as in general computer science research projects. For more details on History, Applications etc visit the [http://www.rtems.com/ RTEMS Homepage] = Purpose = = Pre-requisites = = Hardware/Software = * Laptop with GNU/Linux installed on it (preferably a RedHat/Fedora based distro). * [http://www.rtems.com/wiki/index.php/Virtual_Machines_for_RTEMS_Development Virtual Machine] images will be provided for development. So installing [http://www.vmware.com/products/player/ VMWare Player] or [http://www.virtualbox.org/ VirtualBox] aprior will come in handy. = Brainware = * Programming Language: C * Basic bash Shell scripting * Interest and high motivation to work on embedded systems (both with arch/board simulators and real boards) * Loads of patience (for debugging, debugging embedded systems is not trivial). = Links to overall design/architecture = # Most documentation is available in [http://www.rtems.com/onlinedocs.html Online Docs] # [http://www.rtems.com/moodle/course/category.php?id=2 RTEMS University] - Presentations on Introduction, Getting Started etc. = Pre-event Preparation = * Install and configure a Virtual Machine. Virtual Machine images will be provided. * If VM is not preferred by the participant then one can build the RTEMS toolchain and then build RTEMS. * Build instructions for the toolchain for Debian/Ubuntu - [http://rtems.com/wiki/index.php/Building_the_RTEMS_toolset_on_Ubuntu here] * Or for a [http://rtems.com/wiki/index.php/Quick_Start Quick Start] using prebuilt tools * Run the custom "[http://rtems.com/wiki/index.php/GSoC_Getting_Started Hello World]" program to confirm your build is fine. * Read basic design docs of RTEMS. = Tasks = * Getting MMU support code from GSOC project cleaned up, add more features as listed on "Future work" section of the GSOC report * Improving code coverage with libcsupport included. We shall be focusing on the following BSPs: * pc386 * uC5282 since these BSPs work on Free simulators that have coverage enabled and the reports can be generated on the spot quickly. * Some basic UI stuff - E.g.: Some improvements to Roxana's work. * Clean ups and documentation. * Fixing easy/medium bugs chosen from the RTEMS Bugzilla. * Writing a UI in python for Coverage analysis. = Existing work = = Getting in touch = * [http://www.rtems.org/ml/rtems-users RTEMS Users Mailing list] * Internet Relay Chat #rtems @ freenode.net * Individuals for FOSS.IN Workout ''aanjhan at gmail dot com'' and ''vattam dot santosh at @ gmail dot com'' = Participants = * Aanjhan Ranganathan * Madhusudhan C S * Santosh Vattam * [add your name here]