zephyr/samples
Andrew Boie f18f102feb nanokernel: add optional ring buffer data type
This patch is based on some code contributed by Dirk Brandewie.

This is a generic data structure for queuing data in a FIFO ring
buffer. Any given data enqueued is annotated with an app-specific
type identifier, and small integral value. Use of a data pointer
is optional if the necessary information can be conveyed in the
annotations. We want all the metadata to fit in a single DWORD.
The ring buffer always contains at least one free dword in the
buffer to correctly distinguish between full and empty queues.

Concurrency control is almost nonexistent; depending on usage,
apps may want to introduce the usage of semaphores and/or mutexes
to preserve the integrity of the ring buffer or provide notifications
when data is available.

Change-Id: I860262d2afc96db4476d4c695a92f7da355ab732
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2016-02-05 20:15:34 -05:00
..
bluetooth Bluetooth: Add new attribute with signed write permission 2016-02-05 20:15:24 -05:00
include sys_clock: make public some timing utilities 2016-02-05 20:15:27 -05:00
microkernel Improve profiler sample. 2016-02-05 20:15:28 -05:00
nanokernel nanokernel: add optional ring buffer data type 2016-02-05 20:15:34 -05:00
network net: apps: Add dtls-server test application 2016-02-05 20:15:24 -05:00