This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] RTOS/AM3358:GateMutexPri 抢占

Guru**** 2589275 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/638872/rtos-am3358-gatemutexpri-preempting

器件型号:AM3358

工具/软件:TI-RTOS

下午好!

我正在尝试使用 GateMutexPri 模块来确保对器件上闪存接口的单次访问。  我认为我大致已经正确设置了它并准备就绪、但只有一个问题、我无法找到任何其他地方的答案。

因为这会阻止对闪存接口的访问、所以我只希望一个线程同时具有栅极、但它似乎同时允许抢占和阻断、这是使我感到困惑的地方吗?

如果它正在阻断、它还如何允许抢占?

我正在使用查询函数检查逻辑门的质量、如下所示:

if (GateMutexPri_query (GateMutexPri_Q_Blocking)= true)
UARTPuts ("GateMutex is blocking\r\n"、-1);
否则
UARTPuts ("GatePuex



is is inblocking\r\n"、-1);if (GateMutouting_query (GatePutrix is)(gatePudputr\n"preutr\n"prereutr"、"UARTprereutr\n"prereutr")、"prereutr\n"prereMutout_que"、"UARTPReute"(1); 

它说门有两个、这是如何工作的、以及如何停止抢占、因为在当前访问闪存的线程完成之前、我不希望当前访问闪存的任何抢占线程都可以自己访问。

非常感谢

肖恩

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    RTOS 团队已收到通知。 他们将在这里作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Sean、

    GateMutexPri 正在阻断、因为如果另一个任务拥有逻辑门、则尝试进入逻辑门的任务将被阻断。  如果一个低优先级任务拥有选通、它可被一个更高优先级任务抢先。  只有当较高优先级的任务尝试进入逻辑门时、较低优先级的任务的优先级才会提升到较高优先级的任务的优先级。  较高优先级的任务将被阻止、直到较低优先级的任务(现在以较高的优先级运行)释放逻辑门。

    如果你看看 GateHwi、query()对分块和占先返回 false。  这是因为 GateHwi 只禁用中断(非阻塞调用)、而在禁用中断的情况下、进入 GateHwi 的任务不能被抢占。

    此致、

    Janet

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Janet、您好!

    是的、这就是我的预期工作方式、但文件有点不清楚。  非常感谢您的确认。

    此致

    肖恩

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Janet、您好!

    抱歉、只是一个快速跟进问题。  可以在 HWI 和 SWI 中使用 GateMutexPri 吗?  如果一个 Hwi trys 请求栅极并且被任务占用、那么任务将继承 Hwi 的优先级?

    谢谢

    肖恩

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Sean、

    您不能从 Hwi 或 Swi 调用 GateMutexPri_enter()或 GateMutexPri_leave ()。  您可以检查 SYS/BIOS 模块的 CDOC 以检查 API 的调用上下文。  这来自 GateMutexPri 的 CDOC:

    此致、

    Janet

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢你