程控交换机软件的任务调度方法

MINI-MICRO SYSTEMS

1999年 第20卷 第1期 Vol.20 No.1

程控交换机软件的任务调度方法

戴祝英  王 刚

摘 要 程控交换机软件实际上是一个实时操作系统软件,其任务调度比较复杂.本文介绍了程控交换机软件的任务调度方法,并给出了部分程序框架.

关 键 词 程控交换机软件 任务调度 周期

分 类 号 TP31

ALGORITHM TO SCHEDULE TASKS FOR THE SOFTWARE uOF THE STORED PROGRAM

CONTROLLED SWITCHING

DAI Zhuying                WANG Gang

( Geology University Of China Wuhan 430074)   ( Wuhan Huda Computer Company Wuhan 430074)

Abstract The software of the stored program controlled switching is actually a real-time operating system. It's very complicate to schedule tasks for the software of the stored program controlled switching . This article describes the algorithm to schedule tasks for the software of the stored program controlled switching and its program frames.

Key words SPC Schedule tasks period

  程控交换机软件的任务分为不同优先级,按优先级由低到高的顺序依次为:基本级、周期级和故障级等三级.基本级任务是无实时要求的任务,如用户摘/挂机处理、号码分析等;周期级任务是要求在规定的时间内完成的任务,如用户线摘/挂机监视、中继线线路信号和多频互控信号的输入/输出等;故障级任务负责故障识别和处理.下面举例说明上述三级任务的调度方法.1 前言

2 基本级任务的调度方法   基本级任务通常有两种调度方法:

  方法a:以功能模块为调度对象.如将基本级任务分为以下几个功能模块:摘机处理模块、号码分析模块、挂机处理模块……摘机处理模块同时对所有刚刚摘机的用户都进行处理,如分配各种资源、送拨号音等;挂机处理模块则同时对所有刚刚挂机的用户都进行处理,如释放各种资源等.形式为:

  功能模块1 (对所有刚刚摘机的用户都进行处理);

  功能模块2 (对所有刚刚挂机的用户都进行处理);

  功能模块3 (对所有刚刚拨完号的用户都进行号码处理);

  ……

  任务m(对用户J进行挂机处理);

  ……

  方法b:以任务为调度对象.如某个用户刚摘机,则产生一个对该用户进行摘机处理的任务,将此任务插入任务队列,按先进先出的顺序处理任务队列中的每个任务.调度形式为:

  任务1(对用户I进行摘机处理);

  任务2(对用户J进行摘机处理);

  ……

  任务n(对用户I进行挂机处理);

  ……

3 周期级任务的调度方法   周期级任务必须在指定时间内完成.周期级任务的调度,是在时钟中断处理程序中进行的,按不同的时间周期调度不同的周期级任务.下面举例说明:

  例1. 双音多频拨号扫描任务:要求在大约30ms(毫秒)内对所有正在进行双音多频拨号的用户线扫描一遍.

  方法a.以30ms为周期调度双音多频拨号扫描任务.在30ms(毫秒)内对所有正在进行双音多频拨号的用户线扫描一遍.

  这种方法编程简单,其C语言程序框架如下:

  unsigned char max_port ;           //最大用户数

  unsigned char dial_number 〔max_port 〕 ; //存放所有用户拨号内容的数组

  extern unsigned char dial_in (unsigned char port_no ) ;  //读用户port_no的拨号内容

  void scan_30ms ( void )  // 每30ms执行一次的拨号扫描函数,每次扫描所有用户

  {

   unsigned char port_no ;

   for (port_no = 0 ; port_no

    dial_number〔port_no〕 = dial_in (port_no );

  }

  但这种方法会出现负载不均的情况: 在某个周期内, 正在进行双音多频拨号的用户特别少双音多频拨号的用户特别多,此时该任务的执行时(甚至没有),此时该任务的执行时间特别短、负载特别

轻;而在另外某个周期,同时进行间特别长、负载特别重.如图1(a)所示.

图1

  方法b、将所有用户线分为三组,以10ms为周期调度双音多频拨号扫描任务,每次只扫描一组用户线,30ms内扫描完全部用户.这样每个周期内负载相对比较均衡.如图1(b)所示.其它周期级任务都可采用此法调度以均衡负载.

  这种方法的C语言程序框架如下:

  unsigned char max_port ;        //最大用户数

  unsigned char dial_number 〔max_port 〕 ; //存放所有用户拨号内容的数组

  extern unsigned char dial_in (unsigned char port_no ) ;  //读用户port_no的拨号内容

  unsigned char group_no; //用户组号,初值为0

  void scan_10ms ()    //每10ms执行一次的拨号扫描函数,每次扫描一组用户

  {

   unsigned char port_no , ports = max_port/3 ;

   for (port_no = group_no*ports; port_no

    dial_number〔port_no〕 = dial_in (port_no );

   if ( (++group_no)= = 3 ) group_no=0;

  }

  例2.各种信号音(回铃音、忙音等)的处理.一般情况下,硬件提供一个450HZ的连续信号音源.而不同信号音有不同的断续比,如回铃音为1秒续、4秒断,忙音为0.5秒续、0.5秒断,为了让不同用户听不同的信号音,有两种方法:

图2

  方法a.由周期级任务对每个用户线和中继线进行控制,如图2(a)所示:用户i听回铃音,周期级任务控制开关K1续1秒、断4秒;中继 j听忙音,周期级任务控制开关K2续0.5秒、断0.5秒.

  方法b.设定几个通路(时隙或链路)专门传递信号音,一个通路对应一种信号音,如图2(b)所示:周期级任务控制信号音源到回铃音通路的开关KA续1秒、断4秒 ,到忙音通路的开关KB续0.5秒、断0.5秒;而某用户或中继需听某信号音时,只要将它与对应的通路开关K合上、不听时断开即可,这可由基本级任务完成.这种方法的周期级任务C语言程序框架如下:

  extern void KA_on(void) ;    //控制开关KA合上的外部函数

  extern void KA_off(void); //控制开关KA断开的外部函数

  extern void KB_on(void) ; //控制开关KB合上的外部函数

  extern void KB_off(void); //控制开关KB断开的外部函数

  unsigned char count_100ms; //100ms计数器,初值为0

  unsigned char count_1s; //1秒计数器,初值为0

  void ring_tone(void) //回铃音通路开关控制函数,

  {每1秒执行一次

   switch(count_1s++)

   {

    case 0: KA_on(); break;

    case 1: KA_off(); break;

    case 2: break;

    case 3: break;

    case 4: count_1s = 0; break;

    }

  }

  void busy_tone(void) //忙音通路开关控制函数,每100ms执行一次

  {

   count_100ms++;

   if (count_100ms = = 5)

     KB_on();

   if (count_100ms = = 10)

   { KB_off(); count_100ms = 0 }

  }

4 故障级任务的调度方法

  一般故障处理由故障中断处理程序完成,其任务调度比较简单,不再赘述.

  戴祝英,讲师,主要从事计算机应用系统的开发与教学工作.王刚,高级工程师,主要从事计算机控制与通信的开发与研究.

作者单位: 戴祝英  中国地质大学信息工程学院 武汉 430074

      王 刚   武汉华达电子有限公司 武汉 430074

参考文献

 〔1〕 最新C语言程序设计. 徐德民. 北京. 电子工业出版社

 〔2〕 电信网的信号系统. 姚洁莹. 北京. 人民邮电出版社

1997-09-25收稿

程控交换机软件的任务调度方法

作者:

作者单位:

刊名:

英文刊名:

年,卷(期):

被引用次数:戴祝英, 王刚, DAI Zhuying, WANG Gang戴祝英,DAI Zhuying(中国地质大学信息工程学院,武汉,430074), 王刚,WANG Gang(武汉华达电子有限公司,武汉,430074)小型微型计算机系统MINI-MICRO SYSTEMS1999,20(1)2次

1.徐德民 最新C语言程序设计

2.姚洁莹 电信网的信号系统

1.期刊论文 伏浩 一种程控交换机软件任务调度方法 -科技资讯2009(13)

程控交换机软件实际上是一个实时操作系统软件,其任务调度比较复杂.本文主要探讨一种周期级任务调度方法,举例说明了其在程控变换机软件中的具体应用.

1.伏浩 一种程控交换机软件任务调度方法[期刊论文]-科技资讯 2009(13)

2.韩晓霞 电力通信用小型数字程控交换机的设计——整体设计及软件程序的实现[学位论文]硕士 2005

本文链接:http://d.g.wanfangdata.com.cn/Periodical_xxwxjsjxt199901015.aspx

授权使用:东南大学图书馆(wfdndx),授权号:e87e9b32-d2a6-4510-8bd8-9e8800983ca7

下载时间:2011年2月12日

MINI-MICRO SYSTEMS

1999年 第20卷 第1期 Vol.20 No.1

程控交换机软件的任务调度方法

戴祝英  王 刚

摘 要 程控交换机软件实际上是一个实时操作系统软件,其任务调度比较复杂.本文介绍了程控交换机软件的任务调度方法,并给出了部分程序框架.

关 键 词 程控交换机软件 任务调度 周期

分 类 号 TP31

ALGORITHM TO SCHEDULE TASKS FOR THE SOFTWARE uOF THE STORED PROGRAM

CONTROLLED SWITCHING

DAI Zhuying                WANG Gang

( Geology University Of China Wuhan 430074)   ( Wuhan Huda Computer Company Wuhan 430074)

Abstract The software of the stored program controlled switching is actually a real-time operating system. It's very complicate to schedule tasks for the software of the stored program controlled switching . This article describes the algorithm to schedule tasks for the software of the stored program controlled switching and its program frames.

Key words SPC Schedule tasks period

  程控交换机软件的任务分为不同优先级,按优先级由低到高的顺序依次为:基本级、周期级和故障级等三级.基本级任务是无实时要求的任务,如用户摘/挂机处理、号码分析等;周期级任务是要求在规定的时间内完成的任务,如用户线摘/挂机监视、中继线线路信号和多频互控信号的输入/输出等;故障级任务负责故障识别和处理.下面举例说明上述三级任务的调度方法.1 前言

2 基本级任务的调度方法   基本级任务通常有两种调度方法:

  方法a:以功能模块为调度对象.如将基本级任务分为以下几个功能模块:摘机处理模块、号码分析模块、挂机处理模块……摘机处理模块同时对所有刚刚摘机的用户都进行处理,如分配各种资源、送拨号音等;挂机处理模块则同时对所有刚刚挂机的用户都进行处理,如释放各种资源等.形式为:

  功能模块1 (对所有刚刚摘机的用户都进行处理);

  功能模块2 (对所有刚刚挂机的用户都进行处理);

  功能模块3 (对所有刚刚拨完号的用户都进行号码处理);

  ……

  任务m(对用户J进行挂机处理);

  ……

  方法b:以任务为调度对象.如某个用户刚摘机,则产生一个对该用户进行摘机处理的任务,将此任务插入任务队列,按先进先出的顺序处理任务队列中的每个任务.调度形式为:

  任务1(对用户I进行摘机处理);

  任务2(对用户J进行摘机处理);

  ……

  任务n(对用户I进行挂机处理);

  ……

3 周期级任务的调度方法   周期级任务必须在指定时间内完成.周期级任务的调度,是在时钟中断处理程序中进行的,按不同的时间周期调度不同的周期级任务.下面举例说明:

  例1. 双音多频拨号扫描任务:要求在大约30ms(毫秒)内对所有正在进行双音多频拨号的用户线扫描一遍.

  方法a.以30ms为周期调度双音多频拨号扫描任务.在30ms(毫秒)内对所有正在进行双音多频拨号的用户线扫描一遍.

  这种方法编程简单,其C语言程序框架如下:

  unsigned char max_port ;           //最大用户数

  unsigned char dial_number 〔max_port 〕 ; //存放所有用户拨号内容的数组

  extern unsigned char dial_in (unsigned char port_no ) ;  //读用户port_no的拨号内容

  void scan_30ms ( void )  // 每30ms执行一次的拨号扫描函数,每次扫描所有用户

  {

   unsigned char port_no ;

   for (port_no = 0 ; port_no

    dial_number〔port_no〕 = dial_in (port_no );

  }

  但这种方法会出现负载不均的情况: 在某个周期内, 正在进行双音多频拨号的用户特别少双音多频拨号的用户特别多,此时该任务的执行时(甚至没有),此时该任务的执行时间特别短、负载特别

轻;而在另外某个周期,同时进行间特别长、负载特别重.如图1(a)所示.

图1

  方法b、将所有用户线分为三组,以10ms为周期调度双音多频拨号扫描任务,每次只扫描一组用户线,30ms内扫描完全部用户.这样每个周期内负载相对比较均衡.如图1(b)所示.其它周期级任务都可采用此法调度以均衡负载.

  这种方法的C语言程序框架如下:

  unsigned char max_port ;        //最大用户数

  unsigned char dial_number 〔max_port 〕 ; //存放所有用户拨号内容的数组

  extern unsigned char dial_in (unsigned char port_no ) ;  //读用户port_no的拨号内容

  unsigned char group_no; //用户组号,初值为0

  void scan_10ms ()    //每10ms执行一次的拨号扫描函数,每次扫描一组用户

  {

   unsigned char port_no , ports = max_port/3 ;

   for (port_no = group_no*ports; port_no

    dial_number〔port_no〕 = dial_in (port_no );

   if ( (++group_no)= = 3 ) group_no=0;

  }

  例2.各种信号音(回铃音、忙音等)的处理.一般情况下,硬件提供一个450HZ的连续信号音源.而不同信号音有不同的断续比,如回铃音为1秒续、4秒断,忙音为0.5秒续、0.5秒断,为了让不同用户听不同的信号音,有两种方法:

图2

  方法a.由周期级任务对每个用户线和中继线进行控制,如图2(a)所示:用户i听回铃音,周期级任务控制开关K1续1秒、断4秒;中继 j听忙音,周期级任务控制开关K2续0.5秒、断0.5秒.

  方法b.设定几个通路(时隙或链路)专门传递信号音,一个通路对应一种信号音,如图2(b)所示:周期级任务控制信号音源到回铃音通路的开关KA续1秒、断4秒 ,到忙音通路的开关KB续0.5秒、断0.5秒;而某用户或中继需听某信号音时,只要将它与对应的通路开关K合上、不听时断开即可,这可由基本级任务完成.这种方法的周期级任务C语言程序框架如下:

  extern void KA_on(void) ;    //控制开关KA合上的外部函数

  extern void KA_off(void); //控制开关KA断开的外部函数

  extern void KB_on(void) ; //控制开关KB合上的外部函数

  extern void KB_off(void); //控制开关KB断开的外部函数

  unsigned char count_100ms; //100ms计数器,初值为0

  unsigned char count_1s; //1秒计数器,初值为0

  void ring_tone(void) //回铃音通路开关控制函数,

  {每1秒执行一次

   switch(count_1s++)

   {

    case 0: KA_on(); break;

    case 1: KA_off(); break;

    case 2: break;

    case 3: break;

    case 4: count_1s = 0; break;

    }

  }

  void busy_tone(void) //忙音通路开关控制函数,每100ms执行一次

  {

   count_100ms++;

   if (count_100ms = = 5)

     KB_on();

   if (count_100ms = = 10)

   { KB_off(); count_100ms = 0 }

  }

4 故障级任务的调度方法

  一般故障处理由故障中断处理程序完成,其任务调度比较简单,不再赘述.

  戴祝英,讲师,主要从事计算机应用系统的开发与教学工作.王刚,高级工程师,主要从事计算机控制与通信的开发与研究.

作者单位: 戴祝英  中国地质大学信息工程学院 武汉 430074

      王 刚   武汉华达电子有限公司 武汉 430074

参考文献

 〔1〕 最新C语言程序设计. 徐德民. 北京. 电子工业出版社

 〔2〕 电信网的信号系统. 姚洁莹. 北京. 人民邮电出版社

1997-09-25收稿

程控交换机软件的任务调度方法

作者:

作者单位:

刊名:

英文刊名:

年,卷(期):

被引用次数:戴祝英, 王刚, DAI Zhuying, WANG Gang戴祝英,DAI Zhuying(中国地质大学信息工程学院,武汉,430074), 王刚,WANG Gang(武汉华达电子有限公司,武汉,430074)小型微型计算机系统MINI-MICRO SYSTEMS1999,20(1)2次

1.徐德民 最新C语言程序设计

2.姚洁莹 电信网的信号系统

1.期刊论文 伏浩 一种程控交换机软件任务调度方法 -科技资讯2009(13)

程控交换机软件实际上是一个实时操作系统软件,其任务调度比较复杂.本文主要探讨一种周期级任务调度方法,举例说明了其在程控变换机软件中的具体应用.

1.伏浩 一种程控交换机软件任务调度方法[期刊论文]-科技资讯 2009(13)

2.韩晓霞 电力通信用小型数字程控交换机的设计——整体设计及软件程序的实现[学位论文]硕士 2005

本文链接:http://d.g.wanfangdata.com.cn/Periodical_xxwxjsjxt199901015.aspx

授权使用:东南大学图书馆(wfdndx),授权号:e87e9b32-d2a6-4510-8bd8-9e8800983ca7

下载时间:2011年2月12日


相关内容

  • 08-第8章 软件系统概述
  • 目 录 第8章 软件系统概述..............................................................................................................8-1 8.1 概述................ ...

  • 消防通信教材
  • 第一章 消防通信概述 第一节 消防通信的分类 消防通信,是指利用有线.无线.计算机以及简易通信方法,以传送符号.信号.文字.图像.声音等形式表述消防信息的一种专用通信方式. 消防通信服务对象:对内是消防部队及与消防灭火救援工作直接相关的部门与单位:对外是受理社会公众的火灾报警和其他灾害事故报警. 消 ...

  • [现代交换原理]综合练习题
  • <现代交换原理>综合练习题 一填空题 1. 2. 3 4.我国目前的两级长途网由省级交换中心DC1 本地网长途交换中心DC2 两级组成. 5.按照信令传送通路与话路之间的关系来划分,信令可分为随路信令和公共信道信令两大类. 6.S1240 7. 三种. 8.基于容量分担的分散控制方式的交 ...

  • 电话调度系统技术方案
  • BL-2000数字程控调度机 技术方案 吉林市希望伟业科技有限责任公司 2011-10-20 1. 技术方案 1.1 方案拓扑图 1.2 组网说明 说明:调度系统选用BL-2000数字程控调度机作为调度平台. 1) 系统配置:单机容量256门,现配置用户64门:采用8个环路中继链接: 调度台采用丹麦 ...

  • 现代交换原理答案
  • 一填空题 1. 电话通信网的基本组成设备是 . 2.电话机的基本组成部分有. 3.交换机的硬件系统由用户电路.中继器.. 这几部分组成. 4.我国目前的两级长途网由 和 本地网长途交换中心(DC2) 两级组成. 5.按照信令传送通路与话路之间的关系来划分,信令可分为 随路信令 和 公共信道 信令 两 ...

  • IPX3000数字程控调度交换机介绍
  • Coral IPX3000数字程控调度交换系统系统简介 IPX 3000数字程控交换机系统可靠,运行稳定,采用当前国际一流技术,具有统一IP组网功能,线性扩容,平台开放,性能优良,功能完整.无论其硬件.软件.终端设备都有着相同的结构,卡板在整个Coral调度交换系统范围内均可互换.系统具有良好的通风 ...

  • 现代化矿井建设汇报
  • 山西省右玉县玉龙煤业有限公司现代化矿井建设 进展情况汇报 一.矿井概况 山西右玉玉龙煤业有限公司位于右玉县城东南30km的元堡子镇辛屯村西,2009年8月17日山西省煤矿兼并重组整合工作领导组办公室以晋煤重组办发[2009]18号文件批准将原山西右玉南阳破西煤业有限公司和山西吐儿水煤业有限公司进行了 ...

  • 程控交换机的管理维护及应用
  • 第一章 程控交换机的维护特点分析 1.1 系统可靠性高,工作量小 程控交换机大多采用集成电路,分立元件很少,集成度高.体积小.耗电低.可靠性高.不但采用的器件技术先进,而且装备工艺严格; 元器件装板以前已经过抽测.筛选.老化处理,制好的印制电路板经过单板测试.整机测试及老化处理,使得可靠性大大提高. ...

  • 高速公路机电系统知识重点
  • 高速公路机电系统知识重点 第一章:绪论 一.高速公路发展历程 1.美国是世界上高速公路最发达的国家,其高速公路总长超过9万Km ,占世界高速公路总 里程近50%. 2.1988年10月31日,上海--嘉定18.5Km 高速公路建成通车,使中国大陆有了高速公 路.1999年突破10000Km ,跃居世 ...