08-第8章 软件系统概述

目 录

第8章 软件系统概述..............................................................................................................8-1

8.1 概述.................................................................................................................................... 8-1

8.1.1 操作系统.................................................................................................................. 8-1 8.1.2 通信任务.................................................................................................................. 8-2 8.1.3 资源管理类任务....................................................................................................... 8-4 8.1.4 呼叫处理类任务....................................................................................................... 8-4 8.1.5 数据库管理类任务.................................................................................................... 8-5 8.1.6 维护类任务.............................................................................................................. 8-5 8.2 操作系统............................................................................................................................. 8-5

8.2.1 任务管理.................................................................................................................. 8-5 8.2.2 消息管理.................................................................................................................. 8-7 8.2.3 内存管理.................................................................................................................. 8-8 8.2.4 时限管理.................................................................................................................. 8-9 8.2.5 系统初始引导和系统恢复......................................................................................... 8-9 8.3 数据结构与数据库............................................................................................................ 8-11

8.3.1 数据结构................................................................................................................ 8-11 8.3.2 数据库结构............................................................................................................ 8-11

第8章 软件系统概述

8.1 概述

C&C08数字程控交换系统的软件系统是按照软件工程的要求设计的,采用自顶向下和分层模块化的程序设计方法,实施严格的文档控制,以保证目标软件的可控性。设计中遵守软件集成化的设计思路,并使用SDL 语言、CASE 工具进行代码生成,以保证目标代码的严格可控性,使软件系统具备高可靠、易维护、易扩展的特点。主机软件主要采用C 语言作为编程语言,使得源代码易读,可维护性好。 C&C08数字程控交换系统的软件系统由以下几个部分组成:

z z z z z z

操作系统 通信类任务 资源管理类任务 呼叫处理类任务 数据库管理类任务 维护类任务

其中操作系统为软件系统的内核,属系统级程序,而通信类任务、资源管理类任务、呼叫处理类任务、数据管理类任务以及维护类任务是基于操作系统之上的应用级程序。

8.1.1 操作系统

按任务调度策略分类,操作系统可分为批量处理操作系统、分时操作系统和实时操作系统3类,分别应用于不同场合。在程控交换应用领域中,要求对事件实时响应,因此必须采用实时操作系统。

C&C08数字程控交换系统的操作系统是一个嵌入式应用环境下的实时系统,其基本功能有:

z z z z z

系统初始化 内存管理 程序加载 时限管理 中断管理

z z z z z z

时钟管理 任务调度 系统负荷控制 消息包管理 系统容错 补丁管理

其中系统初始化完成整个系统软件环境和硬件环境的配置和初始化。 内存管理完成处理器中存储器资源的动态申请和释放。

程序加载是将后台上的程序和数据装载到主处理器的内存中并引导执行。 时限管理完成各种定时任务的启动、激活或撤消。 中断管理完成中断向量表的设置,执行中断处理程序。

时钟管理指系统时间的管理,系统时间包括年、月、日、时、分、秒和星期。 任务调度指任务优先级调度及其相应的资源(处理机和内存)管理和分配。 系统负荷控制指操作系统实时监视处理机的利用率(或称之为忙闲度)情况, 当利用率超过预定的上限阈值时采取过载控制,即暂停一些优先级低的任务来降低处理机负荷,使处理机迅速脱离过载状态。此后,当处理机利用率恢复正常,并继续下降到预定的利用率下限阈值时,才解除过载控制。通过设置上、下阈值,可使处理机处在最佳利用率状态下运行。

消息包是软件系统各任务间通信的实体,任何一个任务的激活是由另一任务或操作系统发送的消息包来驱动的。

系统容错管理指操作系统监视系统运行和任务执行的情况,一旦出现异常(例如,寻址过大、程序死循环、内存故障、处理机故障) ,可采取相应的故障处理和系统恢复措施,确保系统正常运行。

补丁管理指操作系统提供的软件自升级功能,当整个软件系统需要进行一些功能性改进时,可以通过补丁管理实现在线升级,降低功能改进的风险。

8.1.2 通信任务

C&C08数字程控交换系统是一个多处理机系统,各模块主处理机之间,同一模块主处理机同各二级处理机之间的通信工作由通信类任务来完成。

z

模块主/备用处理机通信任务

为确保系统的可靠性,模块处理机通常为双机配置,主/备用热备份方式工作。一旦模块主用处理机故障,备用处理机将转为主用处理机来支撑整个交换系统的运转。

z

模块间通信任务

C&C08数字程控交换系统由多模块组成,其结构如图8-1所示:

AM/CM:管理和通信模块 SM:交换模块

SPM :业务处理模块 SRM:共享资源模块

图8-1 C&C08交换平台

模块间通信(SM/SPM之间或SM/SPM与AM/CM之间)由模块间通信任务完成。模块间通信采用HDLC 高速数据链路或内部No.7信令协议。

z

主节点通信任务

用户/中继单板上的二级处理机完成用户/中继电路的模拟/数字信号的采集和分析,并按一定协议格式由主节点通信任务上报模块主处理机;或在接收模块主处理机指令后,通过主节点通信任务给用户终端或对方局下发命令。

z

前/后台通信任务

后台终端系统提供对交换系统的维护管理操作,它是一个网络系统,可允许多台工作站同时对交换系统进行操作。

z

告警通信任务

告警通信任务负责模块各部分与告警板以及告警箱之间的通信。

z

主机与数据链路层协议系统的通信任务

主要完成MPU 同交换平台中其它处理机系统间的通信工作。

软件系统内部各软件任务间的通信则由操作系统中消息包管理程序负责完成,不属通信类任务之列,通信类任务因实时性要求很强,因此任务优先级很高。

8.1.3 资源管理类任务

此处所指资源是同交换业务相关的硬件资源(如交换网络、信号音源、收号器、发号器、语音邮箱等),资源管理类任务完成对硬件资源的初始化、申请、释放、维护以及测试等工作,具体包括如下几类:

z z z z z z

交换网络管理任务 信号音源管理任务 双音收发号器管理任务 多频信号收发器管理任务 语音邮箱和管理任务 电脑话务员管理任务

以上任务也因为与硬件平台关联,因而任务优先级较高,它们主要为呼叫处理类任务提供服务支持。

8.1.4 呼叫处理类任务

呼叫处理类任务完成具体的呼叫业务,按Q.931建议,它分为用户侧和网络侧两个层次。其中用户侧任务又可划分为如下几类:

z z z z z z z z z z

模拟用户管理任务 数字用户管理任务 模拟中继管理任务 数字中继管理任务

No.7 信令管理任务(如:TUP 任务、ISUP 任务等) 接入网用户管理任务 30B+D接口任务 分组网接口任务 话务员管理任务 中国一号信令管理任务

网络侧任务可划分为:

z z z z

号码分析(如主叫号码分析、被叫号码分析、号码变换等) 号码定位 中继选线

鉴权(如黑白名单、网管指令等)

8.1.5 数据库管理类任务

数据库管理类任务负责整个交换系统的所有数据管理(包括配置数据、用户数据、局数据、中继数据、网管数据以及计费数据等),所完成工作包括数据存取和组织、数据维护、数据更新、数据备份和数据恢复。

C&C08数字程控交换系统的数据库为分布式关系数据库,每一关系表描述一组彼此相关的数据,而每一关系表又是相对独立的。数据库提供多级索引机制以及树型查找算法为其它应用任务提供快捷服务。

8.1.6 维护类任务

维护类任务支持维护人员对交换设备的运行情况进行监视和管理,它包括:

z z z z z z z z

设备管理 告警管理 计费及话单管理 话务统计 信令监视 呼叫接续过程跟踪 用户/中继测试 通用消息跟踪

8.2 操作系统

8.2.1 任务管理

1. 任务状态

任务具有动态的状态,包括执行态(Executing )、就绪态(Ready )、挂起态(Suspended )、休眠态(Dormant )。

执行态任务指当前正占用处理机(CPU )资源,其程序逻辑正在被执行的任务。在任一瞬间,处理机只能执行一个任务,即只有一个任务处在执行态。

被执行的任务准备好后,处于就绪态。如当模拟用户任务在摘机事件发生后,即处于就绪态。系统中,依据就绪态任务的优先级,依次加以执行。

正在等待事件发生的任务,处于挂起态。如模拟用户任务在用户未摘机前,处于等待摘机事件发生的挂起状态。

休眠态任务指未初始化,或被系统删除的任务。 操作系统中,任务状态迁移原理如图8-2所示:

图8-2 操作系统中任务状态迁移

2. 任务调度

操作系统的任务调度策略是基于任务优先级和事件优先级的抢占式调度,高优先级就绪任务优先占用处理机资源执行,同一优先级的任务按其就绪先后次序调度执行。每一任务创建时,赋予一个优先数(0~255),优先数越小,优先级越高,0代表系统的最高优先级。

通常,当某一高优先级任务T1因等待某一资源而被挂起,而恰好此资源被另一低优先级任务T2占用而未被释放,会发生高优先级任务被低优先级任务阻塞,称之为优先级倒置(priority inversion)。C&C08数字程控交换系统的操作系统提供优先级继承(priority inheritance)技术来解决此问题,一旦高优先级任务被低优先级任务阻塞,可临时提高低优先级任务的优先级到适当级别,以便让低优先级任务尽可能快地执行以释放高优先级任务所急需的公共资源。

当低优先任务正在执行时,若有事件发生让高优先级任务处于就绪态,此时,高优先级就绪任务可打断正在执行的低优先级任务,将其挂起进而抢占CPU 的控制权,以满足系统实时性要求。 3. 任务结构及执行流程

在C&C08数字程控交换系统中,每一任务创建后,都会被赋予唯一标识(ID ),称之为任务号。每一任务大致包括两部分内容,一为初始化部分(Initialization ),二为事件处理部分。

一个任务创建后,它先完成自身内部初始化工作,然后挂起等待事件(如摘机、拨号等)发生;一旦事件发生后,操作系统将任务置为就绪态,经任务调度,进入执行态,处理相应事件,事件处理完毕后挂起,再等待下一轮事件的发生,如此反复循环。

4. 任务互斥与同步

系统中,任务间的关系可分为资源互斥与逻辑同步两类。资源互斥是指任务之间共享某种资源,而这些资源在某一时刻只能为一个任务占用;逻辑同步是指任务之间有一种确定的先后次序关系,仅当某一任务执行到某一点后,其它任务才能继续运行。系统通过信号灯(Semaphore )或开/关中断方式协调任务间的互斥,通过事件驱动方法来保证任务间的同步,当某一任务执行到某一点后,发送消息包去激活其它任务执行。

8.2.2 消息管理

除定时事件以及中断事件外,系统中任务间的通信主要由消息事件来驱动和完成。一个消息有以下两个方面的功能:

z z

激活其它任务就绪、执行 任务间传递数据

1. 消息描述

消息块可以用C 语言中的结构来描述,它既可以表示两个模块两个任务之间的消息,也可以表示同一个模块两个任务间的消息,甚至是同一任务内部的消息。 一旦某一任务T1申请消息块M ,并填充内容完毕,发送给任务T2后,则预示消息包事件M 将发生,即T2任务将由挂起态进入就绪态准备执行,另一方面,也表示T1将数据(包含在M 的data 域中即M.data )传递给了T2。 2. 消息队列管理

消息块通过队列方式管理,包括空闲队列、申请队列、就绪队列3类,每类队列由链表方式实现,如图8-3所示:

图8-3 消息队列

在整个系统中空闲队列、申请队列各一个,但就绪队列是每一个任务对应一个,同一任务所对应的就绪队列按消息事件的优先级和 发送消息 的先后次序组织。对于同一优先级的消息,以消息发出的时间先后顺序处理。为了节省空间和提高效率,系统为所有消息开辟一段公共缓冲区,队列操作仅仅是队列指针的变化,而消息块的内容无需拷贝搬动,其变化进程可用图8-4表示:

按按按按按相相按按按按)

释释按按按

图8-4 消息队列管理

8.2.3 内存管理

内存管理包括如下功能:内存分配与回收;内存检测与内存保护等。 1. 内存分配与回收

C&C08数字程控交换系统用链表方式来组织内存块,用最佳适应算法(Best_Fit)来分配内存。所谓最佳适应算法是在内存空闲链上寻找一个同当前申请大小最接近的空闲块,而尽量地减少内存碎片所占用空间,提高内存利用率。

2. 内存检测与内存保护

内存保护主要是防止内存越界。在内存控制块中有一个内存块标记域flag ,共2个字节,它存放2个特殊字符,如 M 和 Z ,用来表示此内存块正常(未被破坏)。若一旦内存控制块中flag 内容不为“M ”和“Z ”,则表示相应内存内容被破坏。 操作系统定时检测内存链上的每一内存控制块的合法性,如flag 的内容,是否为“M ”、“Z ”,其它域内容是否也在有效的范围内等,一旦发现问题,则要进行容错处理,可能要中止被破坏内存所属的任务,然后重新创建。

8.2.4 时限管理

时限管理是指根据实时处理要求进行各项任务,对无法按时的任务进行相应的处理,它包括如下内容:

z

周期性调度:即完成周期性任务。在C&C08操作系统中的周期性任务包括端口状态上报、数据校验等,其周期从10ms 到1天不等。

z

超时调度:指在指定的时间或时限,任务没有完成,系统发送超时消息,同时激活相应的超时处理程序。

8.2.5 系统初始引导和系统恢复

C&C08数字程控交换系统为了提高整机的可靠性和自愈能力,提供了两种重要的系统恢复级别:再启动和引导加载。再启动主要是执行初始化操作,根据再启动的级别决定是否重新进行引导加载,从而使系统控制变量及状态变量恢复到初始状态继续运行。引导加载是更高一级的恢复,要通过后台将程序和数据重新装入到内存,重新进行初始化并运行。 1. 再启动

系统提供了4级再启动,以适应不同的运行环境,方便终端维护,具体功能及影响简述如下:

(1) 一级再启动: 对部分功能块的控制及状态变量进行初始化。 a) 保持话单。

b) 保持已通话的用户,但影响正在接续的用户。 c) 不加载数据和程序。

(2) 二级再启动:对所有功能块的控制及状态变量进行初始化。 a) 保持话单。

b) 保持已通话的用户,但影响正在接续的用户。

c) 进行状态检查,不加载数据和程序。

(3) 三级再启动:整机系统重构。

a) 保持话单。

b) 影响已通话和正在接续的用户。

c) 加载数据,不加载程序。

(4) 四级再启动:整机系统重构。

a) 保持话单。

b) 影响已通话和正在接续的用户。

c) 既加载数据,也加载程序。

2. 引导与加载

整机引导与加载引导程序合在一起,固化在ROM 中。引导和加载的步骤如下:

(1) ROM BIOS 引导

系统加电后,首先跳入ROM BIOS中,完成主机板硬件包括内存、时钟、中断等的初始化,并将其自身及加载程序搬到内存低端,继续执行软件初始化,最后跳入加载程序。

(2) 加载

为方便加载程序对高端内存的访问,加载程序设计成保护模式,其执行流程依次是: a) 初始化全局描述符表、中断描述符表、局部描述符表、进入保护模式。 b) 初始化定时器中断。

c) 读硬件开关集(或软开关,在远程控制方式下),以决定是从后台还是从Flash 存储器中重新加载。程序和数据通过后台加载时可以只加载数据,也可以只加载程序,或者同时加载,对于不通过后台加载的部分则从Flash 存储器中加载。当从Flash 存储器中加载时,加载程序检查Flash 存储器中程序或数据是否真正可用,若检查结果不正确则自动要求通过后台加载。

d) 选择加载通路,不同的模块需使用不同的加载通路。

e) 与后台建立联系。

f) 加载,按照加载协议,将主机程序或数据加载到指定位置。

g) 校验,校验不正确则重新加载。

h) 经校验正确,如果加载程序的话,则根据加载开关决定是否将程序写入Flash 存储器。

i) 跳入主机程序执行,主机数据向数据Flash 存储器中的备份工作由主机完成,加载程序只负责校验工作。

8.3 数据结构与数据库

8.3.1 数据结构

C&C08数字程控交换系统的各项交换功能由程序控制完成,这些功能的引入和删除是由存贮在交换机系统数据库中的数据实现的,而数据库的管理由数据库管理系统(DBMS )来实现。在C&C08数字程控交换系统的数据库中,数据由二维表格组成,形成一些相关性的数据集合,称之为关系表(Relation )。

1. 数据字典

DBMS 中的数据定义由数据字典来描述,分为关系描述表和域描述表。

其中关系描述表描述关系表的结构,主要包括表类型、元组长度、表的最大元组数、缺省元组数、工作区表的校验和、表修改方式等。

域描述表对关系表中的每一个域进行定义,内容包括数据类型、域长度、排序方式、排序序号、通配符等。

2. 表类型和检索方法

数据库使用3种类型的关系表,分别是:

z 直接索引表:表的访问通过元组号直接访问,但元组号并不是关系表的一部

分,元组的插入和删除不影响表的排序。

z 顺序查找表:表中所有元组按顺序存放,检索从第一个元组开始,按顺序进

行,新加元组放在表的最后面。

z 排序表:关系表中的元组按关键字的值进行排序,表中不能存在两个排序字

段(关键域)的值完全相同的元组。在有多关键域的情况下,可对每个关键域分别指定其排序方式(升序或降序)和排序序号,排序序号小的优先排序。排序表的检索使用二分法,元组的插入和删除将引起后面元组的移动。

8.3.2 数据库结构

系统的数据库采用分布式的关系型数据库。每个交换模块/业务处理模块都存储有一部分数据,即拥有一个子数据库。从物理上看,这些子数据库之间是彼此分离的,但从逻辑上看,这些子数据库又构成一个有机的整体,通过相互协作共同完成全局数据库的功能。C&C08数字程控交换的数据库结构如图8-5所示:

图8-5 模块数据库结构

1. 数据库

数据库由多个关系表构成,由BAM 加载至主机内存中,并在FLASH 存贮器作备份,DBMS 对数据库的访问在RAM 中进行,无需磁盘操作,检查速度极快。数据的修改随时备份到FLASH MEMORY中,掉电不丢失。数据库在内存中占据一段连续的地址空间。

2. 数据库管理系统(DBMS )

(1) DBMS的功能主要包括以下几个方面:

a) 数据定义(定义关系表的结构、字段的类型、数据的分布地点、存取方式等)。 b) 为应用程序提供数据检索、存取、修改的接口。

c) 保证数据的一致性和安全性。

d) 数据备份。

(2) DBMS支持3种检索方法,通过数据字典可以查到该关系表的检索方法及相

关信息。

3. 应用程序接口(API )

数据库的应用程序接口是数据库功能块与其它功能块间的接口,它利用DBMS 提供的功能为呼叫处理、维护等功能块提供数据库访问接口。API 按照其功能可分为:

(1) 用户数据管理

用户数据的内容主要包括:号段数据、普通用户数据、小交用户群数据、 Centrex用户群数据、ISDN 用户数据、 V5用户数据、PRA 用户数据、AVM 用户数据、新业务数据等。

(2) 设备数据管理

设备管理即是对模块、机框、单板和其他特殊资源进行管理。设备数据一经设定,除非进行系统扩容,一般无需再做修改。

(3) ISDN数据管理

系统的ISDN 功能支持语音、数字、3.1kHz 音频和视频等多项传输业务,其传输方式有分组方式、多速率方式和从64kbit/s到1920kbit/s 的5种单一速率方式,ISDN 数据包括ISDN 用户参数和传输能力、传输速率、接入方式和通道个数等参数。

(4) 中继数据管理

中继数据包括局向数据、路由数据、子路由数据、中继群数据、中继电路数据等。

(5) No.7信令数据

C&C08数字程控交换系统可以提供中国一号、No.7信令方式,No.7信令为14/24位兼容。No.7信令数据管理主要包括对本局信息、MTP 信令链路集、MTP 信令路由、MTP 信令链路等的管理。

(6) V5接口数据

V5接口管理包括对V5接口的所有资源(主、备链路,所有物理C 通道、逻辑C 通道,2M 链路,承载通道,AN 用户端口)的管理。

(7) 计费数据

C&C08数字程控交换系统可以实现如下计费功能:对通话的主、被叫用户计费;中继的双向计费; 长途局对下级局的集中计费;对ISDN 呼叫承载能力、占用B 信道数、信息量计费;对Centrex 群的计费;具有详细话单、计次表两种计费方式;有立即计费功能;可以按日期类别、时区灵活设置通话费用。对于立即计费、还可以按日期类别、时区灵活设置附加费用。

(8) 号码分析数据管理

号码分析数据管理包括对呼叫源和主、被叫号码的相关数据进行管理。这部分数据包括呼叫源、呼叫字冠、限呼数据、号码变换、长途区号及国家代码。

(9) 网管数据管理

(10) 其它

除以上描述的数据外,还有许多系统参数数据,如定时器、命令组、操作员权限、工作站权限、系统时间等内容,由于涉及的面较广,需要超级管理人员才能修改,在此不再赘述。

目 录

第8章 软件系统概述..............................................................................................................8-1

8.1 概述.................................................................................................................................... 8-1

8.1.1 操作系统.................................................................................................................. 8-1 8.1.2 通信任务.................................................................................................................. 8-2 8.1.3 资源管理类任务....................................................................................................... 8-4 8.1.4 呼叫处理类任务....................................................................................................... 8-4 8.1.5 数据库管理类任务.................................................................................................... 8-5 8.1.6 维护类任务.............................................................................................................. 8-5 8.2 操作系统............................................................................................................................. 8-5

8.2.1 任务管理.................................................................................................................. 8-5 8.2.2 消息管理.................................................................................................................. 8-7 8.2.3 内存管理.................................................................................................................. 8-8 8.2.4 时限管理.................................................................................................................. 8-9 8.2.5 系统初始引导和系统恢复......................................................................................... 8-9 8.3 数据结构与数据库............................................................................................................ 8-11

8.3.1 数据结构................................................................................................................ 8-11 8.3.2 数据库结构............................................................................................................ 8-11

第8章 软件系统概述

8.1 概述

C&C08数字程控交换系统的软件系统是按照软件工程的要求设计的,采用自顶向下和分层模块化的程序设计方法,实施严格的文档控制,以保证目标软件的可控性。设计中遵守软件集成化的设计思路,并使用SDL 语言、CASE 工具进行代码生成,以保证目标代码的严格可控性,使软件系统具备高可靠、易维护、易扩展的特点。主机软件主要采用C 语言作为编程语言,使得源代码易读,可维护性好。 C&C08数字程控交换系统的软件系统由以下几个部分组成:

z z z z z z

操作系统 通信类任务 资源管理类任务 呼叫处理类任务 数据库管理类任务 维护类任务

其中操作系统为软件系统的内核,属系统级程序,而通信类任务、资源管理类任务、呼叫处理类任务、数据管理类任务以及维护类任务是基于操作系统之上的应用级程序。

8.1.1 操作系统

按任务调度策略分类,操作系统可分为批量处理操作系统、分时操作系统和实时操作系统3类,分别应用于不同场合。在程控交换应用领域中,要求对事件实时响应,因此必须采用实时操作系统。

C&C08数字程控交换系统的操作系统是一个嵌入式应用环境下的实时系统,其基本功能有:

z z z z z

系统初始化 内存管理 程序加载 时限管理 中断管理

z z z z z z

时钟管理 任务调度 系统负荷控制 消息包管理 系统容错 补丁管理

其中系统初始化完成整个系统软件环境和硬件环境的配置和初始化。 内存管理完成处理器中存储器资源的动态申请和释放。

程序加载是将后台上的程序和数据装载到主处理器的内存中并引导执行。 时限管理完成各种定时任务的启动、激活或撤消。 中断管理完成中断向量表的设置,执行中断处理程序。

时钟管理指系统时间的管理,系统时间包括年、月、日、时、分、秒和星期。 任务调度指任务优先级调度及其相应的资源(处理机和内存)管理和分配。 系统负荷控制指操作系统实时监视处理机的利用率(或称之为忙闲度)情况, 当利用率超过预定的上限阈值时采取过载控制,即暂停一些优先级低的任务来降低处理机负荷,使处理机迅速脱离过载状态。此后,当处理机利用率恢复正常,并继续下降到预定的利用率下限阈值时,才解除过载控制。通过设置上、下阈值,可使处理机处在最佳利用率状态下运行。

消息包是软件系统各任务间通信的实体,任何一个任务的激活是由另一任务或操作系统发送的消息包来驱动的。

系统容错管理指操作系统监视系统运行和任务执行的情况,一旦出现异常(例如,寻址过大、程序死循环、内存故障、处理机故障) ,可采取相应的故障处理和系统恢复措施,确保系统正常运行。

补丁管理指操作系统提供的软件自升级功能,当整个软件系统需要进行一些功能性改进时,可以通过补丁管理实现在线升级,降低功能改进的风险。

8.1.2 通信任务

C&C08数字程控交换系统是一个多处理机系统,各模块主处理机之间,同一模块主处理机同各二级处理机之间的通信工作由通信类任务来完成。

z

模块主/备用处理机通信任务

为确保系统的可靠性,模块处理机通常为双机配置,主/备用热备份方式工作。一旦模块主用处理机故障,备用处理机将转为主用处理机来支撑整个交换系统的运转。

z

模块间通信任务

C&C08数字程控交换系统由多模块组成,其结构如图8-1所示:

AM/CM:管理和通信模块 SM:交换模块

SPM :业务处理模块 SRM:共享资源模块

图8-1 C&C08交换平台

模块间通信(SM/SPM之间或SM/SPM与AM/CM之间)由模块间通信任务完成。模块间通信采用HDLC 高速数据链路或内部No.7信令协议。

z

主节点通信任务

用户/中继单板上的二级处理机完成用户/中继电路的模拟/数字信号的采集和分析,并按一定协议格式由主节点通信任务上报模块主处理机;或在接收模块主处理机指令后,通过主节点通信任务给用户终端或对方局下发命令。

z

前/后台通信任务

后台终端系统提供对交换系统的维护管理操作,它是一个网络系统,可允许多台工作站同时对交换系统进行操作。

z

告警通信任务

告警通信任务负责模块各部分与告警板以及告警箱之间的通信。

z

主机与数据链路层协议系统的通信任务

主要完成MPU 同交换平台中其它处理机系统间的通信工作。

软件系统内部各软件任务间的通信则由操作系统中消息包管理程序负责完成,不属通信类任务之列,通信类任务因实时性要求很强,因此任务优先级很高。

8.1.3 资源管理类任务

此处所指资源是同交换业务相关的硬件资源(如交换网络、信号音源、收号器、发号器、语音邮箱等),资源管理类任务完成对硬件资源的初始化、申请、释放、维护以及测试等工作,具体包括如下几类:

z z z z z z

交换网络管理任务 信号音源管理任务 双音收发号器管理任务 多频信号收发器管理任务 语音邮箱和管理任务 电脑话务员管理任务

以上任务也因为与硬件平台关联,因而任务优先级较高,它们主要为呼叫处理类任务提供服务支持。

8.1.4 呼叫处理类任务

呼叫处理类任务完成具体的呼叫业务,按Q.931建议,它分为用户侧和网络侧两个层次。其中用户侧任务又可划分为如下几类:

z z z z z z z z z z

模拟用户管理任务 数字用户管理任务 模拟中继管理任务 数字中继管理任务

No.7 信令管理任务(如:TUP 任务、ISUP 任务等) 接入网用户管理任务 30B+D接口任务 分组网接口任务 话务员管理任务 中国一号信令管理任务

网络侧任务可划分为:

z z z z

号码分析(如主叫号码分析、被叫号码分析、号码变换等) 号码定位 中继选线

鉴权(如黑白名单、网管指令等)

8.1.5 数据库管理类任务

数据库管理类任务负责整个交换系统的所有数据管理(包括配置数据、用户数据、局数据、中继数据、网管数据以及计费数据等),所完成工作包括数据存取和组织、数据维护、数据更新、数据备份和数据恢复。

C&C08数字程控交换系统的数据库为分布式关系数据库,每一关系表描述一组彼此相关的数据,而每一关系表又是相对独立的。数据库提供多级索引机制以及树型查找算法为其它应用任务提供快捷服务。

8.1.6 维护类任务

维护类任务支持维护人员对交换设备的运行情况进行监视和管理,它包括:

z z z z z z z z

设备管理 告警管理 计费及话单管理 话务统计 信令监视 呼叫接续过程跟踪 用户/中继测试 通用消息跟踪

8.2 操作系统

8.2.1 任务管理

1. 任务状态

任务具有动态的状态,包括执行态(Executing )、就绪态(Ready )、挂起态(Suspended )、休眠态(Dormant )。

执行态任务指当前正占用处理机(CPU )资源,其程序逻辑正在被执行的任务。在任一瞬间,处理机只能执行一个任务,即只有一个任务处在执行态。

被执行的任务准备好后,处于就绪态。如当模拟用户任务在摘机事件发生后,即处于就绪态。系统中,依据就绪态任务的优先级,依次加以执行。

正在等待事件发生的任务,处于挂起态。如模拟用户任务在用户未摘机前,处于等待摘机事件发生的挂起状态。

休眠态任务指未初始化,或被系统删除的任务。 操作系统中,任务状态迁移原理如图8-2所示:

图8-2 操作系统中任务状态迁移

2. 任务调度

操作系统的任务调度策略是基于任务优先级和事件优先级的抢占式调度,高优先级就绪任务优先占用处理机资源执行,同一优先级的任务按其就绪先后次序调度执行。每一任务创建时,赋予一个优先数(0~255),优先数越小,优先级越高,0代表系统的最高优先级。

通常,当某一高优先级任务T1因等待某一资源而被挂起,而恰好此资源被另一低优先级任务T2占用而未被释放,会发生高优先级任务被低优先级任务阻塞,称之为优先级倒置(priority inversion)。C&C08数字程控交换系统的操作系统提供优先级继承(priority inheritance)技术来解决此问题,一旦高优先级任务被低优先级任务阻塞,可临时提高低优先级任务的优先级到适当级别,以便让低优先级任务尽可能快地执行以释放高优先级任务所急需的公共资源。

当低优先任务正在执行时,若有事件发生让高优先级任务处于就绪态,此时,高优先级就绪任务可打断正在执行的低优先级任务,将其挂起进而抢占CPU 的控制权,以满足系统实时性要求。 3. 任务结构及执行流程

在C&C08数字程控交换系统中,每一任务创建后,都会被赋予唯一标识(ID ),称之为任务号。每一任务大致包括两部分内容,一为初始化部分(Initialization ),二为事件处理部分。

一个任务创建后,它先完成自身内部初始化工作,然后挂起等待事件(如摘机、拨号等)发生;一旦事件发生后,操作系统将任务置为就绪态,经任务调度,进入执行态,处理相应事件,事件处理完毕后挂起,再等待下一轮事件的发生,如此反复循环。

4. 任务互斥与同步

系统中,任务间的关系可分为资源互斥与逻辑同步两类。资源互斥是指任务之间共享某种资源,而这些资源在某一时刻只能为一个任务占用;逻辑同步是指任务之间有一种确定的先后次序关系,仅当某一任务执行到某一点后,其它任务才能继续运行。系统通过信号灯(Semaphore )或开/关中断方式协调任务间的互斥,通过事件驱动方法来保证任务间的同步,当某一任务执行到某一点后,发送消息包去激活其它任务执行。

8.2.2 消息管理

除定时事件以及中断事件外,系统中任务间的通信主要由消息事件来驱动和完成。一个消息有以下两个方面的功能:

z z

激活其它任务就绪、执行 任务间传递数据

1. 消息描述

消息块可以用C 语言中的结构来描述,它既可以表示两个模块两个任务之间的消息,也可以表示同一个模块两个任务间的消息,甚至是同一任务内部的消息。 一旦某一任务T1申请消息块M ,并填充内容完毕,发送给任务T2后,则预示消息包事件M 将发生,即T2任务将由挂起态进入就绪态准备执行,另一方面,也表示T1将数据(包含在M 的data 域中即M.data )传递给了T2。 2. 消息队列管理

消息块通过队列方式管理,包括空闲队列、申请队列、就绪队列3类,每类队列由链表方式实现,如图8-3所示:

图8-3 消息队列

在整个系统中空闲队列、申请队列各一个,但就绪队列是每一个任务对应一个,同一任务所对应的就绪队列按消息事件的优先级和 发送消息 的先后次序组织。对于同一优先级的消息,以消息发出的时间先后顺序处理。为了节省空间和提高效率,系统为所有消息开辟一段公共缓冲区,队列操作仅仅是队列指针的变化,而消息块的内容无需拷贝搬动,其变化进程可用图8-4表示:

按按按按按相相按按按按)

释释按按按

图8-4 消息队列管理

8.2.3 内存管理

内存管理包括如下功能:内存分配与回收;内存检测与内存保护等。 1. 内存分配与回收

C&C08数字程控交换系统用链表方式来组织内存块,用最佳适应算法(Best_Fit)来分配内存。所谓最佳适应算法是在内存空闲链上寻找一个同当前申请大小最接近的空闲块,而尽量地减少内存碎片所占用空间,提高内存利用率。

2. 内存检测与内存保护

内存保护主要是防止内存越界。在内存控制块中有一个内存块标记域flag ,共2个字节,它存放2个特殊字符,如 M 和 Z ,用来表示此内存块正常(未被破坏)。若一旦内存控制块中flag 内容不为“M ”和“Z ”,则表示相应内存内容被破坏。 操作系统定时检测内存链上的每一内存控制块的合法性,如flag 的内容,是否为“M ”、“Z ”,其它域内容是否也在有效的范围内等,一旦发现问题,则要进行容错处理,可能要中止被破坏内存所属的任务,然后重新创建。

8.2.4 时限管理

时限管理是指根据实时处理要求进行各项任务,对无法按时的任务进行相应的处理,它包括如下内容:

z

周期性调度:即完成周期性任务。在C&C08操作系统中的周期性任务包括端口状态上报、数据校验等,其周期从10ms 到1天不等。

z

超时调度:指在指定的时间或时限,任务没有完成,系统发送超时消息,同时激活相应的超时处理程序。

8.2.5 系统初始引导和系统恢复

C&C08数字程控交换系统为了提高整机的可靠性和自愈能力,提供了两种重要的系统恢复级别:再启动和引导加载。再启动主要是执行初始化操作,根据再启动的级别决定是否重新进行引导加载,从而使系统控制变量及状态变量恢复到初始状态继续运行。引导加载是更高一级的恢复,要通过后台将程序和数据重新装入到内存,重新进行初始化并运行。 1. 再启动

系统提供了4级再启动,以适应不同的运行环境,方便终端维护,具体功能及影响简述如下:

(1) 一级再启动: 对部分功能块的控制及状态变量进行初始化。 a) 保持话单。

b) 保持已通话的用户,但影响正在接续的用户。 c) 不加载数据和程序。

(2) 二级再启动:对所有功能块的控制及状态变量进行初始化。 a) 保持话单。

b) 保持已通话的用户,但影响正在接续的用户。

c) 进行状态检查,不加载数据和程序。

(3) 三级再启动:整机系统重构。

a) 保持话单。

b) 影响已通话和正在接续的用户。

c) 加载数据,不加载程序。

(4) 四级再启动:整机系统重构。

a) 保持话单。

b) 影响已通话和正在接续的用户。

c) 既加载数据,也加载程序。

2. 引导与加载

整机引导与加载引导程序合在一起,固化在ROM 中。引导和加载的步骤如下:

(1) ROM BIOS 引导

系统加电后,首先跳入ROM BIOS中,完成主机板硬件包括内存、时钟、中断等的初始化,并将其自身及加载程序搬到内存低端,继续执行软件初始化,最后跳入加载程序。

(2) 加载

为方便加载程序对高端内存的访问,加载程序设计成保护模式,其执行流程依次是: a) 初始化全局描述符表、中断描述符表、局部描述符表、进入保护模式。 b) 初始化定时器中断。

c) 读硬件开关集(或软开关,在远程控制方式下),以决定是从后台还是从Flash 存储器中重新加载。程序和数据通过后台加载时可以只加载数据,也可以只加载程序,或者同时加载,对于不通过后台加载的部分则从Flash 存储器中加载。当从Flash 存储器中加载时,加载程序检查Flash 存储器中程序或数据是否真正可用,若检查结果不正确则自动要求通过后台加载。

d) 选择加载通路,不同的模块需使用不同的加载通路。

e) 与后台建立联系。

f) 加载,按照加载协议,将主机程序或数据加载到指定位置。

g) 校验,校验不正确则重新加载。

h) 经校验正确,如果加载程序的话,则根据加载开关决定是否将程序写入Flash 存储器。

i) 跳入主机程序执行,主机数据向数据Flash 存储器中的备份工作由主机完成,加载程序只负责校验工作。

8.3 数据结构与数据库

8.3.1 数据结构

C&C08数字程控交换系统的各项交换功能由程序控制完成,这些功能的引入和删除是由存贮在交换机系统数据库中的数据实现的,而数据库的管理由数据库管理系统(DBMS )来实现。在C&C08数字程控交换系统的数据库中,数据由二维表格组成,形成一些相关性的数据集合,称之为关系表(Relation )。

1. 数据字典

DBMS 中的数据定义由数据字典来描述,分为关系描述表和域描述表。

其中关系描述表描述关系表的结构,主要包括表类型、元组长度、表的最大元组数、缺省元组数、工作区表的校验和、表修改方式等。

域描述表对关系表中的每一个域进行定义,内容包括数据类型、域长度、排序方式、排序序号、通配符等。

2. 表类型和检索方法

数据库使用3种类型的关系表,分别是:

z 直接索引表:表的访问通过元组号直接访问,但元组号并不是关系表的一部

分,元组的插入和删除不影响表的排序。

z 顺序查找表:表中所有元组按顺序存放,检索从第一个元组开始,按顺序进

行,新加元组放在表的最后面。

z 排序表:关系表中的元组按关键字的值进行排序,表中不能存在两个排序字

段(关键域)的值完全相同的元组。在有多关键域的情况下,可对每个关键域分别指定其排序方式(升序或降序)和排序序号,排序序号小的优先排序。排序表的检索使用二分法,元组的插入和删除将引起后面元组的移动。

8.3.2 数据库结构

系统的数据库采用分布式的关系型数据库。每个交换模块/业务处理模块都存储有一部分数据,即拥有一个子数据库。从物理上看,这些子数据库之间是彼此分离的,但从逻辑上看,这些子数据库又构成一个有机的整体,通过相互协作共同完成全局数据库的功能。C&C08数字程控交换的数据库结构如图8-5所示:

图8-5 模块数据库结构

1. 数据库

数据库由多个关系表构成,由BAM 加载至主机内存中,并在FLASH 存贮器作备份,DBMS 对数据库的访问在RAM 中进行,无需磁盘操作,检查速度极快。数据的修改随时备份到FLASH MEMORY中,掉电不丢失。数据库在内存中占据一段连续的地址空间。

2. 数据库管理系统(DBMS )

(1) DBMS的功能主要包括以下几个方面:

a) 数据定义(定义关系表的结构、字段的类型、数据的分布地点、存取方式等)。 b) 为应用程序提供数据检索、存取、修改的接口。

c) 保证数据的一致性和安全性。

d) 数据备份。

(2) DBMS支持3种检索方法,通过数据字典可以查到该关系表的检索方法及相

关信息。

3. 应用程序接口(API )

数据库的应用程序接口是数据库功能块与其它功能块间的接口,它利用DBMS 提供的功能为呼叫处理、维护等功能块提供数据库访问接口。API 按照其功能可分为:

(1) 用户数据管理

用户数据的内容主要包括:号段数据、普通用户数据、小交用户群数据、 Centrex用户群数据、ISDN 用户数据、 V5用户数据、PRA 用户数据、AVM 用户数据、新业务数据等。

(2) 设备数据管理

设备管理即是对模块、机框、单板和其他特殊资源进行管理。设备数据一经设定,除非进行系统扩容,一般无需再做修改。

(3) ISDN数据管理

系统的ISDN 功能支持语音、数字、3.1kHz 音频和视频等多项传输业务,其传输方式有分组方式、多速率方式和从64kbit/s到1920kbit/s 的5种单一速率方式,ISDN 数据包括ISDN 用户参数和传输能力、传输速率、接入方式和通道个数等参数。

(4) 中继数据管理

中继数据包括局向数据、路由数据、子路由数据、中继群数据、中继电路数据等。

(5) No.7信令数据

C&C08数字程控交换系统可以提供中国一号、No.7信令方式,No.7信令为14/24位兼容。No.7信令数据管理主要包括对本局信息、MTP 信令链路集、MTP 信令路由、MTP 信令链路等的管理。

(6) V5接口数据

V5接口管理包括对V5接口的所有资源(主、备链路,所有物理C 通道、逻辑C 通道,2M 链路,承载通道,AN 用户端口)的管理。

(7) 计费数据

C&C08数字程控交换系统可以实现如下计费功能:对通话的主、被叫用户计费;中继的双向计费; 长途局对下级局的集中计费;对ISDN 呼叫承载能力、占用B 信道数、信息量计费;对Centrex 群的计费;具有详细话单、计次表两种计费方式;有立即计费功能;可以按日期类别、时区灵活设置通话费用。对于立即计费、还可以按日期类别、时区灵活设置附加费用。

(8) 号码分析数据管理

号码分析数据管理包括对呼叫源和主、被叫号码的相关数据进行管理。这部分数据包括呼叫源、呼叫字冠、限呼数据、号码变换、长途区号及国家代码。

(9) 网管数据管理

(10) 其它

除以上描述的数据外,还有许多系统参数数据,如定时器、命令组、操作员权限、工作站权限、系统时间等内容,由于涉及的面较广,需要超级管理人员才能修改,在此不再赘述。


相关内容

  • 园林绿化考试提纲
  • 园林绿化考试提纲 本考试大纲涵盖园林绿化植物.园林规划设计.园林工程施工技术等方面的专业知识. 一.园林植物 1.园林树木的分类 (1)园林树木的人为分类 按园林绿化用途分类:按观赏价值分类:其他分类方法: (2)园林树木的自然分类 自然分类系统:植物的分类单位和名称:植物检索表 2.园林树木的特性 ...

  • 高低压电气安全操作规程
  • 高低压电气安全操作规程 高低压开关的操作必须按程序操作,否则将会对人身设备造成损伤和损坏,直至生命安全.故根据我公司高低压系统的具体结构,特制定如下安全操作规程: 一.概述 我公司高低压配电室计有:1.原料磨电气室高压#1进线柜系统,#1进线柜(园泥#1线路)编号:41EAH01(3-2010-Q- ...

  • 行业研究报告(Group 4)
  • 内地投资银行业研究及其与香港的对比分析 概要 投资银行基础概述 投资银行介绍投资银行的业务分类组织结构及经营模式 中国投资银行环境PEST 分析 政治法律环境经济发展环境社会文化环境技术环境 中国投资银行业发展情况 整体运行情况综述投资银行业SWOT分析规模集中度分析 与香港的对比 外部环境内部环境 ...

  • 汽车基础知识(销售顾问汽车入门培训)
  • 保定长城汽车销售有限公司Pay Attention Please培训目标 认识汽车,了解汽车 为产品知识的学习打下理论基础 了解有关专业术语.名词,培养自身兴趣,树立专业形象 在销售实践过程中运用希望您能做到:用开放的空杯心态去学习.探询新观点.新技巧和新概念 愿意去倾听,积极参与互动讨论,并注意其 ...

  • 3D硬千足金的概述
  • 文档作者:文档编号产品版本密级FCR-DS-2015-08-28V1.053D硬千足金的概论共6 页3D硬金首饰的概论(仅供内部使用)____陈钜海_____日期:2015/08/28 版权所有不得复制 文件记录 目录 文件记录.................................... ...

  • 船舶电力推进技术发展概述
  • 第08卷 第8期 中 国 水 运 Vol.8 No.8 2008年 8月 China Water Transport August 2008 船舶电力推进技术发展概述 陈新毅,杨 烨 (广州金桥管理干部学院,广东 广州 510260) 摘 要:本文简要介绍了船舶电力推进技术的基本组成,发展历史,吊舱 ...

  • HUAWEI智能酒店解决方案
  • HUAWEI 概述 操作指引 附录 华为智能酒店解决方案(别墅度假型酒店) 验收测试指南 华为技术有限公司 技术支援网址: 客户服务邮箱:[email protected] http://enterprise.huawei.com 客户服务电话:400-822-9999 邮编:518129 版 ...

  • 景点大全---吉林
  • 新浪旅游 > 景点大全 > 吉林旅游 找你想要的景点: 吉林 概述 城市 景点 攻略 资讯 口碑 图片 线路 机票 酒店 1 2 3 4 关东神韵 长白山天池 夕阳下的景区 松原美景 自驾长白山 感受冬日壮美和魔界梦幻 自驾吉林雾凇岛 探访冬日"梨花"胜境 沉睡的遗迹 ...

  • 电信08-3班课程设计题目
  • 宽带网基础课程设计 指导教师:张沛泓 电信08-3班 一.报告要求: 1.按照要求完成设计,禁止抄袭,不能雷同,如果雷同,将都按照不及格处理. 2.报告要问题明确,思路清晰,设计合理.禁止通篇的综述,要能够提出问题,解决问题. 3.报告要按照格式要求,要文字清晰,图表规整.要求5-6页. 4.学号1 ...