xwer_t xwds_obj_add(struct xwds *ds, struct xwds_object *obj)
xwer_t xwds_obj_probe(struct xwds_object *obj, xwobj_gc_f gcfunc)
xwer_t xwds_obj_put(struct xwds_object *obj)
xwer_t xwds_obj_remove(struct xwds_object *obj)
void xwds_obj_destruct(struct xwds_object *obj)
void xwds_obj_construct(struct xwds_object *obj)
xwer_t xwds_obj_del(struct xwds *ds, struct xwds_object *obj)
xwer_t xwds_obj_start(struct xwds_object *obj)
xwsq_t xwds_obj_get_tik(struct xwds_object *obj)
xwsq_t xwds_obj_get_refcnt(struct xwds_object *obj)
xwer_t xwds_obj_resume(struct xwds_object *obj)
xwer_t xwds_obj_suspend(struct xwds_object *obj)
xwer_t xwds_obj_grab(struct xwds_object *obj)
xwer_t xwds_obj_stop(struct xwds_object *obj)
static void xwlib_bclst_add_tail(struct xwlib_bclst_node *head, struct xwlib_bclst_node *newn)
将一个节点加入链表尾部(链表头的前面)
static void xwlib_bclst_init_node(struct xwlib_bclst_node *n)
初始化一个链表节点。
static void xwlib_bclst_del_init(struct xwlib_bclst_node *node)
删除一个节点,并重新初始化它
#define EOWNER
Owner error
#define EPERM
Operation not permitted
#define xwaop_teq_then_sub(type, a, t, v, nv, ov)
对原子变量进行原子操作:读取-测试“相等”-相减-回写
#define xwaop_tge_then_add(type, a, t, v, nv, ov)
对原子变量进行原子操作:读取-测试“大于等于”-相加-回写
#define xwaop_tgt_then_sub(type, a, t, v, nv, ov)
对原子变量进行原子操作:读取-测试“大于”-相减-回写
#define xwaop_teq_then_add(type, a, t, v, nv, ov)
对原子变量进行原子操作:读取-测试“相等”-相加-回写
xwer_t(* xwobj_gc_f)(struct xwos_object *)
垃圾回收函数指针类型
xwer_t xwos_object_activate(struct xwos_object *obj, xwobj_gc_f gcfunc)
激活一个XWOS对象(将其引用计数初始化位1)
void xwos_object_construct(struct xwos_object *obj)
XWOS对象的构造函数
xwsq_t xwos_object_get_refcnt(struct xwos_object *obj)
获取XWOS对象的引用计数
void xwos_object_destruct(struct xwos_object *obj)
XWOS对象的析构函数
static void xwos_sqlk_wr_lock_cpuirqsv(struct xwos_sqlk *sql, xwreg_t *cpuirq)
XWOS API:开启写临界区,保存本地CPU的中断标志并关闭
static void xwos_sqlk_wr_unlock_cpuirqrs(struct xwos_sqlk *sql, xwreg_t cpuirq)
XWOS API:关闭写临界区,恢复本地CPU的中断标志
struct xwlib_bclst_node node
struct xwos_sqlk devlistlock
struct xwlib_bclst_node devhead