关于嵌入式操作系统任务切换的问题。

2019-07-20 04:27发布

最近在学习嵌入式操作系统,书上讲的太学术了,很难理解。有几个问题想问问大牛们。1、实际使用中,经常用软件模拟IIC和SPI,如果在进行模拟的过程中,发生了任务调度,那么是不是就打乱了原来的波形了?还是说在模拟波形时,会关闭任务的调度?
2、很多任务函数经常有while(1)的循环,看起来像是调用任务后,一直在运行这个任务,直至下一个时间片。但是看实例,好像是在一个时间片内只执行了一次,然后执行其他任务,当所有任务执行完后,执行空闲任务,这样就可以计算出CPU使用率了,这样看,while(1)好像没什么用处。
有大神能解答么?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
3条回答
szczyb1314
2019-07-20 09:18
1.实际使用中,经常用软件模拟IIC和SPI,软件模拟的在通信时需要做临界保护,关中断关调度都行,一般是关中断
2.任务函数是while(1)的循环,当它经过调度器开始运行时,情况1:一个时间片内能执行一遍while(1)里面的所有语句,那就接着从头开始重复执行,直到时间片到了发生调度;情况2:一个时间片内不能执行一遍while(1)里面的所有语句,那么时间片一到马上发生调度。

但是这个调度后,有可能这个任务还是就绪的最高优先级任务,那么它还会运行

一周热门 更多>