RTEMS
Macros
Block Device Cache Configuration

Macros

#define CONFIGURE_APPLICATION_NEEDS_LIBBLOCK
 This configuration option is a boolean feature define. More...
 
#define CONFIGURE_BDBUF_BUFFER_MAX_SIZE
 This configuration option is an integer define. More...
 
#define CONFIGURE_BDBUF_BUFFER_MIN_SIZE
 This configuration option is an integer define. More...
 
#define CONFIGURE_BDBUF_CACHE_MEMORY_SIZE
 This configuration option is an integer define. More...
 
#define CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS
 This configuration option is an integer define. More...
 
#define CONFIGURE_BDBUF_MAX_WRITE_BLOCKS
 This configuration option is an integer define. More...
 
#define CONFIGURE_BDBUF_READ_AHEAD_TASK_PRIORITY
 This configuration option is an integer define. More...
 
#define CONFIGURE_BDBUF_TASK_STACK_SIZE
 This configuration option is an integer define. More...
 
#define CONFIGURE_SWAPOUT_BLOCK_HOLD
 This configuration option is an integer define. More...
 
#define CONFIGURE_SWAPOUT_SWAP_PERIOD
 This configuration option is an integer define. More...
 
#define CONFIGURE_SWAPOUT_TASK_PRIORITY
 This configuration option is an integer define. More...
 
#define CONFIGURE_SWAPOUT_WORKER_TASKS
 This configuration option is an integer define. More...
 
#define CONFIGURE_SWAPOUT_WORKER_TASK_PRIORITY
 This configuration option is an integer define. More...
 

Detailed Description

This section describes configuration options related to the Block Device Cache (bdbuf).

Macro Definition Documentation

◆ CONFIGURE_APPLICATION_NEEDS_LIBBLOCK

#define CONFIGURE_APPLICATION_NEEDS_LIBBLOCK

This configuration option is a boolean feature define.

In case this configuration option is defined, then the Block Device Cache is initialized during system initialization.

Default Configuration
If this configuration option is undefined, then the described feature is not enabled.
Notes
Each option of the Block Device Cache (bdbuf) configuration can be explicitly set by the user with the configuration options below. The Block Device Cache is used for example by the RFS and DOSFS filesystems.

Definition at line 81 of file appl-config.h.

◆ CONFIGURE_BDBUF_BUFFER_MAX_SIZE

#define CONFIGURE_BDBUF_BUFFER_MAX_SIZE

This configuration option is an integer define.

The value of this configuration option defines the maximum size of a buffer in bytes.

Default Value
The default value is 4096.
Value Constraints

The value of this configuration option shall satisfy all of the following constraints:

Definition at line 104 of file appl-config.h.

◆ CONFIGURE_BDBUF_BUFFER_MIN_SIZE

#define CONFIGURE_BDBUF_BUFFER_MIN_SIZE

This configuration option is an integer define.

The value of this configuration option defines the minimum size of a buffer in bytes.

Default Value
The default value is 512.
Value Constraints
The value of this configuration option shall be greater than or equal to 0 and less than or equal to UINT32_MAX.

Definition at line 122 of file appl-config.h.

◆ CONFIGURE_BDBUF_CACHE_MEMORY_SIZE

#define CONFIGURE_BDBUF_CACHE_MEMORY_SIZE

This configuration option is an integer define.

The value of this configuration option defines the size of the cache memory in bytes.

Default Value
The default value is 32768.
Value Constraints
The value of this configuration option shall be greater than or equal to 0 and less than or equal to SIZE_MAX.

Definition at line 140 of file appl-config.h.

◆ CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS

#define CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS

This configuration option is an integer define.

The value of this configuration option defines the maximum blocks per read-ahead request.

Default Value
The default value is 0.
Value Constraints
The value of this configuration option shall be greater than or equal to 0 and less than or equal to UINT32_MAX.
Notes
A value of 0 disables the read-ahead task (default). The read-ahead task will issue speculative read transfers if a sequential access pattern is detected. This can improve the performance on some systems.

Definition at line 163 of file appl-config.h.

◆ CONFIGURE_BDBUF_MAX_WRITE_BLOCKS

#define CONFIGURE_BDBUF_MAX_WRITE_BLOCKS

This configuration option is an integer define.

The value of this configuration option defines the maximum blocks per write request.

Default Value
The default value is 16.
Value Constraints
The value of this configuration option shall be greater than or equal to 0 and less than or equal to UINT32_MAX.

Definition at line 181 of file appl-config.h.

◆ CONFIGURE_BDBUF_READ_AHEAD_TASK_PRIORITY

#define CONFIGURE_BDBUF_READ_AHEAD_TASK_PRIORITY

This configuration option is an integer define.

The value of this configuration option defines the read-ahead task priority.

Default Value
The default value is 15.
Value Constraints
The value of this configuration option shall be a valid Classic API task priority. The set of valid task priorities is scheduler-specific.

Definition at line 197 of file appl-config.h.

◆ CONFIGURE_BDBUF_TASK_STACK_SIZE

#define CONFIGURE_BDBUF_TASK_STACK_SIZE

This configuration option is an integer define.

The value of this configuration option defines the task stack size of the Block Device Cache tasks in bytes.

Default Value
The default value is RTEMS_MINIMUM_STACK_SIZE.
Value Constraints

The value of this configuration option shall satisfy all of the following constraints:

  • It shall be greater than or equal to CONFIGURE_MINIMUM_TASK_STACK_SIZE.
  • It shall be less than or equal to a BSP-specific and application-specific value which depends on the size of the memory available to the application.
  • It shall be small enough so that the task stack space calculation carried out by <rtems/confdefs.h> does not overflow an integer of type uintptr_t.

Definition at line 226 of file appl-config.h.

◆ CONFIGURE_SWAPOUT_BLOCK_HOLD

#define CONFIGURE_SWAPOUT_BLOCK_HOLD

This configuration option is an integer define.

The value of this configuration option defines the swapout task maximum block hold time in milliseconds.

Default Value
The default value is 1000.
Value Constraints
The value of this configuration option shall be greater than or equal to 0 and less than or equal to UINT32_MAX.

Definition at line 244 of file appl-config.h.

◆ CONFIGURE_SWAPOUT_SWAP_PERIOD

#define CONFIGURE_SWAPOUT_SWAP_PERIOD

This configuration option is an integer define.

The value of this configuration option defines the swapout task swap period in milliseconds.

Default Value
The default value is 250.
Value Constraints
The value of this configuration option shall be greater than or equal to 0 and less than or equal to UINT32_MAX.

Definition at line 262 of file appl-config.h.

◆ CONFIGURE_SWAPOUT_TASK_PRIORITY

#define CONFIGURE_SWAPOUT_TASK_PRIORITY

This configuration option is an integer define.

The value of this configuration option defines the swapout task priority.

Default Value
The default value is 15.
Value Constraints
The value of this configuration option shall be a valid Classic API task priority. The set of valid task priorities is scheduler-specific.

Definition at line 278 of file appl-config.h.

◆ CONFIGURE_SWAPOUT_WORKER_TASK_PRIORITY

#define CONFIGURE_SWAPOUT_WORKER_TASK_PRIORITY

This configuration option is an integer define.

The value of this configuration option defines the swapout worker task priority.

Default Value
The default value is 15.
Value Constraints
The value of this configuration option shall be a valid Classic API task priority. The set of valid task priorities is scheduler-specific.

Definition at line 313 of file appl-config.h.

◆ CONFIGURE_SWAPOUT_WORKER_TASKS

#define CONFIGURE_SWAPOUT_WORKER_TASKS

This configuration option is an integer define.

The value of this configuration option defines the swapout worker task count.

Default Value
The default value is 0.
Value Constraints
The value of this configuration option shall be greater than or equal to 0 and less than or equal to UINT32_MAX.

Definition at line 296 of file appl-config.h.