资料介绍
单片机在系统中充当CPU的角色,需要同时处理多个事务。如与PC机通信,将收到的信息转发给从机,监视数据处理情况等一些繁杂而又重要的事情。如何协调好各个事务之间的关系,并有条不紊的执行各个事务,这就需要在编写程序时采用合适的算法进行处理。一般的方法就是在单片机中移植操作系统,由操作系统来管理各个事务。但由于系统要占用一定的内部资源,这对本身资源非常有限的单片机来说是不现实的。所以,很少在单片机中采用操作系统,而是采用时间片轮询调度的方法进行各任务的管理。
时间片轮询调度是一种古老而又简单的算法,广泛运用于无操作系统的微处理器中。在系统中,每个进程被分配一个时间段,称作时间片,即该进程允许运行的时间。如果在时间片结束时进程还在运行,则CPU将被剥夺并分配给另一个进程。如果进程在时间片结束前阻塞或结束,则CPU当即进行切换。调度程序所要做的就是维护一张就绪进程列表,当进程用完它的时间片后,它被移到队列的末尾。
时间片轮询调度中有趣的一点是如何确定时间片的长度。从一个进程切换到另一个进程是需要一定时间的,因为要保存和装入寄存器值及内存映像等保护现场的工作,更新各种表格和队列等。假如进程切换,有时称为上下文切换,需要的时间为5毫秒,再假设时间片长度设定为20毫秒,则在做完20毫秒有用的工作之后,CPU将花费5毫秒来进行进程切换。CPU时间的 20%被浪费在了管理开销上。进程切换时间一定的情况下,如果时间片长度设定的越小时,这种浪费更明显。所以,时间片长度与CPU利用率是一对不可调和的矛盾,必须处理好它们之间的关系。
为了提高CPU效率,我们可以将时间片长度设得大一些,这时浪费的时间只有就会相对减小。但在一个分时系统中,各个任务对时间片长度的要求是不一致的。例如在一个系统中,可能要求每秒钟更新一下显示内容,每几十毫秒要扫描一下按键,每几毫秒要检测一下串口缓冲区等……可见,各个任务对时间的依赖程度是不一样的。如果时间片设得太长,某些对实时性要求高的任务可能得不到执行,使得系统的实时性变差。总之,时间片的设定应满足对实时性要求最高的那个任务,这样才能确保每个任务都可以及时得到执行而不被错过。
要在一个单片机系统中实现时间片轮询调度,需要依照以下的步骤:
确定任务总数及各个任务实对时间实时性的要求
根据任务对时间的要求,确定时间片的长度
估算执行每个任务所花费的时间,确保任务能够在时间片的长度内执行完毕
如果任务较大,时间片不足于让任务执行完,此时可细化该任务
- 单片机面向对象思维的架构:时间轮片法
- 浅析PIC单片机的数码管运用程序 2次下载
- 使用单片机实现门铃设计的程序和资料说明 10次下载
- 单片机原理及应用的详细资料说明 20次下载
- 什么是单片机?单片机的历史和应用等详细资料说明 7次下载
- 单片机的结构体和指针等资料说明 17次下载
- 时间片调度在单片机有什么样的作用?运用资料详细说明
- 使用51单片机控制小灯闪烁的程序和资料说明
- 时间片轮转算法在单片机程序设计中要什么样的作用应用说明
- 单片机程序架构的时间片轮询法详细资料说明
- 51单片机等串口缓存队列的C语言程序说明
- 使用51单片机进行流水灯的设计资料和程序资料说明
- 单片机基础教程之汇编语言程序设计知识的详细资料说明 10次下载
- 使用51单片机和电机驱动模块控制步进电机转动的程序和仿真等资料说明 88次下载
- 时间片轮转算法在单片机程序设计中的应用 17次下载
- 软件架构之时间轮片法 384次阅读
- 单片机里的程序是如何运行? 3908次阅读
- 结构体在单片机中的应用 2481次阅读
- PIC系列单片机的详细资料说明 5350次阅读
- 单片机实现按键的电路和程序设计资料说明 9433次阅读
- 单片机的结构和原理说明 5025次阅读
- 使用单片机实现复位电路的资料详细说明 4562次阅读
- 单片机实现多机通信的资料和程序 7539次阅读
- 新手教程:单片机的学习实践步骤 3819次阅读
- 单片机中的时间片轮询法解析 8389次阅读
- 如何采用51单片机开发操作体系 704次阅读
- 单片机的片选和地址分配 2w次阅读
- STC单片机烧写程序步骤说明 7.2w次阅读
- 烧录单片机的步骤 5906次阅读
- 单片机与程序设计(上) 3786次阅读
下载排行
本周
- 1TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 2开关电源基础知识
- 5.73 MB | 6次下载 | 免费
- 3100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 4嵌入式linux-聊天程序设计
- 0.60 MB | 3次下载 | 免费
- 5基于FPGA的光纤通信系统的设计与实现
- 0.61 MB | 2次下载 | 免费
- 651单片机窗帘控制器仿真程序
- 1.93 MB | 2次下载 | 免费
- 751单片机大棚环境控制器仿真程序
- 1.10 MB | 2次下载 | 免费
- 8基于51单片机的RGB调色灯程序仿真
- 0.86 MB | 2次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33564次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6653次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537796次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191185次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多