CN1420435A - 对多对象实现分布式功能的方法 - Google Patents
对多对象实现分布式功能的方法 Download PDFInfo
- Publication number
- CN1420435A CN1420435A CN 01132223 CN01132223A CN1420435A CN 1420435 A CN1420435 A CN 1420435A CN 01132223 CN01132223 CN 01132223 CN 01132223 A CN01132223 A CN 01132223A CN 1420435 A CN1420435 A CN 1420435A
- Authority
- CN
- China
- Prior art keywords
- hardware
- hardware management
- management module
- veneer
- master control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- General Factory Administration (AREA)
Abstract
一种对多对象实现分布式功能的方法,其步骤包括:步骤1、分析各单板上硬件管理模块的功能需求差异;步骤2、分析各单板上硬件管理模块与其它模块的接口关联关系差异;步骤3、分析各单板上硬件管理模块运行环境条件的差异;步骤4、确定划分硬件管理对象的标准,并逐一确定所需要的硬件管理对象。本发明很好地解决了同一对象分布与各单板上所产生的诸多问题,大大简化了设计,降低了开发技术难度,缩短了开发周期,提高了开发效率,避免了代码的大量冗余;提高了程序的运行效率和程序的可读性及易维护性。
Description
技术领域
本发明涉及一种分布式的硬件管理功能的实现方法,属于网络接入服务器领域,具体地说涉及一种以多个硬件管理模块对象分布于各个单板上分别实现对硬件的监测、对硬件操作的方法。
背景技术
按照中华人民共和国信息产业部颁布的《网络接入服务器(NAS)技术规范》,对接入服务器在系统运行(包括上电启动)时,需要具备以下硬件管理功能,1)实时检测到硬件离散信号的变化(比如:板槽位号、板热插拔、主备倒换),2)依据系统运行需要,对硬件进行特定的操作(包括设置主用设备无效、设置系统重新启动)。由于各单板硬件管理模块所要实现的基本功能相似,通常的实现方法是采用同一模块(具体为同一对象),实现各种单板硬件管理功能的并集,并在实现逻辑中充分考虑到各功能项在各不同单板上的具体细微差异。但这种方法具有如下缺点:1、具体实现非常繁杂,方案的可理解性及程序的可读性都比较差,因为在大型复杂系统中,硬件管理模块的功能较为复杂,且由于各单板在系统中的地位不同,使得各单板在硬件管理的具体功能上有较大的差异,并且,另外一个因素在于主控板和交换板在实现冗余保护(即主备倒换)功能时,主用设备与备用设备上的硬件管理模块所实现的具体功能又有较大差异(如只有对主用地位的主控板才实施写硬件无效操作),具体到实现细节的细微差异就更大。这就导致该模块的控制逻辑、实现流程非常繁杂,最终导致代码设计阶段的复杂,从而使程序的可读性及可维护性大大降低,降低了开发效率。2、该模块与其它模块接口关系不必要的复杂化,由于居于核心控制地位的主控板的硬件管理模块是上层软件核心模块之一,它同时要负责将收集的硬件离散信息报告给其它相关模块,并接收其它有关模块的消息以实施对硬件的特定操作(如:设置主用设备无效、设置单板重新启动),另外还是所有硬件信息(包括静态信息,如槽位号、硬件版本号和动态信息,如:单板状态)写入数据库的唯一通道,因此,主控板上的硬件管理模块与其它模块、其它分系统有较多的接口关联,但其它单板比如线卡上的硬件管理不需要与其它模块具备接口关系,实现起来较为简单。3、给系统性能带来诸多问题,首先如上所述在线卡上的硬件管理模块必然关联进来一些不必要或不存在的对象类型,如数据库分系统只驻留在主控板上,其连带问题是,一方面产生了功能冗余,另一方面产生了大量的代码冗余,另外,线卡上管理模块要与线卡上本来不存在的对象类型接口,增加了通讯开销,同时增加了技术难度。其次,由于线卡上的SDRAM(动静态随机存储器)和FLASH(非易失性存储器)容量和主控板相比要小得多,因此,程序的冗余有可能对线卡带来严重后果。
发明内容
本发明的目的是提供一种分布式多个对象实现分布式单板上硬件管理的方法,既能简化设计,降低开发技术难度,又能避免代码冗余,同时,也提高程序可读性及易维护性。
本发明所述的方法是这样实现的,其包括以下步骤:步骤1深入细致分析各单板上硬件管理模块的功能需求差异;步骤2,分析各单板上硬件管理模块与其它模块的接口关联关系差异;步骤3,分析各单板上硬件管理模块运行环境条件的差异,各单板存储容量具体情况是,主控板的动静态内存SDRAM的容量为64M,非易失性内存FLASH的容量为8M,交换板的动静态内存(SDRAM)的容量和非易失性内存FLASH的容量都为8M,而所有线卡如ATM155、ETH1000 SDRAM大小和FLASH大小都为2M。步骤4,依据上述分析,确定划分硬件管理对象的标准,并逐一确定所需要的硬件管理对象。
其中所说的步骤1中分析结果为,P CPB(Primary Control ProcessBoard,主用主控板)上的硬件管理模块要实现以下功能,1)、获得主备竞争标志;2)、提供单板硬件属性信息,如槽位号,硬件版本信息,端口信息;3)、读取单板热插拔离散信号;4)、读取单板离线离散信号;5)、提供主备倒换离散信号控制接口(读取/设置);6)、设置各个单板的软件复位功能。B CPB(Backup Control Process Board,备用主控板)相比少了第3)、4)、5)项功能。P SPB(Primary Switch Process Board,主用交换板)上的硬件管理模块相比少了第3)项功能;B SPB(Backup Switch ProcessBoard,备用交换板)上的硬件管理模块相比少了第3)、4)、5)项功能。ATM(Asychronous Transfer Mode,此专指异步传输模式的用户接口卡)上的硬件管理相比少了第1)、3)、5)项功能。其它线卡,如以太卡上的硬件管理与ATM相同。
其中所说的步骤2,在本系统中的所有单板中唯有主控板上的硬件管理需要与数据库子系统关联,同时数据库也只驻留在主控板上。
其中所说的步骤4,依据上述步骤的分析结果,由于在本系统中的所有单板中唯有主控板上的硬件管理需要与数据库子系统关联,为了避免将这种关联带给交换板和线卡,因此,首先将主控板上的硬件管理设计为一个单独的对象类型,即单板硬件管理类型(OBJECTHARDSYSCTRL)。而交换板上的硬件管理比线卡上多出第1)、5)项功能,并且运行环境也有所差异,因此将交换板上的硬件管理设计为另一个单独的对象类型,即交换板硬件管理类型(OBJECTSPBHARDSYSCTRL);至于各线卡虽然单板类型不同,但其功能项却完全一致,并且运行环境也一致,因此统一设计为一个对象类型,即单板硬件管理类型(OBJECTBOARDHARDSYSCTRL)。
对上述三个对象类型采用UML(Unified Modeling Language标准建模语言)设计工具进行设计,三类硬件管理对象类型的实现,分别由驻留在主控板,交换板和各线卡(包括:ATM、以太网卡)上的主控板硬件管理模块,交换板硬件管理模块,和线卡硬件管理模块对相应的硬件进行监测管理。
所说的主控板硬件管理模块对硬件监测管理流程主要是:首先要取得本板的基本硬件属性包括槽位号、硬件版本类型、端口信息,取得主备标志值并依据该值决定下面的流程,若是主用设备,检查各单板在位,并依据在位情况判断最小系统是否满足,如果满足,则检测是否有热插拔或倒换请求,如果有,还要去抖动,如果确实有热插拔或倒换发生,则上告系统;若是备用设备,检测主用设备是否已无效,若发现无效并经过去抖动后仍然无效,则上告系统并触发本板升为主用设备。
所说的交换板硬件管理模块对硬件监测管理,流程主要是:首先要取得本板的基本硬件属性包括槽位号、硬件版本类型、端口信息,取得主备标志值并依据该值决定下面的流程,若是主用设备,检测是否有倒换请求,如果有,还要去抖动,如果确实有倒换发生,则上告系统;若是备用设备,检测主用设备是否已无效,若发现无效并经过去抖动后仍然无效,则上告系统并触发本板升为主用设备。
所说的线卡硬件管理模块对硬件监测管理,流程主要是:取得本板的基本硬件属性包括槽位号、硬件版本类型、端口信息,检测是否有硬件离线请求,如果有,还要去抖动,如果确实有硬件离线请求,则上告系统。
本发明所述方法与现有技术相比,具有实质性的进步:通过多个对象分布于各功能需求与运行环境各不相同的单板上,很好地解决了同一对象分布与各单板上所产生的诸多难题,既大大简化了设计,降低了开发技术难度,缩短了开发周期,提高了开发效率,又避免代码的大量冗余,提高了程序运行效率,同时也提高了程序可读性及易维护性。
附图说明
图1是本发明的主控板硬件管理模块硬件监测流程图。
图2是本发明的交换板硬件管理模块硬件监测流程图。
图3是本发明的线卡硬件管理模块硬件监测流程图。
图4是本发明的三个对象在各自单板应用分布图。
具体实施方式
请参阅图1所示,它说明了主控板硬件管理模块对硬件监测管理流程10,其进程是:执行步骤100,流程10启动,执行步骤101,取得本板属性,包括槽位号,硬件板本类型,端口信息,执行步骤102取得本板主备竞争标志值,执行步骤103,判断该板是否为主用?若不是主用,执行步骤104,该步骤104包括步骤1041-1045,先执行步骤1041检测主用无效,执行步骤1042,判别是否主用无效?若不是,则返回执行步骤1041;若是无效,则执行步骤1043,对变化的硬件离散信号去抖动,执行步骤1044,判别是否确有变化,若无变化,便返回执行步骤1041,若有变化则执行步骤105,首先执行步骤1051,取得各槽位上单板在位信息,之后执行步骤1052,判别是否满足最小系统,若不满足,便返回执行步骤1051,若满足则执行步骤106,首先执行步骤1061,检测硬件倒换请求,之后依次执行步骤1062检测单板热插拨,执行步骤1063,判别有离散信号变化吗,若无变化,便返回执行步骤1061;若有变化,则继续下去执行步骤1064,对变化的硬件离散信号去抖动,执行步骤1065,判别是否确有变化,若无变化,便返回执行步骤1061,若确有变化,则执行步骤1066,通知上层软件,再返回执行步骤106,概括起来,本管理程10,其主要是先取得本板的属性和建立标志,判别是否为主板,确定不是主板或是主板,但属主板最小系统后,执行对硬件主备倒换监测。
请参阅图2,它说明了交换板硬件管理模块对硬件的监测管理流程20,其进程是:执行步骤200,启动程序20执行步骤201,取得本板的基本硬件属性,包括槽位号硬件板本类型,端口信息,执行步骤202,取得本板主备竞争标志值,执行步骤203,判别该板是否为主用?若为主用,便执行步骤205,进行硬件倒换检测;若不是主用,则执行步骤204,进行主用无效检测,首先执行步骤2041,检没主用无效,执行步骤2042判别是否主用无效,若不是无效,便返回执行步骤2041;若主用无效,则执行步骤2043,对变化的硬件离散信号去抖动,执行步骤2044,判别是否确有变化?若确无变化,便返回执行步骤2041若有变化,则执行步骤2045,通知上层软件,之后,执行步骤205。
请参阅图3,它说明了线卡或称单板硬件管理模块,硬件监测程序30,其流程是:执行步骤300,程序开始,执行步骤301,取得本板属性,包括槽位号,硬件版本类型,端口信息,执行步骤302,检没硬件离线请求,执行步骤301,判别是否有离散信号变化?若无变化,便返回执行步骤302;若有变化,则执行步骤304,对变化的硬件离散信号去抖动,执行步骤305,判别是否确有变化,若无变化,便返回执行步骤302;若确有变化,则执行步骤306,通知上层软件,之后,又返回执行步骤302,循环执行上述步骤。
请参阅图4,它说明三个对象在各自单板上的应用分布,即主控板硬件管理模块硬件监测程序(ObjectHardSysCtrl)运行在主用主控板及备用主控板上,交换板硬件管理模块监测程序(ObjectSPBHardSysCtrl)运行在主用交换板及备用交换板上,和线卡硬件管理模块三件监测程序(ObjectBOARDHardSysCtrl)运行在所有线卡上,包括ATM板、以太网板。
下面结合附图并通过具体实施例对本发明作进一步详细描述。以下是该发明的实际应用实例。
应用实施例1:一种多对象实现分布式功能的方法及装置的使用实例1.1 应用配置
调试机单PC机及单板:CPB+SPB+ATM或以太板,调试机(HOST)和单板间用单独的以太局域网通信(TCP/IP)。各单板通过以太网控制通道通讯(TCP/IP)。1.2 以下是硬件管理三个对象类型的完整应用过程
1、制作bootrom并直接烧入目标板(如:CPB、SPB、ATM155、以太板);
2、制作内核并下载到目标板(下载使用TFTP协议,下载前必须先启动调试机端的FTP服务器(SERVER)。
3、在生成主控板的应用程序时选择ObjectHardSysCtrl;在生成交换板的应用程序时选择ObjectSPBHardSysCtrl;在生成ATM155和以太线卡的应用程序时都选择ObjectBoardHardSysCtrl,并分别生成三个应用程序CPB_app.out、SPB_app.out、Board_app.out。
4、将生成的CPB_app.out程序download下载到主控板上;将生成的SPB_app.out程序download到交换板上;将生成的Board_app.out程序分别download到ATM和以太板上,并运行、调试。
使用该方法及装置,充分体现了以下特点:
首先,在生成不同单板的应用程序时只需要在三个对象类型中(ObjectHardSysCtrl、ObjectSPBHardSysCtrl、ObjectBoardHardSysCtrl)选择一个即可,另外两个并未使用,对当前运行目标板而言,相当于节省了代码,也降低了内存等资源需求;
其次,运行于各单板的应用程序大小相差较大(当然,这种差异不完全是由于ObjectHardSysCtrl与ObjectBoardHardSysCtrl的差异所致),如:ObjectHardSysCtrl为11470K,ObjectBoardHardSysCtrl为3702K;
再次,在调试中,若需要在ObjectSPBHardSysCtrl或ObjectBoardHardSysCtrl的代码中设置断点或查询函数时,因其逻辑简单,代码量小,可读性强,使得各种调试操作非常易于进行,从而减少了调试难度,也节省了调试时间,提高了产品开发效率。
通过使用可以了解,本发明中使用多个对象分布于功能需求及运行环境迥异的各个单板上的方法及装置,提供一种简单、清晰、高效的设计思路,从而既简化了设计,降低了开发技术难度,缩短了开发周期,节省了开发成本,又有效地避免了大量代码冗余,切实提高了程序运行效率,同时也提高了程序可读性及易维护性,提升了产品性能。
Claims (9)
1.一种对多对象实现分布式功能的方法,其步骤包括:
步骤1、分析各单板上硬件管理模块的功能需求差异;
步骤2、分析各单板上硬件管理模块与其它模块的接口关联关系差异;
步骤3、分析各单板上硬件管理模块运行环境条件的差异;
步骤4、确定划分硬件管理对象的标准,并逐一确定所需要的硬件管理对象。
2、根据权利要求1所述的对多种对象实现分布功能的方法,其特征在于,对各单板上硬件管理模块的功能需求差异的分析结果是:主用主控板上的硬件管理模块要实现以下功能:1)、获得主备竞争标志,2)、提供单板硬件属性信息,包含槽位号、硬件版本信息、端口信息,3)、读取单板热插拔离散信号,4)、读取单板离线离散信号,5)、提供主备倒换离散信号控制读取/设置接口,6)、设置各个单板的软件复位功能;对比之下,备用主控板上的硬件管理模块却少了上述第3)、4)、5)三项功能;主用交换板上的硬件管理模块少了上述第3)项功能;备用交换板上的硬件管理模块少了上述的第3)、4)、5)项功能;ATM用户接口卡上的硬件管理少了上述的第1)、3)、5)三项功能;其它线卡,包括以太卡上的硬件管理与ATM用户接口卡的相同。
3、根据权利要求1所述的对多种对象实现分布功能的方法,其特征在于,对各单板上硬件管理模块与其它模块的接口关联关系的差异的分析足:在本系统中的所有单板中唯有主控板上的硬件管理需要与数据库子系统关联,同时数据库也只驻留在主控板上。
4、根据权利要求1所述的对多种对象实现分布功能的方法,其特征在于,各单板上硬件管理模块运行环境的差异是:主控板的动静态内存容量为64M,非易失性内存的容量为8M,交换板的动静态内存的容量和非易失性内存容量都为8M,而所有线卡动态存贮内存容量和非易失性内存容量都为2M。
5、根据权利要求1或2或3或4所述的对多种对象实现分布功能的方法,其特征在于,依据上述步骤的分析结果,对多对象的管理模块分为主控板硬件管理类型、交换板硬件管理类型、线卡单板硬件管理类型。
6、根据权利要求5所述的对多种对象实现分布功能的方法,其特征在于,采用标准建模语言设计工具分别对主控板硬件管理类型和交换板硬件管理类型,以及线卡单板硬件管理类型分别设计主控板硬件管理模块和交换板硬件管理模块,以及线卡硬件管理模块。
7、根据权利要求6所述的对多种对象实现分布功能的方法,其特征在于,所述的主控板硬件管理模块驻留在主控板上,其对硬件的监测管理流程主要是:首先要取得本板的基本硬件属性包括槽位号、硬件版本类型、端口信息,取得主备标志值并依据该值决定下面的流程,若是主用设备,检查各单板在位,并依据在位情况判断最小系统是否满足,如果满足,则检测是否有热插拔或倒换请求,如果有,还要去抖动,如果确实有热插拔或倒换发生,则上告系统;若是备用设备,检测主用设备是否已无效,若发现无效并经过去抖动后仍然无效,则上告系统并触发本板升为主用设备。
8、根据权利要求6所述的对多种对象实现分布功能的方法,其特征在于,所说的线卡硬件管理模块驻留在各线卡上,其对硬件的监测管理流程主要是:取得本板的基本硬件属性包括槽位号、硬件版本类型、端口信息,检测是否有硬件离线请求,如果有,还要去抖动,如果确实有硬件离线请求,则上告系统。
9、根据权利要求6所述的对多种对象实现分布功能的方法,其特征在于,所说的交换板硬件管理模块驻留在交换板上,其对硬件的监测管理流程主要是:首先要取得本板的基本硬件属性包括槽位号、硬件版本类型、端口信息,取得主备标志值并依据该值决定下面的流程,若是主用设备,检测是否有倒换请求,如果有,还要去抖动,如果确实有倒换发生,则上告系统;若是备用设备,检测主用设备是否已无效,若发现无效并经过去抖动后仍然无效,则上告系统并触发本板升为主用设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB011322233A CN100369003C (zh) | 2001-11-16 | 2001-11-16 | 对多对象实现分布式功能的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB011322233A CN100369003C (zh) | 2001-11-16 | 2001-11-16 | 对多对象实现分布式功能的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1420435A true CN1420435A (zh) | 2003-05-28 |
CN100369003C CN100369003C (zh) | 2008-02-13 |
Family
ID=4671261
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB011322233A Expired - Fee Related CN100369003C (zh) | 2001-11-16 | 2001-11-16 | 对多对象实现分布式功能的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100369003C (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103516570A (zh) * | 2012-06-28 | 2014-01-15 | 中兴通讯股份有限公司 | 多对象竞争实现方法和系统 |
WO2016101846A1 (zh) * | 2014-12-22 | 2016-06-30 | 中兴通讯股份有限公司 | 一种单板槽位地址的配置方法、装置及光网络站点设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001079962A2 (en) * | 2000-04-13 | 2001-10-25 | Stratus Technologies International, S.A.R.L. | Fault-tolerant maintenance bus, protocol, and method for using the same |
CN1109416C (zh) * | 2000-04-25 | 2003-05-21 | 华为技术有限公司 | 交换机的主备倒换方法及其实现装置 |
-
2001
- 2001-11-16 CN CNB011322233A patent/CN100369003C/zh not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103516570A (zh) * | 2012-06-28 | 2014-01-15 | 中兴通讯股份有限公司 | 多对象竞争实现方法和系统 |
CN103516570B (zh) * | 2012-06-28 | 2017-10-27 | 中兴通讯股份有限公司 | 多对象竞争实现方法和系统 |
WO2016101846A1 (zh) * | 2014-12-22 | 2016-06-30 | 中兴通讯股份有限公司 | 一种单板槽位地址的配置方法、装置及光网络站点设备 |
Also Published As
Publication number | Publication date |
---|---|
CN100369003C (zh) | 2008-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100511177C (zh) | 一种嵌入式系统的符号定位方法 | |
AU2001266937A1 (en) | Embedded diagnostic system and method | |
Raiteri et al. | Repairable fault tree for the automatic evaluation of repair policies | |
CN100422953C (zh) | 利用HDL扩展串口的SoC系统在线调试方法 | |
CN103530225B (zh) | 自动化编译测试方法及实现该方法的自动化编译测试平台 | |
CN101739319B (zh) | 计算机装置 | |
CN115935631A (zh) | 用于车机设备的测试系统和方法、存储介质 | |
Arpaci-Dusseau et al. | Searching for the sorting record: Experiences in tuning NOW-Sort | |
US6847927B2 (en) | Efficient array tracing in a logic simulator machine | |
US20040034841A1 (en) | Emulation components and system including distributed event monitoring, and testing of an IC design under emulation | |
CN114490023A (zh) | 一种基于arm和fpga的高能物理可计算存储设备 | |
De Florio et al. | /spl Rscr//spl epsi//spl Lscr: a fault tolerance linguistic structure for distributed applications | |
CN100369003C (zh) | 对多对象实现分布式功能的方法 | |
Rao et al. | Simulation of ultra-large communication networks | |
Qun et al. | A framework for dynamic software architecture-based self-healing | |
Buchmann et al. | How to run experiments with large peer-to-peer data structures | |
CN116244186A (zh) | 一种操作系统测试管理方法、装置与计算设备 | |
CN1252593C (zh) | 板级支持包的仿真方法 | |
CN106656553B (zh) | 基于nfv设备的系统性能检测及调优方法 | |
CN111966656B (zh) | 存储文件高负载场景模拟方法、系统、终端及存储介质 | |
CN114047949A (zh) | 一种应用系统国产平台迁移适配方法 | |
CN115204081A (zh) | 芯片仿真方法、平台和系统、计算机可读存储介质 | |
CN112068980A (zh) | 采样cpu挂死前信息的方法和装置、设备和存储介质 | |
Maraninchi et al. | SystemC/TLM semantics for heterogeneous system-on-chip validation | |
JPH10221410A (ja) | Lsiの自動論理検証方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
ASS | Succession or assignment of patent right |
Owner name: SHENZHENG CITY ZTE CO., LTD. Free format text: FORMER OWNER: SHENZHENG CITY ZTE CO., LTD. SHANGHAI SECOND INSTITUTE Effective date: 20030724 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20030724 Applicant after: Zhongxing Communication Co., Ltd., Shenzhen City Applicant before: Shanghai Inst. of No.2, Zhongxing Communication Co., Ltd., Shenzhen City |
|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080213 Termination date: 20131116 |