请问下实时操作系统中的时钟节拍如何理解?
如题,“时钟节拍是特定的周期性中断。这个中断可以看作是系统心脏的脉动。中断之间的时间间隔取决于不同的应用,一般在10mS到200mS之间。时钟的节拍式中断使得内核可以将任务延时若干个整数时钟节拍,以及当任务等待事件发生时,提供等待超时的依据。时钟节拍率越快,系统的额外开销就越大。”这段话如何去理解呢,在单片机中是不是用定时器中断来实现时钟节拍呢?“将任务延时若干个节拍有什么作用呢?又如何实现的呢? 使用OS,任务计时单位就是节拍。
一般1ms一个节拍,延时1000个节拍就是1S。 在OS中,我看见每个任务后面都有延时,那延时就是时钟节拍吧,那延时的作用是什么呢?是用来表明任务已经完成还是分配那么多时间给这个任务呢? 在OS中,我看见每个任务后面都有延时,那延时就是时钟节拍吧,那延时的作用是什么呢?是用来表明任务已经完成还是分配那么多时间给这个任务呢? 自己工作做完了就將 CPU 讓給其他工作, 不然就 CPU TIME 浪費掉了 也就是说在单个任务执行延时的时候,调度程序就来调度到其他任务是吗? 应该理解为每个任务在完成本次工作后,将CPU的资源释放给系统,由系统调度其他任务运行。 OS中任务切换有两种方式:1.任务自动放弃运行,调用调度器去切换到其它任务(每个任务后面都有延时就是为这样的目的来的,不然一个高优先级的任务将一直占用CPU,其他任务得不到运行的机会)
2.任务被动放弃,也就是在时钟节拍中断中,保证高优先级的任务可以得到运行
如果时钟节拍设计的比较短,产生中断频繁,导致任务不断切换,这样会消耗大量的CPU时间,加重系统的负担(在选择是否使用OS必须考虑的问题)
页:
[1]