mirror of
https://gitee.com/cosyos/cosyos.git
synced 2026-02-05 19:39:42 +08:00
@@ -389,14 +389,14 @@ CosyOS-II 中断挂起服务缓存队列(PendSV_FIFO),已实现所有内
|
||||
可重入访问、互斥访问;<br>
|
||||
|
||||
### 互斥访问
|
||||
互斥访问是指各访问者对同一个目标资源的访问过程是互相排斥的,即每次只允许一个访问者访问目标资源,目标资源是不可重入资源。<br>
|
||||
各访问者对同一个目标资源的访问过程是互相排斥的,即每次只允许一个访问者访问目标资源,目标资源是不可重入资源。<br>
|
||||
下列所述为CosyOS推荐方案:<br>
|
||||
* **任务级公共资源** <br>
|
||||
1、互斥信号量:访问耗时的、实时性要求不高的,应尽量采用互斥信号量。<br>
|
||||
2、任务临界区:访问迅速的、实时性要求较高的,再考虑任务临界区。<br>
|
||||
* **全局公共资源** <br>
|
||||
1、任务临界区 + 挂起服务调用/挂起服务钩子:此方式为最优解,可实现成功的互斥访问。<br>
|
||||
2、二值信号量:弊端是会有访问失败的可能。<br>
|
||||
1、任务临界区 + 挂起服务调用/挂起服务钩子:此方式为最优解,可实现全局成功的互斥访问。<br>
|
||||
2、二值信号量:弊端是如果获取失败将导致访问失败。<br>
|
||||
3、全局临界区:弊端是关闭总中断会破坏零中断延迟。<br>
|
||||
|
||||
## 第五章、XXX
|
||||
Reference in New Issue
Block a user