Gsoc2012: Atomic operation for RTEMS

wei.a.yang at wei.a.yang at
Tue May 22 15:34:09 UTC 2012

Yeah, I am also intend to refer the implementation of FreeBSD kernel directly as far as possible. Only if there are some special needs we can refer other implementations.

在 2012-5-22,15:22,Sebastian Huber <sebastian.huber at> 写道:

> Hi,
> 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.
> _______________________________________________
> rtems-devel mailing list
> rtems-devel at

More information about the devel mailing list