北邮大三下现代交换原理实验一时间表调度实验报告346.docxVIP

北邮大三下现代交换原理实验一时间表调度实验报告346.docx

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验报告课程名称:现代交换原理与通信网技术实验名称:时间表调度实验报告班级:2011211314学号:2011211500姓名:焦鸣阳指导教师:基础实验一时间表调度实验实验目的驱动交换网络实验用来考查学生对时间表调度原理的掌握情况。实验原理及设计在程控数字交换的体系结构中,周期级程序(例如摘挂机检测程序、脉冲识别程序、位间隔识别程序)是由时间表调度实现的。所谓时间表调度,是指每经过交换系统的最短有效时间(这通常是指各周期性程序周期的最大公约数),都会检查调度表的调度要求,如果某个程序在这时需要执行,则调度程序开始执行它。在我们设计的时间表调度实验中,这个调度表的调度是静态的。所谓静态,是指我们的调度表是在系统初始化的时候就建立起来的,在系统运行的情况下不再改动。实验要求的就是这个调度表的初始化。这个调度表如下:时间(10ms)? \任务?0:摘挂机检测任务1:脉冲检测任务2:位间隔检测任务?????? 0?????? 0/1?????? 0/1????? 0/1?????? 1?????? 0/1?????? 0/1????? 0/1?.....????????????????????????????????????????? ....????????????????????????????????????????????????????????????????????????? .....????? 18?????? 0/1?????? 0/1?????? 0/1????? 19?????? 0/1?????? 0/1?????? 0/1我们这个交换系统提供了三个周期性调度程度(摘挂机检测程序、脉冲识别程序和位间隔识别程序),它们的调用周期分别为200ms、10ms和100ms,所以我们系统的最小调度时间为10ms。如图所示,每隔10ms,我们就会检查这个表的一行,如果该行上某一列为1,我们就执列所对应的任务,如果为0,就什么都不做。每当执行到这个表的最后一行,调度任务会返回第一行循环执行。而你所要做的就是按照你的理解来填写这个调度表。实验主要数据结构:函数功能:完成调度表的初始化;函数原型:initSchTable(intScheduleTable[SchTabLen][SchTabWdh]);其中SchTalLen和SchTabWdh为在bconstant.h中的宏定义: #define SchTabLen 20 //代表这个调度表为20行(相邻行之间的时间间隔为10ms); #define SchTabWdh 3 //代表三个周期性调度任务//0:摘挂机检测任务;1:脉冲检测任务;//2:位间隔检测任务;实验效果检验当调度表初始化正确时,能够进行正常的通话;如果初始化不正确,可能会造成周期性程序的不正常调用,例如位间隔调度的延迟会造成识别位间隔的延误甚至丢失。注:由于为循环程序,所以调度表的初始化方案不唯一。实验代码#includestdio.h//bconstant.h#defineSchTabLen 20#defineSchTabWdh 3voidinitSchTable(intScheduleTable[][SchTabWdh]){for(int I=0;iSchTabLen;i++){ScheduleTable[i][1]=1;if(i==0){ScheduleTable[i][0]=1;ScheduleTable[i][2]=1;}else if(i==(int)(SchTabLen+1)/2)ScheduleTable[i][2]=1;}}main(){intScheduleTable[SchTabLen][SchTabWdh] = {0};intr,l;initSchTable(ScheduleTable);for(r=0;rSchTabLen;r++){for(l=0;lSchTabWdh;l++)printf(%d , ScheduleTable[r][l]);printf(\n);}system(pause);return 0;}实验结果程序初始化后能正确检测摘挂机动作并进行通话,与预计结果相符,试验成功。实验心得本实验用一个整型二维数组模拟用户监视信号,1表示挂机,0表示摘机每隔十秒检测一次。最初拿到题目的时候没能形成具体思路,经同学提醒后选择了循环遍历二维数组去实现初始化。经过本次实验模拟,我对真实的交换系统上对时间表调度步骤有了进一步的了解。通过查阅教材也进一步牢固掌握了位间隔的检测方法,解决了一大难点。

文档评论(0)

qhhb493 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档