>您现在的位置:文学月刊 > 西方诗歌

如何设计复杂的多任务程序详细资料说明 情书里的民国

2019-06-21 17:42作者:admin

如何设计复杂的多任务程序详细资料说明 情书里的民国

  很明显,初学者在设计程序时,需要从程序构架思想上下功夫,在做了大量基本模块练习之后,需要总结提炼自己的程序设计思路(程序架构思想)。   首先我们来理解“任务”,所谓任务,就是需要周期“关照”的事件,绝大多数任务不需要CPU一直“关照”,例如启动的启动读取。 甚至有些任务“害怕”CPU一直“关照”例如LCD的刷新,因为LCD是显示给人看的,并不需要高速刷新,即便是显示的  内容在高速变化,也不需要高速刷新,道理是一样的。 这样看来,让CPU做简单任务一定很浪费,事实也是如此,绝大多数简单任务,CPU都是在“空转”(循环踏步延时)。

对任务总结还可以知道,很多任务需要CPU不断“关照”,其实这种“不断”也是有极限的,比如数码管动态扫描,能够做到40Hz就可以了,又如键盘扫描,能够做到20Hz(经验值),基本上也就不会丢有效按键键值了,再如LCD刷新,我觉得做到10Hz就可以了,等等。 看来,绝大多数任务都是工作在低速频度。 而我们的CPU一旦运行起来,速度又很快,CPU本身就是靠很快的速度执行很简单的指令来胜任复杂的任务(逻辑)的。

如果有办法把“快”的CPU分成多个慢的CPU,然后给不同的任务分配不同速度的CPU,这种设想是不是很好呢!确实很好,下面就看如何将“快”的CPU划分成多个“慢”的CPU。   根据这种想法,我们需要合理分配CPU资源来“关照”不同的任务,最好能够根据任务本身合理占用CPU资源,首先看如图3所示的流程图,各个任务流程独立,各任务通过全局变量来交互信息,在流程中有一个重要的模块“任务切换”,就是任务切换模块实现CPU合理分配,这个任务切换模块是怎么实现的呢?。

随机推荐

图文聚集

热门排行

最新文章