|
xt-sdk 文档 v1.0.3
xt-sdk 嵌入式 SDK API 参考
|
xt_vfs 可移植层——锁宏、内存宏、线程上下文 更多...
结构体 | |
| struct | xt_vfs_thread_ctx |
| 线程上下文——存储每线程 errno 和可选 CWD 更多... | |
| struct | xt_vfs_config |
| VFS 初始化配置 更多... | |
宏定义 | |
| #define | XT_VFS_ENABLE_THREAD_SAFE 1 |
| 线程安全开关,1=启用互斥锁,0=裸机无锁 | |
| #define | XT_VFS_USE_HEAP 1 |
| 堆内存开关,1=使用 xt_malloc,0=外部/静态内存 | |
| #define | XT_VFS_ENABLE_STATIC_TEST 0 |
| 相对路径(CWD)开关,1=启用 chdir/getcwd | |
| #define | XT_VFS_PATH_MAX 128 |
| 最大路径长度(含结尾 '\0') | |
| #define | XT_VFS_FILENAME_MAX 64 |
| 最大文件名长度(含结尾 '\0') | |
| #define | XT_VFS_MOUNT_PREFIX_MAX 16 |
| 挂载前缀最大长度,xt_vfs_mount_t.prefix 数组大小 | |
| #define | XT_VFS_MAX_MOUNTS 4 |
| 最大挂载点数(静态模式) | |
| #define | XT_VFS_MAX_FILES 8 |
| 最大同时打开文件数(静态模式) | |
| #define | XT_VFS_MAX_DIRS 4 |
| 最大同时打开目录数(静态模式) | |
| #define | XT_VFS_MAX_THREADS 8 |
| 最大线程上下文槽位数 | |
| #define | XT_VFS_LOCK_DEF() |
| 在结构体中声明锁变量 | |
| #define | XT_VFS_LOCK_INIT(vfs) |
| 初始化锁(创建 mutex 对象) | |
| #define | XT_VFS_LOCK(vfs) |
| 获取锁(阻塞等待) | |
| #define | XT_VFS_UNLOCK(vfs) |
| 释放锁 | |
| #define | XT_VFS_LOCK_DEINIT(vfs) |
| 销毁锁(删除 mutex 对象) | |
| #define | XT_VFS_MALLOC(size) |
| 堆模式:使用 xt_malloc/xt_free/xt_calloc | |
| #define | XT_VFS_FREE(ptr) |
| #define | XT_VFS_CALLOC(n, sz) |
类型定义 | |
| typedef struct xt_vfs_thread_ctx | xt_vfs_thread_ctx_t |
| 线程上下文——存储每线程 errno 和可选 CWD | |
| typedef struct xt_vfs_config | xt_vfs_config_t |
| VFS 初始化配置 | |
xt_vfs 可移植层——锁宏、内存宏、线程上下文
SPDX-FileCopyrightText: 2026 深圳市天工聚创科技有限公司 SPDX-License-Identifier: Apache-2.0
在文件 xt_vfs_port.h 中定义.
| #define XT_VFS_CALLOC | ( | n, | |
| sz ) |
在文件 xt_vfs_port.h 第 138 行定义.
| #define XT_VFS_ENABLE_STATIC_TEST 0 |
相对路径(CWD)开关,1=启用 chdir/getcwd
目录功能开关,1=启用目录操作,0=仅文件操作
静态内存测试模式,1=强制静态+固定数组
在文件 xt_vfs_port.h 第 48 行定义.
| #define XT_VFS_ENABLE_THREAD_SAFE 1 |
线程安全开关,1=启用互斥锁,0=裸机无锁
在文件 xt_vfs_port.h 第 28 行定义.
| #define XT_VFS_FILENAME_MAX 64 |
最大文件名长度(含结尾 '\0')
在文件 xt_vfs_port.h 第 58 行定义.
| #define XT_VFS_FREE | ( | ptr | ) |
在文件 xt_vfs_port.h 第 137 行定义.
| #define XT_VFS_LOCK | ( | vfs | ) |
| #define XT_VFS_LOCK_DEF | ( | ) |
| #define XT_VFS_LOCK_DEINIT | ( | vfs | ) |
销毁锁(删除 mutex 对象)
在文件 xt_vfs_port.h 第 108 行定义.
| #define XT_VFS_LOCK_INIT | ( | vfs | ) |
初始化锁(创建 mutex 对象)
在文件 xt_vfs_port.h 第 96 行定义.
| #define XT_VFS_MALLOC | ( | size | ) |
| #define XT_VFS_MAX_DIRS 4 |
最大同时打开目录数(静态模式)
在文件 xt_vfs_port.h 第 78 行定义.
| #define XT_VFS_MAX_FILES 8 |
最大同时打开文件数(静态模式)
在文件 xt_vfs_port.h 第 73 行定义.
| #define XT_VFS_MAX_MOUNTS 4 |
最大挂载点数(静态模式)
在文件 xt_vfs_port.h 第 68 行定义.
| #define XT_VFS_MAX_THREADS 8 |
最大线程上下文槽位数
在文件 xt_vfs_port.h 第 83 行定义.
| #define XT_VFS_MOUNT_PREFIX_MAX 16 |
挂载前缀最大长度,xt_vfs_mount_t.prefix 数组大小
在文件 xt_vfs_port.h 第 63 行定义.
| #define XT_VFS_PATH_MAX 128 |
最大路径长度(含结尾 '\0')
在文件 xt_vfs_port.h 第 53 行定义.
| #define XT_VFS_UNLOCK | ( | vfs | ) |
| #define XT_VFS_USE_HEAP 1 |
堆内存开关,1=使用 xt_malloc,0=外部/静态内存
在文件 xt_vfs_port.h 第 33 行定义.
| typedef struct xt_vfs_config xt_vfs_config_t |
VFS 初始化配置
根据 XT_VFS_USE_HEAP 选择内存来源:
| typedef struct xt_vfs_thread_ctx xt_vfs_thread_ctx_t |
线程上下文——存储每线程 errno 和可选 CWD