Google Code-In 2013 RTEMS Project Final Report

Between mid-November and early January, the RTEMS Project participated as one of ten mentoring organizations in the Google Code-In (GCI), a contest for pre-university students that encourages the involvement of students age 13-17 in open source communities.

During the 7 week time-frame of GCI, RTEMS Project had 39 students complete 265 tasks under the tutelage of 15 mentors. That is an average of over 5 tasks per day! 16 students completed the Getting Started with RTEMS task, which both provided useful feedback about new users trying to work with RTEMS and prepared the students for hands-on programming work with RTEMS. Of the 39 students, 7 of them completed more than 10 tasks, and our 2 grand-prize winners completed 103 tasks between them! RTEMS Project is proud of the efforts and accomplishments of these students, and grateful to the Open Source Programs Office, the mentors, organization administrators, and open source community who supported these and all the other GCI students.

The following provides some more details about the accomplishments of the students who worked with the RTEMS Project during this iteration of GCI. The attached chart shows a plot of the number of tasks that each student completed; each point along the X-axis is one of our (anonymous) student participants. Below are descriptions of some of the more notable accomplishments that the students achieved in each of the 5 task categories: Code, Documentation/Training, Outreach/Research, Quality Assurance, and User Interface.

Code

  • C99 “restrict” keyword added to Newlib C Library for POSIX conformance.
  • Ported the Rhealstone Benchmark to RTEMS, now available in testsuites/rhealstone.
  • Added Waf build support to the RTEMS examples-v2 and multiio repositories, and to Alan Cudmore’s RTEMS Kernel Image repository.
  • Refactored over a dozen BSPs to conform to guidelines determined by Vipul Nayyar’s GSoC 2013 project.
  • Refactored portions of the monolithic sp09 test case into new, finer-grained tests.
  • Created or fixed 9 POSIX timing tests.

Documentation / Training

  • Determined guidance for doxygen use in BSPs and added doxygen comments to about 40 BSPs.
  • Fixed documentation in the RTEMS POSIX user manual and in multiple test cases.

Outreach / Research

  • Created 2 video tutorials for Getting Started with RTEMS.
  • Updated the RTEMS wiki page on references to RTEMS with 6 years worth of references from Google Scholar.

Quality Assurance

  • Investigated and/or fixed over 20 bugs in the RTEMS Bugzilla.

User Interface

  • Updated the rtems-graphics-toolkit repository and fixed some bugs.

Thanks again to everyone involved in making this GCI a successful one for RTEMS Project.

Gedare Bloom, RTEMS Project