# # For a description of the syntax of this configuration file, # see the file kconfig-language.txt in the NuttX tools repository. # config FS_AIO bool "Asynchronous I/O support" default n depends on SCHED_WORKQUEUE ---help--- Enable support for aynchronous I/O. This selection enables the interfaces declared in include/aio.h. if FS_AIO config FS_NAIOC int "Pre-allocated AIO containers" default 8 ---help--- The AIO containers hold an AIO control block and appends information needed by the logic running within the RTOS. These structures are pre-allocated, the number pre-allocated controlled by this setting. This setting controls the number of asynchronous I/O operations that can be queued at one time. When this count is exhausted, the caller of aio_read(), aio_write(), or aio_fsync() will be forced to wait for an available container. That wait is minimized because each container is released prior to starting the next I/O. The AIO logic includes priority inheritance logic to prevent priority inversion problems: The priority of the low-priority work queue will be boosted, if necessary, to level of the waiting thread. endif