Gsoc2012: Atomic operation for RTEMS

Sebastian Huber sebastian.huber at
Tue May 22 07:22:36 UTC 2012


thanks for your really good overview.

On 05/21/2012 05:39 PM, yangwei weiyang wrote:
> Hi all,
> After some research and analysis i think it is necessary to define all
> five types of generic functions. Because first two types atomic_load
> generic functions and atomic_store generic functions are basic atomic
> operations which is used to build some lock-less date and algorithms.
> The third type atomic_fetch-and-modify generic functions(like and,
> add, sub, or and xor) most of which are used to build some
> synchronization primitives should also be implemented. The fifth type
> atomic_compare_exchange generic functions is very important to build
> some synchronization primitives. Although the fourth type
> atomic_exchange generic functions is not defined by FreeBSD kernel but
> implemented by NetBSD, if this type is easy to be implemented we can
> consider define it.
> If this is ok for everyone i will start to define those type of
> functions in "rtems" style.

I would focus more on the FreeBSD API since we currently port its network stack 
to RTEMS.  FreeBSD has proven to provide competitive SMP performance thus its 
atomic API is capable enough.

Sebastian Huber, embedded brains GmbH

Address : Obere Lagerstr. 30, D-82178 Puchheim, Germany
Phone   : +49 89 18 90 80 79-6
Fax     : +49 89 18 90 80 79-9
E-Mail  : sebastian.huber at
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.

More information about the devel mailing list