Interesting with the zero-copy loop buffer of GNU Radio

Hi,

I’m intersting with the buffer mechanism of GNU Radio. Is there any
document
about it? Or can someone explain it to me.

Many THANKS!

On Tue, Dec 12, 2006 at 04:42:50PM +0800, hanwen wrote:

Hi,

I’m intersting with the buffer mechanism of GNU Radio. Is there any document
about it? Or can someone explain it to me.

Many THANKS!

Hi Hanwen,

I’m not exactly sure what level of detail you’re looking for, but here
goes…

It’s basically a single writer, multiple reader FIFO with the FIFO
implemented as circular buffer using an MMU trick.

The high level interface is in gr_buffer.{h,cc}.

The circular buffer via MMU trick is factored out into
gr_vmcircbuf*.{h,cc}. The abstract interface to the trick is in
gr_vmcircbuf.h

http://www.gnu.org/software/gnuradio/doc/classgr__buffer.html

See especially the collaboration diagram for gr_block:;
http://www.gnu.org/software/gnuradio/doc/classgr__block.html

After taking a look at the code, let me know if you’ve got more
questions.

Eric