mirror of
https://gitee.com/cosyos/cosyos.git
synced 2026-02-05 11:29:44 +08:00
@@ -322,14 +322,14 @@ CosyOS的临界区可分为 **任务临界区**、**服务层临界区**、**全
|
||||
_服务层临界区不会破坏零中断延迟,当需要系统级的临界区保护时,应首先予以考虑。_ <br>
|
||||
**3、全局临界区** <br>
|
||||
系统级的临界区保护,一般会关闭总中断。<br>
|
||||
具体方式:
|
||||
8051/80251:操作EA,会关闭总中断。
|
||||
Arm:
|
||||
(1)操作PRIMASK,会关闭总中断。
|
||||
(2)操作FAULTMASK,会关闭总中断。
|
||||
(3)操作BASEPRI,可实现不同掩蔽范围的全局临界区保护,不会关闭总中断。
|
||||
具体方式:<br>
|
||||
8051/80251:操作EA,会关闭总中断。<br>
|
||||
Arm:<br>
|
||||
(1)操作PRIMASK,会关闭总中断。<br>
|
||||
(2)操作FAULTMASK,会关闭总中断。<br>
|
||||
(3)操作BASEPRI,可实现不同掩蔽范围的全局临界区保护,不会关闭总中断。<br>
|
||||
_CosyOS内核中从来不会进入全局临界区,提供此项服务只是为了便于用户对全局公共资源或程序过程的保护。_ <br>
|
||||
关闭总中断方式的全局临界区,会破坏零中断延迟,为最后的选择,是不得已而用之。<br>
|
||||
关闭总中断方式的全局临界区,会破坏零中断延迟,为最后的选项,是不得已而用之。<br>
|
||||
任务临界区、全局临界区,都支持嵌套功能,最大嵌套深度:255。<br>
|
||||
|
||||
* **何时应用临界区** <br>
|
||||
|
||||
Reference in New Issue
Block a user