Day 28 同步的作用

同步分为两种类型:
(1) 资源同步(resource synchronization):
决定共享记忆体的存取是否安全。假设记忆体出现不安全的情况,那麽资源同步可以知道记忆体何时是安全的状态。一般来说,通常很多任务都是同步在执行的,所以资源共享也是必须配合共享的,但是,因为记忆体是没有排他性的,每个任务都会去使用到记忆体存取的功能,这时候,就有可能因为排程或者感测器的优先顺序,导致最後资料的解释错误。所以通常为了确保任务的执行,而不被其他执行的任务给中断,此时就会设定一个竞争的临界区段(competing critical section),藉由这个区段存取共同资源。

(2) 活动同步(activity synchronization):
也称为条件同步,或顺序同步,决定程序的执行是否能达到一个稳定的状态,如果没有达到稳定的状态,就要等待,并且要等到稳定状态时,通知系统。正常来说,嵌入式控制系统都会牵涉到很多不同复杂的任务,任务当中的某些部分是受到例如说输入输出设备的管控,有些则是需要大量的浮点运算,有些则是大量靠CPU运算,所以任务在很多不同的时间就会到达一个屏障点(Barrier),等其他任务都抵达屏障点时,再依优先顺序跨越屏障点继续执行任务。屏障点的方式,是可以允许多个任务同步活动的。另外,有一种称为交会同步(rendezvous synchronization),此种方式是指允许两个任务之间的同步的。基本上还是都要等待的。

以上大至说明两种同步的方式,同步的作用跟之前的各种方式都是一样,主要是希望能达到嵌入式系统效能达到最大化的结果。


<<:  Day 27 - 不安全的登入机制

>>:  Day28 Flutter—BLoC介绍(二)

Array筛选特定值

缘由: 对本科生或天资聪颖的人来说这问题真的没什麽,但对於初学者且还只有教科书程度的我,要我从一组复...

改善R^2 (1) | ML#Day24

如同「决定系数篇」所介绍,R^2的数字越趋近於1,模型能够解释的能力越强,那麽我们就是追寻更好的R^...

文章内搜寻,doc docx txt 子目录下所有档 (Python)

运用:os.walk递回搜寻,档案内文 前天发的错误版本(已删除),掉入os.walk天坑,和pyt...

Day 32 | 常见 Livewire 问题:与 Controller 兼容的几种方式

使用 Livewire 之後,在 Layout 上会改用 component 的 $slot 方式来...

公司防火墙架设後对外网页帐号密码错误

我们公司换防火墙之後 别台电脑对子公司网站登入 网页却可以正常开启 登入却一直显示帐号密码错误 只有...