2019-12-27 18:43发布
security 发表于 2017-7-7 00:37 特权模式和用户模式,与上不上 RTOS 没有必然的关系。 裸奔,照样可以分权限。 ...
redroof 发表于 2017-7-7 09:05 至少99%以上的裸奔的人,以及90%以上的跑RTOS的人,都是不分权限的,永远用特权模式。 或许你能找到几个 ...
myxiaonia 发表于 2017-7-7 09:34 我尝试过你的问题,rtx中如果使用非特权模式,关中断倒还行,用svc,开中断就不行了 所以此问题是无解的 ...
security 发表于 2017-7-7 10:25 Cortex-M,SVC 无法开中断?知道具体原因吗? 如果这样不行话,那或许能用用我在 3 楼说的第 2 种方法( ...
myxiaonia 发表于 2017-7-7 10:49 非特权模式下无法开中断了啊,连svc也无效了
最多设置5个标签!
至少99%以上的裸奔的人,以及90%以上的跑RTOS的人,都是不分权限的,永远用特权模式。
或许你能找到几个裸奔还区分权限的人吧,反正我这么久以来没见过
你说得对,裸奔区分权限的,的确很少(RTOS 都不多)。
我那个回复,只是针对 LZ 在 4 楼的回复,
在我看来,LZ 似乎认为 SVC 是操作系统的专属特性,在裸奔下,如果区分了特权,就没法使用 SVC,找不到可行的办法。
我只想说,SVC 是 CPU 的特性,裸奔区分权限的话,照样是通过 SVC 来解决。
Cortex-M,SVC 无法开中断?知道具体原因吗?
如果这样不行话,那或许能用用我在 3 楼说的第 2 种方法(至少在 ARM9 上,第 2 种方案是验证过的)。
非特权模式下无法开中断了啊,连svc也无效了
这样啊,
那就用我说的第 2 种方法吧:
SVC 负责切入到特权模式,
而后,关中断、执行硬件临界区代码、开中断,
最后再适时,返回到用户模式。
一周热门 更多>