= Atomic Operations = [[TOC(Projects/GSoC/Atomic_Operations, depth=2)]] '''Mentors:''' '''Students:''' '''Status:''' Uninitiated. '''Introduction:''' Candidate APIs / Implementations * [http://concurrencykit.org/ ConcurrencyKit]: A solution for concurrency problems that includes atomic operations. * [http://www.freebsd.org/cgi/man.cgi?query=atomic&apropos=0&sektion=0&manpath=FreeBSD+8.0-RELEASE&format=html FreeBSD Atomic Operations] '''Goal:''' To provide RTEMS with core services to solve synchronization problems on multicore platforms. '''Requirements:''' Advanced C and assembly language programming, familiarity with RTEMS kernel software architecture, good understanding of concurrency problems and solutions. '''Resources:''' * https://www.rtems.org/bugzilla/show_bug.cgi?id=1455 '''Acknowledgements''' * Who helped and did work? = Miscellaneous Sections = As the project progresses, you will need to add build instructions, etc and this page will evolve from a project description into a HOWTO. = Roadmap for ConcurrencyKit = A leading contender for this project is the ConcurrencyKit (ck). ck works on the 32-bit x86 architecture, so a first step would be to try compiling ck with rtems for pc386 and run a sample application under QEMU. Once a sample application is working, the next step would be to get as much of the ck regression suite to run as possible. Beyond that are many possible directions. Potential students should ask on the mailing list and work with potential mentors to design a project that suits their abilities and goals. = References = * TBD '''Other sections:''' If you have more to say about the project that doesn't fit in the proposed sections of this template, feel free to add other sections at will.