内存环形缓冲区ringbuffer.PDF

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
内存环形缓冲区ringbuffer

内存环形缓冲区ringbuffer RealTouch 评估板 RT‐Thread 入门文档    版本号:1.0.0  日期:2012/8/14  修订记录       日期  作者  修订历史  2012/8/14  bloom5  创建文档  实验目的  快速了解 ringbuffer 相关背景知识  掌握了解 ringbuffer 相关 API 硬件说明 本实验使用 RT-Thread 官方的 Realtouch 开发板作为实验平台。涉及 到的硬件主要为  串口 3,作为 rt_kprintf 输出,需要连接 JTAG 扩展板 具体请参见《Realtouch开发板使用手册》  实验原理及程序结构 Ringbuffer的数据结构 struct rt_ringbuffer { rt_uint16_t read_index, write_index; rt_uint8_t *buffer_ptr; rt_uint16_t buffer_size; }; 环形 Buffer的特点: 通常包含一个读指针(read_index)和一个写指针(write_index)。 读指针指向环形 Buffer中第一个可读的数据,写指针指向环形 Buffer中 第一个可写的缓冲区。通过移动读指针和写指针就可以实现Buffer的数据 读取和写入。在通常情况下,环形 Buffer 的读用户仅仅会影响读指针,而 写用户也仅仅会影响写指针。 环形 Buffer的原理:首先在内存里开辟一片区域(大小为 buffer_size),对于写用户,顺序往 Buffer 里写入东西,直到写满为止; 对于读用户,顺次从 Buffer 里读出东西,直到读空为止。 有效存储空间与 buffer_size 的区别:有效存储空间是指那些没有存 放数据,或者以前存放过但已经处理过的数据,就是可用的空间大小;而 buffer_size指的是总大小。 通过上面介绍可知,环形 Buffer 在物理上仍然是一块连续的内存 Buffer,只不过其空间会被循环使用而已。示意图如下,根据读写指针的 位置可分为两

文档评论(0)

ldj215323 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档