RTEMS CPU Kit with SuperCore
|
To manage buffers we using buffer descriptors (BD). More...
#include <bdbuf.h>
Data Structures | |
struct | rtems_bdbuf_avl_node |
Data Fields | |
rtems_chain_node | link |
Link the BD onto a number of lists. More... | |
struct rtems_bdbuf_buffer::rtems_bdbuf_avl_node | avl |
rtems_disk_device * | dd |
disk device | |
rtems_blkdev_bnum | block |
block number on the device | |
unsigned char * | buffer |
Pointer to the buffer memory area. | |
rtems_bdbuf_buf_state | state |
State of the buffer. More... | |
uint32_t | waiters |
The number of threads waiting on this buffer. More... | |
rtems_bdbuf_group * | group |
Pointer to the group of BDs this BD is part of. More... | |
uint32_t | hold_timer |
Timer to indicate how long a buffer has been held in the cache modified. More... | |
int | references |
Allow reference counting by owner. More... | |
void * | user |
User data. More... | |
To manage buffers we using buffer descriptors (BD).
A BD holds a buffer plus a range of other information related to managing the buffer in the cache. To speed-up buffer lookup descriptors are organized in AVL-Tree. The fields 'dd' and 'block' are search keys.
rtems_bdbuf_group* rtems_bdbuf_buffer::group |
Pointer to the group of BDs this BD is part of.
uint32_t rtems_bdbuf_buffer::hold_timer |
Timer to indicate how long a buffer has been held in the cache modified.
rtems_chain_node rtems_bdbuf_buffer::link |
Link the BD onto a number of lists.
int rtems_bdbuf_buffer::references |
Allow reference counting by owner.
rtems_bdbuf_buf_state rtems_bdbuf_buffer::state |
State of the buffer.
void* rtems_bdbuf_buffer::user |
User data.
uint32_t rtems_bdbuf_buffer::waiters |
The number of threads waiting on this buffer.