XWOS API
3.0
XWOS API参考手册
|
结构体 | |
struct | xwos_splk |
XWOS API:自旋锁 更多... | |
函数 | |
static void | xwos_splk_init (struct xwos_splk *spl) |
XWOS API:初始化自旋锁 | |
static void | xwos_splk_lock (struct xwos_splk *spl) |
XWOS API:上锁自旋锁,若自旋锁已开启临界区,就自旋等待 | |
static xwer_t | xwos_splk_trylock (struct xwos_splk *spl) |
XWOS API:尝试上锁自旋锁 | |
static void | xwos_splk_unlock (struct xwos_splk *spl) |
XWOS API:解锁自旋锁 | |
static void | xwos_splk_lock_cpuirq (struct xwos_splk *spl) |
XWOS API:上锁自旋锁,并关闭本地CPU的中断 | |
static xwer_t | xwos_splk_trylock_cpuirq (struct xwos_splk *spl) |
XWOS API:尝试上锁自旋锁,并关闭本地CPU的中断 | |
static void | xwos_splk_unlock_cpuirq (struct xwos_splk *spl) |
XWOS API:解锁自旋锁,并开启本地CPU的中断 | |
static void | xwos_splk_lock_cpuirqsv (struct xwos_splk *spl, xwreg_t *cpuirq) |
XWOS API:上锁自旋锁,保存本地CPU的中断标志并关闭 | |
static xwer_t | xwos_splk_trylock_cpuirqsv (struct xwos_splk *spl, xwreg_t *cpuirq) |
XWOS API:尝试上锁自旋锁,保存本地CPU的中断标志并关闭 | |
static void | xwos_splk_unlock_cpuirqrs (struct xwos_splk *spl, xwreg_t cpuirq) |
XWOS API:解锁自旋锁,并恢复本地CPU的中断标志 | |
static void | xwos_splk_lock_irqs (struct xwos_splk *spl, const xwirq_t irqs[], xwsz_t num) |
XWOS API:上锁自旋锁,并关闭部分中断 | |
static xwer_t | xwos_splk_trylock_irqs (struct xwos_splk *spl, const xwirq_t irqs[], xwsz_t num) |
XWOS API:尝试上锁自旋锁,并关闭部分中断 | |
static void | xwos_splk_unlock_irqs (struct xwos_splk *spl, const xwirq_t irqs[], xwsz_t num) |
XWOS API:解锁自旋锁,并开启部分中断 | |
static void | xwos_splk_lock_irqssv (struct xwos_splk *spl, const xwirq_t irqs[], xwreg_t flags[], xwsz_t num) |
XWOS API:上锁自旋锁,保存部分中断的中断标志并关闭 | |
static xwer_t | xwos_splk_trylock_irqssv (struct xwos_splk *spl, const xwirq_t irqs[], xwreg_t flags[], xwsz_t num) |
XWOS API:尝试上锁自旋锁,保存部分中断的中断标志并关闭 | |
static void | xwos_splk_unlock_irqsrs (struct xwos_splk *spl, const xwirq_t irqs[], xwreg_t flags[], xwsz_t num) |
XWOS API:解锁自旋锁,并恢复部分中断的中断标志 | |
static void | xwos_splk_lock_bh (struct xwos_splk *spl) |
XWOS API:上锁自旋锁,关闭本地CPU的中断底半部 | |
static xwer_t | xwos_splk_trylock_bh (struct xwos_splk *spl) |
XWOS API:尝试上锁自旋锁,关闭本地CPU的中断底半部 | |
static void | xwos_splk_unlock_bh (struct xwos_splk *spl) |
XWOS API:解锁自旋锁,开启本地CPU的中断底半部 | |
技术参考手册: 自旋锁
xwos_splk_init()
:静态初始化xwos_splk_lock()
:上锁,关闭抢占xwos_splk_trylock()
:尝试上锁,关闭抢占xwos_splk_unlock()
:解锁,开启抢占xwos_splk_lock_cpuirq()
:上锁,关闭抢占、CPU中断xwos_splk_trylock_cpuirq()
:尝试上锁,关闭抢占、CPU中断xwos_splk_unlock_cpuirq()
:解锁,开启抢占、CPU中断xwos_splk_lock_cpuirqsv()
:上锁,关闭抢占,保存CPU中断标志并关闭xwos_splk_trylock_cpuirqsv()
:尝试上锁,关闭抢占,保存CPU中断标志并关闭xwos_splk_unlock_cpuirqrs()
:解锁,开启抢占,恢复CPU中断xwos_splk_lock_irqs()
:上锁,关闭抢占,关闭部分中断xwos_splk_trylock_irqs()
:尝试上锁,关闭抢占,关闭部分中断xwos_splk_unlock_irqs()
:解锁,开启抢占、开启部分中断xwos_splk_lock_irqssv()
:上锁,关闭抢占,保存部分中断标志并关闭xwos_splk_trylock_irqssv()
:尝试上锁,关闭抢占,保存部分中断标志并关闭xwos_splk_unlock_irqsrs()
:解锁,开启抢占、恢复部分中断xwos_splk_lock_bh()
:上锁,关闭抢占、中断底半部xwos_splk_trylock_bh()
:尝试上锁,关闭抢占、中断底半部xwos_splk_unlock_bh()
:解锁,开启抢占、中断底半部C++头文件: xwos/osal/lock/spinlock.hxx
|
inlinestatic |
XWOS API:初始化自旋锁
[in] | spl | 自旋锁的指针 |
在文件 spinlock.h 第 84 行定义.
|
inlinestatic |
XWOS API:上锁自旋锁,若自旋锁已开启临界区,就自旋等待
[in] | spl | 自旋锁的指针 |
在文件 spinlock.h 第 98 行定义.
|
inlinestatic |
XWOS API:上锁自旋锁,关闭本地CPU的中断底半部
[in] | spl | 自旋锁的指针 |
在文件 spinlock.h 第 353 行定义.
|
inlinestatic |
XWOS API:上锁自旋锁,并关闭本地CPU的中断
[in] | spl | 自旋锁的指针 |
在文件 spinlock.h 第 142 行定义.
XWOS API:上锁自旋锁,保存本地CPU的中断标志并关闭
[in] | spl | 自旋锁的指针 |
[out] | cpuirq | 缓冲区指针,用于返回本地CPU的中断标志 |
在文件 spinlock.h 第 187 行定义.
|
inlinestatic |
XWOS API:上锁自旋锁,并关闭部分中断
[in] | spl | 自旋锁的指针 |
[in] | irqs | 中断资源数组指针 |
[in] | num | 数组中元素数量 |
在文件 spinlock.h 第 236 行定义.
|
inlinestatic |
XWOS API:上锁自旋锁,保存部分中断的中断标志并关闭
[in] | spl | 自旋锁的指针 |
[in] | irqs | 中断资源数组指针 |
[out] | flags | 缓冲区指针,用于返回部分中断的中断标志 |
[in] | num | 数组中元素数量 |
在文件 spinlock.h 第 295 行定义.
XWOS API:尝试上锁自旋锁
[in] | spl | 自旋锁的指针 |
XWOK | 没有错误 |
-EAGAIN | 获得自旋锁失败 |
在文件 spinlock.h 第 116 行定义.
XWOS API:尝试上锁自旋锁,关闭本地CPU的中断底半部
[in] | spl | 自旋锁的指针 |
XWOK | 没有错误 |
-EAGAIN | 获得自旋锁失败 |
在文件 spinlock.h 第 372 行定义.
XWOS API:尝试上锁自旋锁,并关闭本地CPU的中断
[in] | spl | 自旋锁的指针 |
XWOK | 没有错误 |
-EAGAIN | 获得自旋锁失败 |
在文件 spinlock.h 第 160 行定义.
XWOS API:尝试上锁自旋锁,保存本地CPU的中断标志并关闭
[in] | spl | 自旋锁的指针 |
[out] | cpuirq | 缓冲区指针,用于返回本地CPU的中断标志 |
XWOK | 没有错误 |
-EAGAIN | 获得自旋锁失败 |
在文件 spinlock.h 第 206 行定义.
|
inlinestatic |
XWOS API:尝试上锁自旋锁,并关闭部分中断
[in] | spl | 自旋锁的指针 |
[in] | irqs | 中断资源数组指针 |
[in] | num | 数组中元素数量 |
XWOK | 没有错误 |
-EAGAIN | 获得自旋锁失败 |
在文件 spinlock.h 第 259 行定义.
|
inlinestatic |
XWOS API:尝试上锁自旋锁,保存部分中断的中断标志并关闭
[in] | spl | 自旋锁的指针 |
[in] | irqs | 中断资源数组指针 |
[out] | flags | 缓冲区指针,用于返回部分中断的中断标志 |
[in] | num | 数组中元素数量 |
XWOK | 没有错误 |
-EAGAIN | 获得自旋锁失败 |
在文件 spinlock.h 第 319 行定义.
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
XWOS API:解锁自旋锁,并恢复本地CPU的中断标志
[in] | spl | 自旋锁的指针 |
[in] | cpuirq | 本地CPU的中断标志 |
在文件 spinlock.h 第 219 行定义.
|
inlinestatic |
XWOS API:解锁自旋锁,并开启部分中断
[in] | spl | 自旋锁的指针 |
[in] | irqs | 中断资源数组指针 |
[in] | num | 数组中元素数量 |
在文件 spinlock.h 第 275 行定义.